Разбрах къде е грешката и тя не е програмна. Написах нов скрипт далеч по разбираем от този дето намерих в мрежата и резултата фейлна отново:
/ Arrays to save our results in
unsigned long values[10];
// preset variables
int inputPin = A0;
int LEDpin = 13;
// Setup the serial port and pin 13
void setup() {
Serial.begin(9600);
pinMode(LEDpin,OUTPUT);
}
void loop() {
unsigned int i;
unsigned int total = 0;
unsigned int average;
for(i=0;i<10;i++) {
values[i] = analogRead(A0);
delay(500);
}
// print out the results
Serial.println("--- Results ---");
for(i=0;i<10;i++) {
total = total + values[i];
}
average = total / 10;
// calculate the average result
Serial.print("Average mтхilivolts: ");
Serial.println(average);
if (average < 142 ) {
digitalWrite(LEDpin,HIGH);
} else {
digitalWrite(LEDpin, LOW);
}
}
Като посоча вграденият LED към борда всичко си идва на място, като сложа мой външен резултата фейлва, понеже има голям волтидж дроп (предвиден е за 12v с ). Както и да е, загадката е решена