Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/arduino/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Bluetooth Arduino与蓝牙hc-06的连接_Bluetooth_Arduino - Fatal编程技术网

Bluetooth Arduino与蓝牙hc-06的连接

Bluetooth Arduino与蓝牙hc-06的连接,bluetooth,arduino,Bluetooth,Arduino,大家好 我有个小问题。我需要用HC-06蓝牙连接Arduino Mini Pro 输入/输出: Arduino HC-06 接地------------------G(接地) VCC------------------V D0(TX)-------------2 D1(RX)-------------3 我尝试了以下代码: #include <SoftwareSerial.h> SoftwareSerial mySerial(2, 3); // RX, TX void setup

大家好

我有个小问题。我需要用HC-06蓝牙连接Arduino Mini Pro

输入/输出: Arduino HC-06

接地------------------G(接地)

VCC------------------V

D0(TX)-------------2

D1(RX)-------------3

我尝试了以下代码:

#include <SoftwareSerial.h>

SoftwareSerial mySerial(2, 3); // RX, TX

void setup()
{
Serial.begin(9600);
Serial.println("Goodnight moon!");
//mySerial.begin(115200);    //if you change the baud and want to re-run this sketch, make sure this baud rate matches the new rate.
mySerial.begin(38400);
//mySerial.begin(9600);


delay(1000);
mySerial.print("AT");
delay(1000);
mySerial.print("AT+VERSION");
//delay(1000);
//mySerial.print("AT+PIN1234"); // Set pin to 1234  was 1342
//delay(1000);
//mySerial.print("AT+NAMEJY-MCU-HC06"); // Set the name to JY-MCU-HC06
delay(1000);
//mySerial.print("AT+BAUD8"); // Set baudrate to 115200
//mySerial.print("AT+BAUD4"); // Set baudrate to 9600
//mySerial.print("AT+BAUD7"); // Set baudrate to 57600
delay(1000);
}

void loop() // run over and over
{
if (mySerial.available())
Serial.write(mySerial.read());
if (Serial.available())
mySerial.write(Serial.read());
}
#包括
软件系列mySerial(2,3);//接收,发送
无效设置()
{
Serial.begin(9600);
连载。println(“晚安,月亮!”);
//mySerial.begin(115200);//如果更改波特率并希望重新运行此草图,请确保此波特率与新速率匹配。
mySerial.begin(38400);
//mySerial.begin(9600);
延迟(1000);
mySerial.print(“AT”);
延迟(1000);
mySerial.print(“AT+版本”);
//延迟(1000);
//mySerial.print(“AT+PIN1234”);//将pin设置为1234是1342
//延迟(1000);
//mySerial.print(“AT+NAMEJY-MCU-HC06”);//将名称设置为JY-MCU-HC06
延迟(1000);
//mySerial.print(“AT+BAUD8”);//将波特率设置为115200
//mySerial.print(“AT+BAUD4”);//将波特率设置为9600
//mySerial.print(“AT+BAUD7”);//将波特率设置为57600
延迟(1000);
}
void loop()//反复运行
{
if(mySerial.available())
Serial.write(mySerial.read());
if(Serial.available())
mySerial.write(Serial.read());
}
但是,我不能得到批准。你能帮助我吗?
谢谢。

正如mpflaga所说,调试这些模块的最好、最简单的方法是直接与计算机连接,并通过终端程序(超级终端等)进行接口

这就是说,我猜模块可能运行在9600波特,而不是38400波特。 此外,我认为您的代码会更好地工作,如:

#include <SoftwareSerial.h>

SoftwareSerial mySerial(2, 3); // RX, TX

char myChar;

void setup()
{
    Serial.begin(9600);

    //mySerial.begin(38400);
    mySerial.begin(9600);

    mySerial.print("AT");
    delay(1000);
}

void loop() // run over and over
{
    while ( mySerial.available() )
    { 
        myChar = mySerial.read();
        Serial.print(myChar);
    }

    while ( Serial.available() )
    { 
        myChar = Serial.read();
        mySerial.print(myChar);
    }
}
#包括
软件系列mySerial(2,3);//接收,发送
char-myChar;
无效设置()
{
Serial.begin(9600);
//mySerial.begin(38400);
mySerial.begin(9600);
mySerial.print(“AT”);
延迟(1000);
}
void loop()//反复运行
{
while(mySerial.available())
{ 
myChar=mySerial.read();
串行打印(myChar);
}
while(Serial.available())
{ 
myChar=Serial.read();
mySerial.print(myChar);
}
}

当您使用Arduino Mini Pro时,您使用的是vUSB串行端口(又名FTDI)。尝试将其连接到HC06,并尝试通过串行端口与之通信。然后从那里开始。