Étape 4: Commencer à coder !
Commencer à coder !
Ouvrez votre logiciel Arduino et lancez une nouvelle esquisse. La première chose que nous devons inclure est la bibliothèque CapSense. Allez dans Sketch > Bibliothèque d’importation > CapacitiveSensor, cela devrait ajouter une ligne vers le haut de votre croquis indiquant #include < CapacitiveSensor.h >
Copiez le code suivant dans le sketch :
#include < Capacitive.Sensor.h >
#define CAP_THRESHOLD 20
#define NUM_OF_SAMPLES 1
const int MAX_LEVEL = 100 ;
séquence int [MAX_LEVEL] ;
int your_sequence [MAX_LEVEL] ;
int niveau = 1 ;
int vitesse = 1000 ;
CapacitiveSensor cs_2_4 = CapacitiveSensor(2,4) ;
CapacitiveSensor cs_2_5 = CapacitiveSensor(2,5) ;
CapacitiveSensor cs_2_6 = CapacitiveSensor(2,6) ;
CapacitiveSensor cs_2_7 = CapacitiveSensor(2,7) ;
void setup()
{
cs_2_4.set_CS_AutocaL_Millis(0xFFFFFFFF) ; désactiver autocalibrate sur le canal 1 - à titre d’exemple
pinMode (sortie 9) ;
pinMode (sortie 10,) ;
pinMode (sortie 11) ;
pinMode (sortie 12,) ; Avertisseur sonore
digitalWrite (9, faible) ;
digitalWrite (10, faible) ;
digitalWrite (11, faible) ;
digitalWrite (12, faible) ;
}
void loop()
{
Si (niveau == 1)
generate_sequence() ;
Si (cs_2_7.capacitiveSensor(NUM_OF_SAMPLES) > CAP_THRESHOLD || niveau! = 1)
{
show_sequence() ;
get_sequence() ;
}
}
Sub show_sequence()
{
digitalWrite (9, faible) ;
digitalWrite (10, faible) ;
digitalWrite (11, faible) ;
pour (int i = 0; i < niveau; i ++)
{
digitalWrite (séquence [i], HIGH) ;
Delay(Velocity) ;
digitalWrite (séquence [i], faible) ;
Delay(200) ;
}
}
Sub get_sequence()
{
drapeau de l’int = 0 ;
pour (int i = 0; i < niveau; i ++)
{
drapeau = 0 ;
while(flag == 0)
{
Si (cs_2_4.capacitiveSensor(NUM_OF_SAMPLES) > CAP_THRESHOLD)
{
digitalWrite (9, HIGH) ;
your_sequence [i] = 9 ;
drapeau = 1 ;
Delay(200) ;
Si (your_sequence [i]! = sequence[i])
{
wrong_sequence() ;
retour ;
}
digitalWrite (9, faible) ;
}
Si (cs_2_5.capacitiveSensor(NUM_OF_SAMPLES) > CAP_THRESHOLD)
{
digitalWrite (10, haute) ;
your_sequence [i] = 10 ;
drapeau = 1 ;
Delay(200) ;
Si (your_sequence [i]! = sequence[i])
{
wrong_sequence() ;
retour ;
}
digitalWrite (10, faible) ;
}
Si (cs_2_6.capacitiveSensor(NUM_OF_SAMPLES) > CAP_THRESHOLD)
{
digitalWrite (11, haute) ;
your_sequence [i] = 11 ;
drapeau = 1 ;
Delay(200) ;
Si (your_sequence [i]! = sequence[i])
{
wrong_sequence() ;
retour ;
}
digitalWrite (11, faible) ;
}
}
}
right_sequence() ;
}
Sub generate_sequence()
{
randomSeed(millis()) ;
pour (int i = 0; i < MAX_LEVEL; i ++)
{
séquence [i] = random(9,12) ;
}
}
Sub wrong_sequence() //Beep trois fois
{
pour (int i = 0; i < 3; i ++)
{
digitalWrite (12, HIGH) ;
Delay(250) ;
digitalWrite (12, faible) ;
Delay(250) ;
digitalWrite (12, HIGH) ;
Delay(250) ;
digitalWrite (12, faible) ;
Delay(250) ;
digitalWrite (12, HIGH) ;
Delay(250) ;
digitalWrite (12, faible) ;
Delay(250) ;
}
Level = 1 ;
Vitesse = 1000 ;
}
right_sequence() Sub //One bip court
{
digitalWrite (12, faible) ;
Delay(250) ;
digitalWrite (12, HIGH) ;
Delay(250) ;
digitalWrite (12, faible) ;
Delay(500) ;
Si (niveau < MAX_LEVEL) ;
niveau ++ ;
Vitesse-= 50 ;
}
Télécharger votre croquis et obtenez jouant ! Pour commencer Appuyez sur votre bouton de démarrage. Vos lumières commencera alors à flash, copiez-les et chaque fois que vous obtenez un droit une autre lumière sera ajouté à la séquence.
Une fois que vous avez été un expert Simon Says essayez d’ajouter plus de boutons à votre jeu ou peut-être un peu de son pour accompagner chaque LED, puis commencer à penser à vos propres jeux avec boutons tactile capacitif !