Ligne 88 : |
Ligne 88 : |
| [[Fichier:SENSEUR-PARTICULE-GP2Y1010AU0F-Code-Pulse.jpg]] | | [[Fichier:SENSEUR-PARTICULE-GP2Y1010AU0F-Code-Pulse.jpg]] |
| | | |
− | <nowiki>int dustPin=A0; # Lecture analogique du senseur (A0) | + | <nowiki>#define dustPin A0 // Lecture analogique du senseur (A0) |
− | float dustVal=0; # Valeur retournée par le senseur
| + | #define ledPower 2 // Commande de la LED IR du senseur (digital 2) |
− | int ledPower=2; # Commande de la LED IR du senseur (digital 2)
| |
| | | |
− | # Delai avant la mesure analogique (0.28 ms, soit 280 microsecondes)
| + | // Delai avant la mesure analogique (0.28 ms, soit 280 microsecondes) |
− | int delayTime=280;
| |
| | | |
− | # Délai d'impulsion IR sur le senseur. | + | #define delayTime 280 |
− | # 0.32ms actif sur 10ms au total.
| + | |
− | # Dans ce cas, nous
| + | // Délai d'impulsion IR sur le senseur. |
− | #
| + | // 0.32ms actif sur 10ms au total. |
− | # Note: 280 + 40 + 9680 = 10000 micro-secondes, soit 10ms
| + | // |
− | int delayTime2=40;
| + | // Note: 280 + 40 + 9680 = 10000 micro-secondes, soit 10ms |
− | float offTime=9680;
| + | |
| + | #define delayTime2 40 |
| + | #define offTime 9680 |
| | | |
| void setup(){ | | void setup(){ |
Ligne 110 : |
Ligne 110 : |
| | | |
| void loop(){ | | void loop(){ |
| + | float dustVal=0; // Valeur retournée par le senseur |
| + | |
| // Activation de la LED IR (en passant au niveau bas) | | // Activation de la LED IR (en passant au niveau bas) |
| digitalWrite(ledPower,LOW); | | digitalWrite(ledPower,LOW); |
− | // Attendre 0.28ms (280 micro secondes) avant lecture analogique | + | // Attendre 0.28ms (280 micro secondes) avant lecture analogique |
| delayMicroseconds(delayTime); | | delayMicroseconds(delayTime); |
− | dustVal=analogRead(dustPin); | + | dustVal=analogRead(dustPin); |
| | | |
| // Attendre encore 40 microseconde pour atteindre | | // Attendre encore 40 microseconde pour atteindre |
Ligne 123 : |
Ligne 125 : |
| | | |
| // Attendre la fin du cycle de 10ms | | // Attendre la fin du cycle de 10ms |
− | // (soit 10000 microsecondes au total) | + | // (soit 10000 microsecondes au total) |
| delayMicroseconds(offTime); | | delayMicroseconds(offTime); |
| | | |
Ligne 133 : |
Ligne 135 : |
| if (dustVal>36.455) | | if (dustVal>36.455) |
| Serial.println((float(dustVal/1024)-0.0356)*120000*0.035); | | Serial.println((float(dustVal/1024)-0.0356)*120000*0.035); |
− | }</nowiki>
| + | }</nowiki> |
| | | |
| == Où acheter == | | == Où acheter == |