
В этом эксперименте мы научимся изменять состояние светодиода, посылая сообщение в последовательный порт платы Arduino.

В этом эксперименте мы научимся изменять состояние светодиода, посылая сообщение в последовательный порт платы Arduino.
Мы будем использовать цифровой вывод D11 платы Arduino Uno для управления яркостью светодиода.


Полученные из последовательного порта данные мы будем преобразовывать в ШИМ сигнал на выводе D11.
int inInt;
int counter = 0;
int ledPin = 11;
void setup() {
pinMode(ledPin, OUTPUT);
Serial.begin(115200);
Serial.println("UNO is ready!");
}
void loop() {
if (Serial.available()) {
inInt = Serial.parseInt();
Serial.print("UNO received:");
Serial.println(inInt);
analogWrite(ledPin, constrain(inInt, 0, 255));
}
}
Функция Serial.parseInt() возвращает число типа int из принимаемого из порта зачения.
Функция constrain(x, a, b) проверяет, что число x находится за границами отрезка (а, b), если x < a, возвращается a; если x > b, возвращается b.
Скомпилируйте и загрузите скетч на плату. Откройте монитор последовательного порта, теперь вы можете отправлять на плату числа от 0 до 255. Это значение будет определять яркость светодиода.
