Почему LED моргает?
- Войдите на сайт для отправки комментариев
Пнд, 01/07/2019 - 21:42
Добрый день.
Когда подаваемое на вход напряжение растет LED включается, когда уменьшается выключается, но когда напряжение не меняется LED должен быть выключен но он моргает из за помех микроконтроллера stm32 строка #36, добавил строчку #38 , но ЛЕД дальше моргает
Как исправить ?
int currentValue; int previousValue; int analogPin = PB0; int volt; int LED = PB14; #include <LiquidCrystal.h> LiquidCrystal lcd(PA0, PA1, PA2, PA3, PA4, PA5); void setup() { pinMode(PB0, INPUT); pinMode(PB14, OUTPUT); lcd.begin(16, 2); } void loop() { float volt = analogRead(PB0); volt = (volt * 3.3) / 4095.0; //volt = (volt * 3.3); lcd.setCursor(0, 0); lcd.print(volt); delay(200); previousValue = currentValue; // store what was read last time currentValue = analogRead(analogPin); // get a new reading // if ( currentValue > previousValue ) // LED ON if voltage increasing if( (currentValue - previousValue) > 0.2)//0.2В , На ЛСД помехи меньше 0.1 // if( (currentValue - previousValue) > 0.8) { digitalWrite(PB14, 1); } else { digitalWrite(PB14, 0); } }
Какой тип переменной будет у результата в выражении (currentValue - previousValue) ?
Какой тип переменной будет у результата в выражении (currentValue - previousValue) ?
Гена, попытайтесь все-таки ответить на заданный в №1 вопрос.
you must declare variables as float
I disabled line #1 and # 2 and put
in beginning of the loop, lines 22 and 23, the LED is all the time on.
Гена, и currentValue, и previousValue у Вас совсем не в вольтах.
Гена, вы даже этот крохотный скетч где-то скачали и не понимаете в нем ни строчки? Начинайте уже писать СВОИ программы - будет хотя бы проще разбираться.
Гена, и currentValue, и previousValue у Вас совсем не в вольтах.
это я пропустил , Спасибо работает