2017-05-09 15 views
-1

私はArduinoからデータを読み込み、Pythonコードを実行しようとする度にpyserialを使用してシリアルポート経由でPCにテキストファイルを保存したいと思っています。でる。シリアル例外ArduinoからPythonへのエラー

Image

コード:COM12は、デバイスマネージャで見ることにより、実際のArduinoである

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

あなたの投稿の書式を修正してください! – handle

+1

プロフェッショナル:コンソール出力はテキストによるものですので、テキストとして投稿してください。あなたはそのイメージを削除し、フォーマットされたブロック内の同等のテキストに置き換えますか?画像はクリップボード、スクリーンリーダー、検索エンジンと互換性がないので、読者があなたを助けるのが難しくなります。 – halfer

答えて

1

チェック。 それとも、可能なシリアルポートのリストを取得するには、コマンドラインでこれを実行することができます。

python -m serial.tools.list_ports 

また、Arduinoのシリアルポートにアクセスしようとしている何か他のものを有することができます。 Arduino IDEのシリアルモニタが閉じていることを確認します。

+0

リンゼイワット私はそれが動作していないことを試みた –

+0

私はそれが動作していないしようとしました –

+1

@ YassineYassine何が動作していないのですか?あなたはarduinoをリストで見ましたか? – linzwatt

0

私はtxtファイルを開きたいです。最後の値を読み取る&それは他の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は

2017年5月12日(これは私がtxtファイルから読み込ん私の引数の変数は、これは私が得るものです)。 15:48:23 TTS(これはどうしたい?)

助けてくれてありがとう

関連する問題