/* meri sirku pulzu i mezery a zobrazuje na LCD jako RPM meri analog vstup a a zobrazuje na LCD jako napeti baterie zapalovani */ #include LiquidCrystal lcd(12, 11, 5, 4, 7, 6);//piny na arduinu //zapojení pinů displeje- RS,E,D4,D5,D6,D7) !! pin 5 (R/W) uzemnit !! int D_napeti = 100; // nastaveni podeleni napeti baterie pro LCD int napeti; // baterie - zobrazuje s desetinou teckou long PER_h; // namerena perioda kladne casti pulzu long PER_l; // namerena perioda nulove casti pulzu float PER_s; // soucet period v usec float RPM_1; // otacky pro LCD v kRPM int RPMpin = 8; // volba vstupu - otacky void setup() { pinMode(13,OUTPUT); //LED zel-sign pruchodu programu pinMode(RPMpin,INPUT); // vstup - otacky lcd.begin(8, 2); lcd.setCursor(0, 0); lcd.print (" k RPM "); lcd.setCursor(0, 1); lcd.print (" U bat "); delay (1000); } void loop() { PER_h = pulseIn(RPMpin, HIGH); PER_l = pulseIn(RPMpin, LOW); PER_s = PER_h + PER_l ; // RPM_1 = (( 1/ PER_s ) * 60000); // prepocita na kRPM lcd.setCursor(0, 0); lcd.print (" kOt"); lcd.setCursor(0, 0); lcd.print (RPM_1); lcd.setCursor(9, 0); lcd.setCursor(0, 1); lcd.print (" V "); // napeti = (analogRead(A1) / D_napeti ); napeti = analogRead(A1) ; lcd.setCursor(0, 1); lcd.print (napeti); delay (900); digitalWrite(13, HIGH); delay(100); digitalWrite(13, LOW); }