Arduino analogRead () renvoie du courrier indésirable lorsque j'imprime en série

StackOverflow https://stackoverflow.com/questions/1013936

  •  06-07-2019
  •  | 
  •  

Question

Je fabrique une horloge avec l’Arduino et je veux créer un bouton pour régler l’heure. Donc, juste pour tester, j’ai branché un fil sur la broche 0 de l’entrée analogique et écrit deux lignes de code pour lire la broche et l’imprimer via Serial, mais tout ce que j’obtiens, c’est du courrier indésirable.

  valm = analogRead(0);
  Serial.println(valm);

Et ce que je reçois du moniteur série est le suivant:     ? j? d? & # 177; & # 181;? # 202; ?? jDd? & # 177; ??? & # 186; jRd? & 177; & # 181; ??? "# 186; j? D? & # 177; & # 181;" & # 202; ?? j? D? 177 "& # 181;? & # 201;? # 170; jRd? & 177 ; & # 181; ??? & # 202; jRd? & # 177; & # 181; ??? & # 194; j? D? & # 177; & # 181; ??????? # 177; & # 181;? & # 201; ?? j     Rd? & # 177; & 181; ???????????????????????????????????? «jRd? & # 177; & # 181; ???? j? d? & # 177; & # 181;? & # 202;? # 202; jDd? & # 177; & # 181; ?? ? & # 194; j? D? & # 177; & # 181; ???? j? D? '# 177; & # 181;? # 201; ?? jRd? & # 177; & # 181; ???? j? d     ? & # 177; & # 181; & # 201;? & # 194; jRd? & # 177; ??? & # 202; j? D? D? 177? & # 181; ?? JRd? & # 170; j? D? & # 177; & # 181;? & # 202;? # 202; j $ d? & # 177; ???, & # 181; ??? & # 194; jRd? & ### 177; & # 181; ???? j? D? & # 177; & # 181; ???? jdd? & # 177; & # 181; ???? jRd? & # 177; & # 181; ??? & # 194; j? D? & # 177;     & # 181;? & # 201;? & 202; jRd? & # 177; & # 181; ????????? # #;; # 181;? # 210;? # 202;? & 202; # 202; j? d? & # 177; & # 181;? # 201;? & # 194; jRd? & # 177; ????? ???????????? ?? j? d? & # 177; & # 181;? # 201; ?? jRd? & # 177; & # 181; ??? & # 194; j? d? 177? & # 181; ??? & # 202; j? D? & # 177; & # 181 ;?     ?? & # 170; j? D? & # 177; & 181; ??? & # 202; j? D? 177? & # 181; ??? & # 194; jRd? & 177; jRd? & 177; & # 181; ???? j? D? & # 177; & # 181; ???? j? D? & # 177; & # 181;? # 201; ?? jRd? & # 177; & # 181; ??? & # 194; j? D? & # 177; & # 181;? # 210;? # 202; j? D? & # 177; & # 181;? # 201 ;? & # 170; j? D? & # 177; & # 181;? & # 201 ;?     ? jTd? & # 177; & # 181; ??? & # 194; j? d? & # 177; & # 181; ???? j? d? & # 177; & # 181;? # 201; ; ?? jRd? & # 177; & # 181; ???? j? d? & # 177; & # 181;? & 201;? & # 194; jRd? & # 177; & # 181 ;? ? & # 202; j? D? & # 177; & # 181;? # 201;? # 170; jRd? & # 177; ????????? # 177; & # 181; ??? & # 186; j     ? d? & # 177; & # 181 ;? # 200; ?? jTd? & # 177; & # 181; ???? jRd? & # 177; ???, & # 181; ??? & # 170; j ? d? & # 177; & # 181;? # 200;? & # 194; jTd? & # 177; & # 181;? # 201;? & # 202; jRd? & # 177; & # 181 ; ??? & # 170; j? D? & # 177; & # 181; ??? & # 202; j? D? & # 177; & # 181; ??? & # 186; j? D? & # 177; & # 181;? & # 201; ?? jRd     ? & # 177; & # 181; ??? & # 202; j? D? & # 177; & # 181; ??? & # 170; j? D? & # 177; & # 181;? & # 181; 201; & # 194; jPd? & # 177; & # 181; ??? & # 202; j? D? & # 177; ??? & # 181; ??? & # 170; j? D? 177 ; & # 181;? & # 194;? & # 202; j? D? & # 177; & # 181;? # 201;? # 186; jRd? & # 177; & # 181; ??? ? j? d? & # 177; & # 181;? & # 201; ?? jRd? & # 177;     & # 181; ??? & # 170; j? D? & # 177; & # 181;? # 202;? # 194; j? D? 177? & # 181; ??? & # 181; ??? & # 181; 202; jRd? & # 181; ??? & # 170; j? D? & # 177; & # 181;? # 210;? & # 202; j? D? 177 et & 177; # 181; ??? & # 186; jRd? & # 177; & # 181; ????? S? D? 177? & # 181; ???? # 202; j? D? 177 ; & # 181;? & # 202;? & # 170; jdd? & # 177; & # 181 ;?     "JRd" & # 177; & # 181; ??? & # 194; j? D? 177; & # 181;? & # 201;? # 170; jPd? & # 177 ; & # 181; ??? & # 202; j? D? & # 177; & # 181; ???? j? D? 177? & # 181;? & # 201; ?? jRd? & # 177; & # 181; ??? & # 202; j? D? & # 177; & # 181;? & # 201;? # 170; jdd? & # 177; & # 181; ??? & # 194; jRd? & # 177; & # 181; ???     & # 194; j? D? & # 177; & # 181;? # 201;? # 170; jDd? & # 177; ??? #?;???????? ; & # 181;? & # 202; ?? j? D? & # 177; & # 181;? & # 201; ?? jRd? & # 177; & # 181; ??? & # 202; jRd? & # 177; & # 181; ??? & # 170; j? D? & # 177; & # 181;? & # 202;? # 194; jPd? & # 177; & # 181; ??? & # 194; j? D? & # 177; & # 181; ??? & # 170; j     ? d? & # 177; & # 181;? # 201;? & # 202; jdd? & # 177; & # 181;? # 201;? jRd? & # 177; & # 181; ?? ? j? d? & # 177; & # 181;? # 201;? # 202; j $ d? & # 181; ??? & # 170; jRd? & 177; & # 181; ??? & # 194; j? D? & # 177; & # 181;? # 194;? # 194; jTd? & # 177; ??? # 181; ??? ? d? & # 177; & 181; ??? & # 202; j? d     JRd? & # 177; & # 181; ???? j? D? 177? & # 181;? # 201;? # 201;? # 202;? # 202;? # 202;? ? & # 177; & # 181; ??? & # 170; jRd? & # 177; & # 181; ??? & # 194; j? D? 177? & # 181; ??? & # 181; ??? & # 181; 194; j? D? & # 177; & # 181;? # 201;? & 170; jRd? & # 177; ??? & ???; & # 202; jRd? & 177; & # 181; ;? & # 210; ?? jTd? & # 177;     & # 181; ???? j? D? & # 177; & # 181; ??? & # 202; j

Pourquoi?

Modifier:

J'avais paramétré la broche numérique 0 en sortie et je pensais que c'était peut-être le problème. Je suis donc allé sur le site Web Arduino et j'ai trouvé la page Broches d'entrée analogiques .

J'ai donc essayé de lire à partir de la broche 14 qu'ils disent être la broche 0 de l'entrée analogique, mais j'ai la même sortie.

Au fait, j'essaie de lire uniquement les broches analogiques, pas celles qui sont également numériques.

Était-ce utile?

La solution

Essayez d’exécuter cet exemple de code disponible sur le site Web Arduino. Vous ne devriez pas avoir besoin de convertir la variable valm ou quoi que ce soit.

/*
  Analog input

    Reads an analog input on analog in 0, and prints the value out.

    Created 24 March 2006
    by Tom Igoe
*/

int analogValue = 0;    // Variable to hold the analog value.

void setup() {
    // open the serial port at 9600 bit/s:
    Serial.begin(9600);
}

void loop() {
    // Read the analog input on pin 0:
    analogValue = analogRead(0);

    // Print it out in many formats:
    Serial.println(analogValue);       // print as an ASCII-encoded decimal
    Serial.println(analogValue, DEC);  // print as an ASCII-encoded decimal
    Serial.println(analogValue, HEX);  // print as an ASCII-encoded hexadecimal
    Serial.println(analogValue, OCT);  // print as an ASCII-encoded octal
    Serial.println(analogValue, BIN);  // print as an ASCII-encoded binary
    Serial.println(analogValue, BYTE); // print as a raw byte value

    // Delay 10 milliseconds before the next reading:
    delay(10);
}

Si votre sortie est toujours du charabia, il y a un problème avec votre terminal série.

Autres conseils

Le problème Voici les périphériques analogiques que vous pourriez connecter ne sont pas @ les mêmes potentiels de terre. Exemple: si votre alimentation sur la carte Arduino à l'aide d'un PC et d'un capteur est activée à l'aide d'une autre source, mais que vous essayez de lire une valeur depuis le port Arduino, pour l'instant, l'erreur ci-dessus est générée. Essayez cette puissance sur arduino et le capteur de Même source d’alimentation et essayez de lire les données à l’aide du port série via DOcklight pour résoudre le problème.

Vous devez définir le débit en bauds dans la fenêtre du moniteur série (coin inférieur droit) sur la même valeur que celle définie dans votre code (par exemple, Serial.begin (9600); ).

À quoi ressemble votre sortie, il semble que vous deviez convertir valm en chaîne pour pouvoir imprimer la valeur numériquement.

De plus, le fil que vous avez branché en analogique est-il flottant? Parce que si c'est le cas, il agira simplement comme une antenne et capturera le bruit aléatoire (cependant, il pourrait avoir une forte composante à 60Hz).

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top