Salve gpb01, credimi che ho cercato come postare il codice per bene, ma nel'esempio dava una icona che nel mio browser non compariva, grazie della correzione.
Ho provato il comando Formattazione automatica, ma in pratica non ha cambiato niente.
Ecco il codice modificato.
#define ORARIO 2
#define ANTIOR 3
#define STEP 11
#define DIR 10
#define MODE0 12
// #define MODE1 11
// #define MODE2 12
#define ENABLE 13
#include <LiquidCrystal.h>
int POTENZ = A0;
int ora = 0;
int ant = 0;
int VALORE01 = 0;
int VALORE02 = 0;
int i = 0;
int tempPin = A1;
int analogInput = A2;
float vout = 0.0;
float vin = 0.0;
float R1 = 100000.0; // inserire valore esatto resistenza R1 (100K)
float R2 = 10000.0; // inserire valore esatto resistenza R2 (10K)
int value = 0;
// BS E D4 D5 D6 D7
LiquidCrystal lcd(4, 5, 6, 7, 8, 9);
void setup() {
lcd.begin(16, 2);
Serial.begin( 9600 );
// Serial.println(F("Tempo in Millisecondi per impulso"));
pinMode( ENABLE , OUTPUT );
pinMode( DIR , OUTPUT );
pinMode( STEP , OUTPUT );
pinMode( MODE0 , OUTPUT );
//pinMode( MODE1 , OUTPUT );
//pinMode( MODE2 , OUTPUT );
pinMode(POTENZ , INPUT );
pinMode(ORARIO , INPUT );
pinMode(ANTIOR , INPUT );
pinMode(tempPin , INPUT );
pinMode(analogInput, INPUT);
}
void loop() {
value = analogRead(analogInput);
vout = (value * 5.0) / 1024.0;
// inserire al posto di 5.0V l`uscita in volt tra i Pin 5V e GND del vostro Arduino
vin = vout / (R2 / (R1 + R2));
if (vin < 0.09) {
vin = 0.0;
}
int readPin = analogRead(POTENZ);
int delayTime = map(readPin, 0, 1024, 70, 80);
// Sensore temperatura e conversione
int tempReading = analogRead(tempPin);
double tempK = log(10000.0 * ((1024.0 / tempReading - 1)));
tempK = 1 / (0.001129148 + (0.000234125 + (0.0000000876741 * tempK * tempK )) * tempK ); // Temp Kelvin
float tempC = tempK - 273.15; // Convert Kelvin to Celcius
float tempF = (tempC * 9.0) / 5.0 + 32.0; // Convert Celcius to Fahrenheit
digitalWrite( DIR , HIGH );
digitalWrite( STEP , LOW );
digitalWrite( MODE0 , HIGH );
//digitalWrite( MODE1 , HIGH );
//digitalWrite( MODE2 , LOW );
for ( i = 0; i < 1600; i++) {
digitalWrite( STEP, HIGH );
delay( delayTime);
digitalWrite( STEP, LOW );
delay( delayTime);
VALORE01 = analogRead(POTENZ);
VALORE02 = analogRead(value);
// tempPin =analogRead(tempC);
// Serial.println();
lcd.setCursor(0, 0);
lcd.print("Precisione ");
lcd.setCursor(11, 0);
lcd.print(VALORE01);
delay(1);
lcd.setCursor(0, 1);
lcd.print("Temp V ");
lcd.setCursor(4, 1);
lcd.print(tempC);
delay(1);
lcd.setCursor(11, 1);
// lcd.print("INPUT V= ");
lcd.print(vin);
delay(1);
ora = digitalRead(ORARIO);
ant = digitalRead(ANTIOR);
if (ora == HIGH) {
for ( i = 0; i < 200; i++) {}
digitalWrite( DIR , HIGH);
digitalWrite( STEP, HIGH );
delay( 1 );
digitalWrite( STEP, LOW );
delay( 1 );
}
if (ant == HIGH) {
for ( i = 0; i < 200; i++) {}
digitalWrite( DIR , LOW);
digitalWrite( STEP, HIGH );
delay( 1 );
digitalWrite( STEP, LOW );
delay( 1 );
}
}
}