Table des matières

Apparition de balles par boutons

État : en cours (problème avec l'apparition de trop de balles)


Intentions : explication du projet et objectifs

On apprend à compter à partir de 3 boutons poussoir qui vont faire apparaitre des balles sur l'écran. Le premier bouton fera apparaître 1 balle, le second 2 et le troisième 3. L'enfant aura alors une prémisse au calcule car il pourra compter le nombre total de balles visible sur l'écran. Ainsi si il appuie 2 fois sur le troisième bouton, il pourra compter 6 balles à l'écran.

Le matériel

3 boutons poussoir Carte seeeduino lotus

carte seeeduino lotus

La documentation sur cette carte est la suivante :

Boutons Poussoir

Plans et schémas de fonctionnement

Le câblage sur la carte Arduino est le suivant :

Câblage du circuit

Programmes

Arduino

Le code permettant de contrôler les boutons à partir d'une pression d'être détecté.

int inByte = 0; incoming serial byte byte bouton[] = {2, 3, 6}; int valBouton[] = {0, 0, 0}; byte Nbouton = 3; void setup() { start serial port at 9600 bps:

Serial.begin(9600);
while (!Serial) {
  ; // wait for serial port to connect. Needed for native USB port only
}
for (byte i = 0; i < Nbouton; i++) {
  pinMode(bouton[i], INPUT);   // digital sensor is on digital pin 2
}
establishContact();  // send a byte to establish contact until receiver responds

}

void loop() {

// if we get a valid byte, read analog ins:
if (Serial.available() > 0) {
  // get incoming byte:
  inByte = Serial.read();
  // read first analog input, divide by 4 to make the range 0-255:
  // lire la valeur de chaque bouton
  for (byte i = 0; i < Nbouton; i++) {
    valBouton[i] = map(digitalRead(bouton[i]), 0, 1, 0, 255);; // digital sensor is on digital pin 2
 }
  // send sensor values:
  for (byte i = 0; i < Nbouton; i++) {
    Serial.write(valBouton[i] );
  }
  
}

}

void establishContact() {

while (Serial.available() <= 0) {
  Serial.print('A');   // send a capital A
  delay(300);
}

}