18-10-2017, 11:26
Zmienna typu BYTE przechowuje liczby od 0 do 255. Po przekroczeniu maksymalnej wartości zeruje się i liczy od początku. W Twoim programie nie przewidziałeś sytuacji, kiedy przekraczasz maksymalną wartość BYTE. Wykonaj, dla przykładu, poniższy program, otwórz serial monitor i zobacz efekt.
Właśnie dlatego program wyświetla 'mruga' Ci diodą od zera po przekroczeniu wartości maksymalnej.
Kod:
byte PWM = 0;
void setup() {
Serial.begin(9600);
}
void loop() {
Serial.println(PWM);
delay(20);
PWM++;
}