序列异常Arduino到Python错误

时间:2017-05-09 14:19:20

标签: python arduino

我想从Arduino读取数据并使用pyserial通过串口存储在pc中的文本文件中,每当我尝试执行Python代码时它会给出这个消息我尝试过很多东西但是没有用完。

Image

代码:

import io
    import serial
    from datetime import datetime
    from serial import SerialException
    connected=False
    outfile='C:\Users\Yassine\hello.txt'
    ser = serial.Serial(port="COM12", baudrate=9600,timeout=None,bytesize=serial.EIGHTBITS,parity=serial.PARITY_NONE,stopbits=serial.STOPBITS_ONE)
    sio = io.TextIOWrapper(io.BufferedRWPair(ser, ser, 1), encoding='ascii', newline ='\r')
    with open(outfile,'a') as f:
     while ser.isOpen():
        try:
          datastring=ser.readline()
        except serial.SerialException:
         pass
        print datastring
        print datetime.now()
        f.write(datetime.now().isoformat() +'\t'+ datastring +'\n' )
        f.flush() 

        while not ser.isOpen():
           pass
           ser.close()

2 个答案:

答案 0 :(得分:1)

通过查看设备管理器来检查COM12实际上是否是Arduino。 或者,您可以在命令行中执行此操作以获取可用串行端口列表:

<div class="row" ng-class="angular.element($document).hasClass('navigation-row') ? 'secondary-navbar-padding' : ''">

您可能还有其他尝试访问Arduino串口的内容。确保Arduino IDE中的串行监视器已关闭。

答案 1 :(得分:0)

我想打开txt文件读取它的最后一个值&amp;把它写在其他txt文件中,它正在工作,但是写入下一个文件的读取值(arg)会跳转到对我不好的行我希望它与其他变量在同一行 with open(outfile,'a') as f: with open (inputfile,'r') as f1: arg =f1.readline() // that variable i read from the txt print (arg ) f.write(datetime.now().strftime("%Y-%m-%d ; %H:%M:%S")+'\n'+valueRead+ '\n' +arg+ '\n') // the file i write to f.flush() f1.close() f.close()

TTTs(这是我从txt文件中读取的arg变量,这是我得到的)

2017-05-12; 15:48:23 TTS(这就是我想要的)

感谢帮助人