Добрый день! Месяца два назад делал проект - цифровой вольтметр с отправкой данных в SQL базу..
Но случайно спалил ардуинку...
Сейчас пришли новые платы..
UNO и NANO...
Но почему-то на analogread у них постоянно какое-то значение (~200)
Написал элементарный скетч
int u = 0; // переменная для числа пребразования 0-1023
float u_in = 0.0; // переменная для напряжения 0.0-5.0
void setup() {
Serial.begin(9600);
pinMode(A0,INPUT);// A0 - аналоговый вход
}
void loop() {
u = analogRead(A0); // измерение
u_in = map(u ,0 ,1023 ,0 ,5); // пересчет измерения в вольты
Serial.print("U = ");
Serial.print(u_in); // вывод измерения на экран
Serial.println(" V");
delay(500);
}
Но при его запуске, при пустых пинах, показывает значение 1V...
Подскажите, пожалйста, что я делаю не так?
Но случайно спалил ардуинку...
Сейчас пришли новые платы..
UNO и NANO...
Но почему-то на analogread у них постоянно какое-то значение (~200)
Написал элементарный скетч
int u = 0; // переменная для числа пребразования 0-1023
float u_in = 0.0; // переменная для напряжения 0.0-5.0
void setup() {
Serial.begin(9600);
pinMode(A0,INPUT);// A0 - аналоговый вход
}
void loop() {
u = analogRead(A0); // измерение
u_in = map(u ,0 ,1023 ,0 ,5); // пересчет измерения в вольты
Serial.print("U = ");
Serial.print(u_in); // вывод измерения на экран
Serial.println(" V");
delay(500);
}
Но при его запуске, при пустых пинах, показывает значение 1V...
Подскажите, пожалйста, что я делаю не так?
Вложения
-
172.4 KB Просмотры: 4
-
72 KB Просмотры: 4