2013-06-05 53 views
1

我正在从Atom源的数据从python脚本发送数据到我的Arduino板。我可以第一次成功地与电路板进行通信,但是之后,我从pySerial模块中得到一个串行异常错误。将信息发送到python的arduino串行端口

这里是我的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板,我可以再次发送另一个写入到板,但不是其他。有什么建议么?

回答

2

问题是我在串行监视器打开的同时试图写入串行端口。由于串行监视器也充当客户端,因此在连接串行监视器时,python脚本无法连接。