2017-03-02 19 views
0

から数値を受け取り、私はArduinoの宇野のシリアルから情報を受け取るためにループを設定すると、それだけで受信:私がしようとしたときであるラズベリーパイは、私はアルドゥイーノにラズベリーパイを接続して試していますarduinoの

'118537\r\n' 

シリアル印刷 'こんにちは' ここ

は私のArduinoのコードです:

:ここ

void setup(){ 
    Serial.begin(9600); 
} 
void loop(){ 
    Serial.println('Hi'); 
    delay(2000); 
} 

は私のpython 3.2のコードです

import serial 
ser = serial.Serial('/dev/ttyACM0') 
while True: 
    print(ser.readline()) 

これは2秒ごとに '118537 \ r \ n'と表示されます。

2秒ごとに元の「こんにちは」を取得するにはどうすればよいですか?知りたい人のために

+1

本当に 'attyACM0' ot' ttyACM0'ですか? – eyllanesc

+0

ありがとう@eyllanesc –

答えて

3

、変化する、私は、文字列に " 'の代わりのを使用しているという事実だった。

Serial.println('Hi'); 

Serial.println("Hi"); 

にETAを: '118537 \ n \ n'が印刷される理由は、 'Hi'ではなくbytesのリテラル配列であるためです"文字列"となるため、 コンパイラは、 intの印刷機能を使用します。実際には、 Hhexコードが 48ihexコードが 69あり、 0x486916進数の値は、小数点表記で正確118537あります。

関連する問題