Documente Academic
Documente Profesional
Documente Cultură
html
http://www.tehnic.go.ro
http://www.arduinotehniq.com
http://nicuflorica.blogspot.ro
amper & voltmeter by niq_ro, 02.2013, Craiova, Romania
vers. 1.3 - see http://nicuflorica.blogspot.ro/2013/02/arduino-ca-multimetru-2.html
actual 3.0 - 06.2017 - https://nicuflorica.blogspot.ro/2017/07/alimentator-
reglabil-0-30v0-7a-cu-volt.html
*/
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
#include <OneWire.h>
#include <DallasTemperature.h>
#define ONE_WIRE_BUS 2 // senzorul DS18B20 la pin D2
OneWire oneWire(ONE_WIRE_BUS);
DallasTemperature sensors(&oneWire);
unsigned long tpmasurare; // variabila pentru memorare timp masurare (in ms)
unsigned long tpintremasurari = 30000; // temperatura se masoara la 30 secunde
int trcurent = 0;
int trtensiune = 0;
sensors.begin();
pinMode(ventilator, OUTPUT);
digitalWrite(ventilator, LOW);
pinMode(tiuitoare, OUTPUT);
digitalWrite(tiuitoare, LOW);
lcd.print("indicator panou");
lcd.setCursor(0, 1);
lcd.print("tensiune-curent");
delay (2500);
lcd.clear();
lcd.setCursor(3, 0);
lcd.print("Umax = 35V");
lcd.setCursor(3, 1);
lcd.print("Imax = 15A");
delay (2500);
lcd.clear();
void loop() {
trtensiune = analogRead(Pintensiune);
sumatensiune = sumatensiune + trtensiune;
lcd.clear();
// partea de afisare
lcd.setCursor(0, 0);
lcd.print("U=");
if (tensiune < 10.0) lcd.print(" "); // daca tensiunea e mai mica de 10V
lcd.print(tensiune);
lcd.print("V");
lcd.setCursor(0, 1);
lcd.print("I=");
if (curent < 10.0) lcd.print(" "); // daca curentul e mai mic de 10A
lcd.print(curent);
lcd.print("A");
lcd.setCursor(9, 1);
lcd.print("t=");
if (t < 10.0) lcd.print(" "); // daca curentul e mai mic de 10A
lcd.print(t,0); // afisam doar valoarea intreaga
// lcd.write(0b11011111); // caracter asemanatpor cu gradul Celsius
lcd.write(byte(0)); // simbolul de grad Celsius creat de mine
lcd.print("C");