蓝牙HC-05将原始值恢复为串行监视器

时间:2018-01-20 14:53:16

标签: bluetooth arduino microcontroller

我正在尝试将蓝牙HC-05连接到Arduino但面临以下问题。

这是Arduino代码:

#include <SoftwareSerial.h>
SoftwareSerial BTserial(19, 18);
char data=0;

void setup()
{
    Serial.begin(9600);         //Sets the data rate in bits per second (baud) for serial data transmission
    Serial.println("Arduino is ready");
    Serial.println("Remember to select Both NL & CR in the serial monitor");

    BTserial.begin(38400);
}
void loop()
{
    if(Serial.available() > 0)  // Send data only when you receive data:
    {
        data = Serial.read();      //Read the incoming data and store it into variable data
        Serial.print(data);        //Print Value inside data in Serial monitor
        Serial.print("\n");        //New line 
        if(data == '1')            //Checks whether value of data is equal to 1
            digitalWrite(13, HIGH);  //If value is 1 then LED turns ON
        else if(data == '0')       //Checks whether value of data is equal to 0
            digitalWrite(13, LOW);   //If value is 0 then LED turns OFF
    }
}

串行监视器中显示的输出如下:

    <x⸮x⸮xxx⸮⸮x⸮x⸮x⸮x⸮x⸮x⸮⸮⸮xxx     

3 个答案:

答案 0 :(得分:1)

您使用的软件序列用于将任何gpio引脚设为“Rx和Tx”。现在,您收到的数据将通过这些引脚进入您的电路板,在这种情况下为'19和18',但您正在检查来自其他Serial的数据。检查'BTserial'的数据可用性,如'BTserial.available()',同样也检查'serial.read'。

希望这有帮助。

您可以从link

了解有关软件序列的更多信息

答案 1 :(得分:0)

看起来错误的波特率请尝试以下代码BTserial.begin(9600);

答案 2 :(得分:0)

您在串行监视器上使用的波特率是多少。选择

  

9600波特率

串口监视器上的