Sparrow - my assistant (8 / 14 steg)
Steg 8: Icke blockerande uppfriskande försenade LCD
I arduino när vi går in i en slinga eller ogiltig eller fall, det kan upprepa manytimes, kan mer än du vill att det ska. Människor som ofta används för RETUR eller dröjsmål att undvika sådant tillstånd om det behövs.
LCD-skärmen när ansluten till skiftregister är lite långsammare (inte behöva uppdatera det 75hz per sekund iallafall: P)
så när vi går in ett fall det kan försöka visa samma värde skapar flera gånger i sekunden och detta en flimrande effekt. Eftersom jag inte övervakning realtidsdata behöver jag LCD bara uppdatera en gång när det visar något. så jag skapade en byte "refreshcount" när timern tycker det är dags att visa nästa punkt, gör det två sak
+ 1 till artikelnummer räknar
återställa uppdatera räkna till 1
Nu går ärendet och om uppdatera räkna är 1 kan läsa resten instruktioner i om uttalande. och omedelbart gör uppdatera räknas till "0" så när när nästa gång det loopar lcd är inte utvilad, stabil och icke flimret läsning. samma sak upprepas för varje fall.
återställa refreshcount > visas på LCD-> Uppdatera inte mer
här är arduino koden
fall 5: / / CPU Temp
om (refreshcount == 1)
{
LCD.Clear();
lcd.setCursor (0, 0);
LCD.Print F ("datorn Temp").
lcd.setCursor (0, 1);
LCD.Print (CPU_temp, 1);
LCD.Print F ("C").
refreshcount = 0;
}