Arduino连接蓝牙模块及L298n2021-06-03

Arduino连接蓝牙模块及L298n

注意事项

1、Arduino与电脑和蓝牙模块通讯都使用串口TX/RX,同时操作时产生冲突,程序写入Arduino时要断开与蓝牙相连的RX。
2、 执行时要注意,Serial.println()会将内容输出到蓝牙的另一端,而不是在电脑端显示信息。
3、蓝牙的默认密码是0000或1234。
4、如果外接驱动模块L298n时,需要将模块L298n和Arduino连接在同一电源上,保证信号输入电压一致。
5、对于不同版本的Arduino要注意pin是否支持数据类型,本次uno板pin3、5、6、9、10、11支持analog输出。
6、把05的蓝牙模块进入绝对AT状态(也就是34脚接高电平,模块上电,38400波特率),按着KEY不要放,上电,使用软件“获取模块信息”,可以读出所有信息。
7、本软件可以测试HC-03和HC-05,不可以测试HC-04 -06 -07,他们有另一个专用测试软。

需要的工具

蓝牙模块HC-05,Arduino uno,杜邦线

Arduino供电方法

方法一:使用USB端口为Arduino供电
Arduino连接蓝牙模块及L298n2021-06-03_第1张图片
方法二:使用Vin引脚为Arduino供电
Vin引脚可用于为Arduino开发板供电使用。但使用Vin引脚为Arduino开发板供电时,直流电源电压必须为7V ~ 12V。使用低于7V的电源电压可能导致Arduino工作不稳定。使用高于12V电源电压存在着毁坏Arduino开发板的风险。
Arduino连接蓝牙模块及L298n2021-06-03_第2张图片
方法三:使用5V引脚为Arduino供电
Arduino连接蓝牙模块及L298n2021-06-03_第3张图片
Arduino开发板电源引脚中的5V引脚不仅可以用于为外部电子元件提供+5V电源,也可以用于为Arduino开发板供电使用。

方法四:使用电源接口为Arduino供电
Arduino连接蓝牙模块及L298n2021-06-03_第4张图片
可以使用直流电源通过Arduino开发板电源接口为Arduino供电。通过此方法为Arduino开发板供电时,直流电源电压为9V ~ 12V。使用低于9V的电源电压可能导致Arduino工作不稳定。使用高于12V电源电压存在着毁坏Arduino开发板的风险。

以上信息来源:http://www.taichi-maker.com/homepage/arduino-projects-index/arduino-power-supply/#power4

蓝牙模块和Arduino接线

正常接线方式:
VCC:接Arduino的5V或者3.3V
GND:接Arduino的GND
TXD:发送端,接Arduino的RX
RXD:接收端,接Arduino的TX
Arduino连接蓝牙模块及L298n2021-06-03_第5张图片
本次实验采用更改pin口的方式接线:
VCC:接Arduino的5V或者3.3V
GND:接Arduino的GND
TXD:发送端,接Arduino的pin8
RXD:接收端,接Arduino的pin9
修改方法:

#include           //库文件
SoftwareSerial BT(8, 9);
char X;

Arduino连接蓝牙模块及L298n2021-06-03_第6张图片

Arduino程序

初始化波特率,默认38400。为了同步我修改成9600。

void setup() 
{
  Serial.begin(9600);              //串口监视器通信速率,38400
  Serial.println("蓝牙连接正常");     //串口监视器显示蓝牙正常状态

  BT.begin(9600);                  //蓝牙通信速率,默认一般为 38400
}

主循环里面进行信号检测

void loop()                         //大循环,执行。
{
  if (Serial.available())           //检测:【串口】如果数据写入,则执行。
  {
    X = Serial.read();              //把写入的数据给到自定义变量  X
    BT.print(X);                    //把数据给蓝牙
  }

  if (BT.available())               //检测:【蓝牙】如果数据写入,则执行。
  {
    X = BT.read();                  //把检测到的数据给到自定义变量 X
    Serial.print(X);                //把从蓝牙得到的数据显示到串口监视器
  }
}

添加各种东西以后的成品。
Arduino连接蓝牙模块及L298n2021-06-03_第7张图片
Arduino连接蓝牙模块及L298n2021-06-03_第8张图片

最终的源代码

你可能感兴趣的:(蓝牙,L298n,arduino)