Kód: Egész kijelölése
#include "LiquidCrystal.h"
#include "EEPROM.h"
LiquidCrystal lcd( 4, 5, 6, 7, 8 ,9); // RS, E, D4, D5, D6, D7
unsigned long start_time;
int tmp;
int tmp2;
unsigned char ch; // ezt arduinoul byte-nak hivjak
unsigned char ch2;
#define EEPROM_START 500
#define BEKAPCSOLASSZAMLALO_L (EEPROM_START+1)
#define BEKAPCSOLASSZAMLALO_H (BEKAPCSOLASSZAMLALO_L +1)
void setup() {
pinMode(13, OUTPUT); digitalWrite(13, HIGH); lcd.begin(16, 2);
ch=EEPROM.read(BEKAPCSOLASSZAMLALO_L);
ch2=EEPROM.read(BEKAPCSOLASSZAMLALO_H);
// 8 bittel eltoljuk balra, azaz felso bajt lesz, es hozzatesszuk az alsot
tmp = ch2<<8|ch; // eddigi bekapcsolasok szama
EEPROM.write(BEKAPCSOLASSZAMLALO_L, ++ch); // megnovelt erteket visszairjuk
if(!ch) // ch == 0 csak programozoul irva :-)
{ // akkor lesz tmp 0 ha a kisebbik helyiertek tulcsordul a szamlalo novelesekor
EEPROM.write(BEKAPCSOLASSZAMLALO_H, ++ch2); // es ekkor kell a nagyobbik helyierteket novelni es visszairni
}
tmp2 = ch2<<8 | ch;
lcd.setCursor(0,0);
lcd.print("Bekapcs.# ");
lcd.print(tmp2);
lcd.print(" "); // esetleg ott maradt kiiras letorlese
}
void loop() {}
void lcdprint2(char cc) // ket szamjeggyel irja ki a megadott szamot
{return;
}[code]