在python中将信息发送到arduino串行端口

我正在将Atom提要中的数据从python脚本发送到我的Arduino开发板。第一次我可以成功与开发板通信,但是之后,我从pySerial模块收到了串行异常错误。


这是我的python代码:


import serial, sys, feedparser


#Settings

USERNAME = "user"

PASSWORD = "pw"

PROTO = "https://"

SERVER = "gmail.google.com"

PATH = "/gmail/feed/atom"


SERIALPORT = "\\\\.\\COM6"


try:

    ser = serial.Serial(SERIALPORT, 9600)

except serial.SerialException:

    print "failed to write to port %s" % SERIALPORT 

    sys.exit()


newmail = int(feedparser.parse(PROTO + USERNAME + ":" + PASSWORD + "@" + SERVER + PATH)    ["feed"]["fullcount"])

print newmail

ser.write(newmail)


ser.close()

同样,我可以在第一次向董事会发送成功消息,但是此后失败。


这是我的用作伪服务器的Arduino板的代码。


int led = 13;

int mail = LOW;

int val;


void setup()

{

  pinMode(led, OUTPUT);

  Serial.begin(9600);

  Serial.flush();

}


void loop()

{

  if (Serial.available()>0)

  {

    val=Serial.read();

    Serial.println(val);

    if(val > 0)

      digitalWrite(led, HIGH);

    else

      digitalWrite(led, LOW);

  }

}

在Arduino开发板的串行通信结束时,我需要做些什么来重置通信吗?如果我物理上重置了Arduino开发板,我可以再次向该开发板发送另一个写操作,但是不能这样做。有什么建议?


达令说
浏览 410回答 1
1回答

紫衣仙女

问题是我试图在打开串行监视器的同时写入串行端口。由于串行监视器也充当客户端,因此在连接串行监视器时无法连接python脚本。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python