LCD дисплей
- Войдите на сайт для отправки комментариев
Пнд, 01/06/2020 - 14:32
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,20,4);
#include <PinChangeInt.h>
int Pin1=7;
volatile int rc = 0;
int rpm = 0; //обороты
unsigned long ls = 0;
int R=0;
void setup()
{
lcd.init();
lcd.backlight();
pinMode(Pin1,INPUT);
digitalWrite(Pin1,HIGH);
PCintPort:: attachInterrupt(Pin1,rpm1,FALLING);
}
void loop()
{
if (millis() - ls == 1000)
{
detachInterrupt(7);
rpm = rc * 60;
R=rpm;
rc = 0;
ls = millis();
PCintPort:: attachInterrupt(Pin1, rpm1, FALLING);
}
lcd.setCursor(0, 0);
lcd.print("RPM: ");
lcd.print(R);
}
void rpm1()
{
rc++;
}
Подскажите, почему R не принимает значение переменной rpm при выведении на дисплей, но при выведении R в монитор порта все работает как положено?
Подскажите, почему R не принимает значение переменной rpm при выведении на дисплей, но при выведении R в монитор порта все работает как положено?
аптамуш, код вставлен неправильно.
Если lcd.print вставить внутри таймера то R все равно будет равна нулю
На форум код вставлен неправильно, в таком виде его никто обсуждать не будет. Вставьте код через кнопку code в новом сообщении.
В какой строке? Это в тему правильности вставки кода...