Вопросы по тахометру на дисплее 128х64
- Войдите на сайт для отправки комментариев
Вс, 17/01/2016 - 18:24
Нужно мерять обороты редуктора двигателя, до 500 об/мин. Желательно точно, с шагом 1-2 оборота. Данный скетч в принципе работает, но выводит через 60 оборотов. Убавляю от 60000 один ноль, растет число импульсов на оборот. Подскажите, что можно сделать чтоб мерял нормально
#include "U8glib.h" U8GLIB_ST7920_128X64_4X u8g(10,11,12, U8G_PIN_NONE); #define RPMpin 2 float value=0; float rev=0; int rpm; int oldtime=0; int time; void isr() { rev++; } void setup() { attachInterrupt(0, isr, FALLING); } void loop(){ u8g.firstPage(); { delay(1000); detachInterrupt(0); time=millis()-oldtime; rpm=(rev/time)*60000; oldtime=millis(); rev=0; u8g.setFont(u8g_font_fub14n); u8g.setPrintPos(2, 22); u8g.print(rpm); u8g.setFont(u8g_font_7x13); u8g.setPrintPos(50, 22); u8g.print("RPM"); attachInterrupt(0,isr,RISING); } while(u8g.nextPage()); }
?