前提・実現したいこと
arduinoとpython間のシリアル通信でpythonからarduinoにデータを送る方法がわからず困っています。いろいろ調べましたがわからなく困惑状態です。
下記のコードは汚いです、申し訳ありません
pythonスクリプトからコードを実行するとだいたいFalseになってしまいます。しかしser.write()の数値を変更するとたまにTrueになってそのうちFalseになります。なにがなんだか
しっかりTrueになる方法また、ser.write()した値がそのままser.read()の値になる方法を教えていただきたいです。できれば説明もありますと大変うれしく思います。
長文失礼しました。
Arduinoのコード
void setup() { Serial.begin(9600); } void loop() { if(Serial.available() > 0){ Serial.println("True"); //int num = Serial.read(); //Serial.println(num); }else{ Serial.println("False"); } }
Pythonのコード
python
1import serial 2import time 3 4ser = serial.Serial('/dev/cu.usbmodem1421', 9600) 5time.sleep(3) 6 7ser.write(5) 8 9while True: 10 line = ser.readline() 11 line = line.decode("utf-8") 12 line = line.rstrip() 13 print(line) 14 time.sleep(1) 15ser.close()
試したこと
ここに問題に対して試したことを記載してください。
補足情報(FW/ツールのバージョンなど)
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2018/02/10 01:55
2018/02/10 04:58
退会済みユーザー
2018/02/11 06:31