Есть совсем простой код
#define LED 5
int input = 0; // variable to keep the data from the serial port
void setup() {
pinMode(LED,OUTPUT); // declare the LED's pin as output
Serial.begin(9600); // connect to the serial port
digitalWrite(LED,HIGH);
}
void loop () {
input = Serial.read(); // read the serial port
// if the input is '1' turn the LED ON, if '0' turn it OFF
if (input == '1' ) {
digitalWrite(LED,LOW);
Serial.println("LED13 is ON");
}
if (input == '0'){
digitalWrite(LED, HIGH);
Serial.println("LED13 is OFF");
}
}
У меня rgb led с общим плюсом, поэтому значения наоборот.
Проблема в том, что когда я шлю команду(1), чтобы включить led, то он включается и работает, но до тех пор пока есть соединение по серийному порту. Как только я его выключаю, то лампочка больше не горит.
Вот
тут пишут, что при соеденении происходит reset ардуины и можно теоритически отключить DTR line, тогда вроде как резет не будет работать, но надо будет в ручную перед прошивкой резет делать.
Как сделать, чтобы лампочка продолжала гореть даже после того, как серийное соединение прекращается? Есть ли какой-то другой способ?