2017-09-30 16 views
0

私はしばらく取り組んでいる問題があります。私はArduino Unoボードと、TTL出力のHC-05 Bluetoothトランシーバを持っています。次のように文字列の代わりにArduinoの印刷整数

接続は次のとおり

HC-05    Arduino UNO 
-----    ----------- 
RX  -->  Pin 11 
TX  -->  Pin 10 
+5v  -->  +5v 
GND  -->  GND 

コードは以下の通りである:

#include <SoftwareSerial.h> 
SoftwareSerial BTSerial(10, 11); // RX | TX 
String character; 

void setup() { 
    Serial.begin(9600); 
    pinMode(10, INPUT); 
    pinMode(11, OUTPUT); 
    digitalWrite(11, HIGH); 
    Serial.println("Enter AT commands:"); 
    BTSerial.begin(38400); // HC-05 default speed in AT command more 
    BTSerial.println("Welcome to ARBA-Beat"); 
} 

void loop() { 
    // Keep reading from HC-05 and send to Arduino Serial Monitor 
    if (BTSerial.available()) { 
    character = BTSerial.read(); 
    Serial.println(character); 
    //BTSerial.write(character); 
    BTSerial.flush(); 
    } 
} 

Iがアルドゥイーノにメッセージを送信するBluetooth terminal app for Androidを使用します。

問題は、文字列ではなく整数値を取得することです。

文字列:Arduinoのは素晴らしいです

enter image description here

私がhappeninng何見当がつかない。

助けてください。

ありがとうございます。

+0

charをStringとSerial.write()の代わりに文字型として使用します。 –

+0

@ ctrl-dあなたが提案した解決策を試しました。今私はゴミ値を取得しています(このようなもの - >⸮⸮⸮) –

+0

"Welcome to ARBA-Beat"が表示されますか? –

答えて

0

Stringを使用せず、タイプを使用してください。

char c= BTSerial.read(); 
Serial.write(c); Serial.write('\n'); 
関連する問題