Arduino продолжает перезапуск после последовательной связи - PullRequest
0 голосов
/ 01 мая 2020
Good day 

У меня есть код python, который подключен к моему arduino с помощью последовательной связи, и после того, как я выполню команду (светодиод открытия), светодиод включится примерно на 2 секунды, и после этого arduino перезапустится и go по умолчанию, светодиод не горит. Но он отлично работает в последовательном мониторе

python code
 time.sleep(2) 
        ser = serial.Serial('COM3', 9600)

        if 'lights on' in voice:   #after sending this part the LED will turn on for about 2 sec and then turning off again
            ser.write(1)   

        if 'lights off' in voice:
            ser.write(2)

        time.sleep(2)    
        ser.close()    


arduino code:

byte incomingByte = 0; // for incoming serial data
int Relay4 = 13;
void setup() {

Serial.begin(9600); // opens serial port, sets data rate to 9600 bps
pinMode(Relay4,OUTPUT);
digitalWrite(Relay4, HIGH);
}

void loop()
{

if(Serial.available())
{
  incomingByte = Serial.read();
  Serial.println(incomingByte,DEC);
  switch(incomingByte){
  case 49:
  digitalWrite(Relay4,LOW);
  break;
  case 50:
  digitalWrite(Relay4,HIGH);
  break;
  default:
  break;
    }
  }
}

1 Ответ

0 голосов
/ 02 мая 2020

удалите ser.close () и сделайте что-нибудь для предотвращения выхода python, например

while(True):
    pass
...