2017-03-19 32 views
0

ボタンが押せば1を、そうでなければ0を送る必要があります。だから私はこのArduino(Nano)コードを使用しました。私はSerial.printlnでそれを使用して、COMポート上でそれをchekingとき、それは動作します:ArduinoからHC-05経由でデータを送信する方法は?

#include <SoftwareSerial.h> 
int txPin = 1; 
int rxPin =0; 
bool y = 1; 
bool n = 0; 
SoftwareSerial bt(txPin, rxPin); 
int btnpin=13; 

void setup() { 
    pinMode(13, INPUT); 
    bt.begin(9600); 
    Serial.begin(9600); 
} 

void loop() { 
    if(bt.available()) { 
    if(digitalRead(btnpin) == HIGH) 
     bt.write(y); 
    else bt.write(n); 
    } 
    delay(100); 
} 

私は、Bluetooth端末とそれを確認しようとしています。しかし、私はいつもこの

enter image description here

enter image description here

+0

ボーレート問題のほかに、ASCIIコード0および1の文字は印刷可能な文字ではありません。 –

+0

私はbt.println( "1")を使用します。 bt.write(y)の代わりに。 – bakhshiyev

答えて

2

は他のボーレートを試してみてください参照してください。いくつかのモジュールはデフォルトとしてボーレート38400を持っていますが、他の9600もあります。余分なUARTがある場合は、SoftwareSerialの代わりにSerialを使用することを検討してください。

+0

私はすべてのボーレートを試してみましたが、それは私を助けませんでした。あなたはrxとtxの代わりに他のピンを使用しようとしていますか?例えば2および3? – bakhshiyev

+0

現在、内蔵のUSBチップに接続されているピン0とピン1を使用しているようです。それは問題の原因になっていますか?他のピンでSoftwareSerialを試すか、ピン0と1でSerialを試してみてください。 – jikuja

関連する問題