Stránka 1 z 1

Rozsah analogread

Napsal: 13 srp 2017, 11:53
od salab
Dobrý den, mám klon UNO, příjde mi divný že funkce analogread mi nevyhazuje rozsah 0 až 1023 ale začíná někdo od 250.

Netušíte kde může být problém?

troubleshooting je, že prostě na A0 není nic připojeno, tedy napětí je 0V a výsledek v serial screenu je 250 nikoli 0

Kód: Vybrat vše

int analogPin = 0;     // potentiometer wiper (middle terminal) connected to analog pin 3
                       // outside leads to ground and +5V
int val = 0;           // variable to store the value read
void setup()
{
  Serial.begin(9600);          //  setup serial
}
void loop()
{
  val = analogRead(analogPin);    // read the input pin
  Serial.println(val);             // debug value
}

Re: Rozsah analogread

Napsal: 13 srp 2017, 12:00
od zbysek
Pokud na analogovém pinu není nic připojené, tak tento pin "plave". Potom jsou měřené hodnoty celkem náhodné, záleží na elektromagnetickém poli v okolí a podobně. Často se pak pohybují třeba kolem 400, ale záleží na podmínkách.

Zkuste pin otestovat třeba připojením potenciometru - https://arduino.cz/arduino-zaklady-3-an ... ad-serial/

Re: Rozsah analogread

Napsal: 13 srp 2017, 16:01
od salab
Žádná volná energie se neděje, prostě to od nuly do 1023 není. To odpojení úplně byla poslední možnost která mne napadá, abych konstatoval jestli není jednotka vadná.

Re: Rozsah analogread

Napsal: 13 srp 2017, 16:12
od salab
0 se zobrazí když tedy přivedu na A0 GND, takže by to asi mohlo fungovat

Re: Rozsah analogread

Napsal: 13 srp 2017, 21:31
od zbysek
Tak teď nevím, jestli už vám to běží, nebo ne.
Když připojíte pin na GND, měříte hodnotu 0.
Co když ho přípojíte na 5V?

Nejlépe by se to otestovalo pomocí potenciometru. Pak by se jeho otáčením měly hodnoty měnit plynule mezi 0 a 1023.

Re: Rozsah analogread

Napsal: 17 srp 2017, 07:59
od Wojta
Také by mohlo být něco divně s referenčním napětím, nevím jak vám fungují ostatní ADC ale mohl byste zkusit externí napěťovou referenci.