Contrôler l'accepteur de pièces avec Arduino
Composants et fournitures
 | | × | 1 | |
| | × | 1 | |
| Affichage LED TM1637 à 4 chiffres | | × | 1 | |
Applications et services en ligne
À propos de ce projet
Le but de ce projet est d'écrire du code pour contrôler l'accepteur de pièces avec arduino afin qu'il puisse être utilisé dans un autre projet. Le projet que j'avais en tête était de créer une tirelire soucieuse de l'équilibre pour ma fille.
Code
- Contrôler l'accepteur de pièces avec Arduino
Contrôler l'accepteur de pièces avec ArduinoArduino
//Mario's Ideas//Contrôle de l'accepteur de pièces avec Arduino#include #include #include // Broches de connexion du module (Digital Pins)#define CLK 3#define DIO 4TM1637Affichage (CLK, DIO);// variable utilisée pour mesurer les intervalles entre les impulsionsint i=0;// Nombre d'impulsions détectéesint impulsCount=0;// Somme de toutes les pièces inséréesfloat total_amount=0;void setup() { // pinMode(2, INPUT_PULLUP); Serial.begin(9600); display.setBrightness(0x0f); // Interruption connectée au PIN D2 exécutant la fonction IncomingImpuls lorsque le signal passe de HAUT à BAS attachInterrupt(0,incomingImpuls, FALLING); EEPROM.get(0, montant_total); display.clear();}void entrantImpuls(){ impulsCount=impulsCount+1; i=0;}boucle vide() { i=i+1; Serial.print("i="); Serial.print(i); Serial.print(" Impulsions:"); Serial.print(impulsCount); Serial.print("Total :"); Serial.println(total_amount); if (i>=30 et impulsCount==1){ total_amount=total_amount+2 ; ImpulsCount=0 ; EEPROM.put(0, montant_total); } if (i>=30 et impulsCount==2){ total_amount=total_amount+1; ImpulsCount=0 ; EEPROM.put(0, montant_total); } if (i>=30 et impulsCount==3){ total_amount=total_amount+0,5 ; ImpulsCount=0 ; EEPROM.put(0, montant_total); } if (i>=30 et impulsCount==4){ total_amount=total_amount+0,2 ; ImpulsCount=0 ; EEPROM.put(0, montant_total); } if (i>=30 et impulsCount==5){ total_amount=total_amount+0.1 ; ImpulsCount=0 ; EEPROM.put(0, montant_total); } if(total_amount<10) display.showNumberDecEx(total_amount*10, 0b10000000, true, 2, 2); else display.showNumberDecEx(total_amount*10, 0b00100000, false, 4, 0);}
Schémas