如何用手机控制stm32单片机,通过蓝牙模块

电脑与单片机通信原理

我们用到的串口调试助手,就是通过电脑上面的虚拟串口和单片机的串口进行通信从而来调试。在建立通信的过程中,我们需要把电脑上虚拟串口的波特率,数据位,奇偶校验位,停止位与单片机上面的串口波特率,数据位,奇偶校验位,停止位配置成同样的数。有的同学就问了,我怎么知道单片机的上面的串口的配置是多少呢?这个。。。。。在keil5中自己写的串口初始化代码就是你单片机的串口的配置啊。
我们把电脑上的串口配置好了之后,我们就可以用电脑上的串口调试助手来控制单片机了,(当然是你代码没问题的情况下)。可以通过电脑串口发送数据,当单片机的串口接收到数据之后执行相应的命令,比如LED闪烁或者蜂鸣器发出惨叫或者oled显示图片等等。

手机与单片机通信原理

既然知道了电脑串口与单片机的通信原理,那么其实也就懂了手机与单片机的通信原理。为什么这么说呢?你想想,电脑与单片机通过usb数据线来进行数据传输,虚拟串口与单片机串口之间通信,那么同理,当把蓝牙模块与串口连接在一起之后,手机与单片机就可以通过蓝牙模块进行数据传输,蓝牙模块接收到数据之后就会把数据给单片机的串口,手机与单片机的通信就相当于把有线传输数据变成了无线传输数据而已,代码甚至都不用改。所以,骚年,你能用电脑上的串口调试助手来控制单片机,那么你就能用手机控制单片机。如果不知道怎么通过电脑电脑串口来控制单片机的话,可以去B站上面去看看野火或者原子哥的视频,他们都进行了非常详细的讲解,我本人是比较推荐野火的视频,毕竟火哥的教学视频对新手来说真的太友好了。下面附上给小学弟做的手机控制单片机的新手教程。

第一步:把蓝牙接收模块与单片机串口连接。按照下面表格接线。

单片机串口 蓝牙模块
+5V VCC
GND GND
USART1_TX(PA9) RXD
USART1_RX(PA10) TXD

注意单片机串口的TX要与蓝牙模块的RXD相连,否则无法传输数据。
第二步:手机下载蓝牙串口助手app。应用商城里面就有。这是我用的app。
在这里插入图片描述
第三步:烧录写好的串口程序。
在程序中,我写好了如果串口接收到0x01,那么单片机的led灯就闪烁一下。这里注意波特率配置要根据蓝牙模块默认的波特率来配置(一般是9600或者115200,自己看自己买的蓝牙模块的说明手册)。波特率不同的话数据会乱码或者直接无法通信
第四步:打开手机蓝牙,把手机蓝牙和蓝牙模块连接起来。
第五步:进入蓝牙串口app。在聊天模式下,发送数据1。会看到单片机的LED灯会闪烁。

总结:先保证硬件连接没有问题,一、单片机串口与蓝牙模块连接时注意TX要与RXD相连。二、确定自己手机蓝牙与蓝牙模块连接成功。硬件可能存在的问题就是这两个。如果不能达到效果的话就从程序里面来找问题。

有不懂的地方或者其他问题可以评论区留言哦,我看到了就会回复。

版权声明:本文为CSDN博主「我不是小白菜」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_45402928/article/details/107602023

生成海报
点赞 0

我不是小白菜

我还没有学会写个人说明!

暂无评论

发表评论

相关推荐

RT-Thread Studio移植LAN8720A驱动

RTT网络协议栈驱动移植(霸天虎) 1、新建工程 ​ 工程路径不含中文路径名,工程名用纯英文不含任何符号。 2、用CubeMx配置板子外设 2.1、配置时钟 ​ 按照自己板子配置相应时钟。

Lin总线通信在STM32作为主机代码以及从机程序

距离上次做资料准备已经过去六天了。最近在学车,上周末就没有开电脑。这周开始进行了Lin通信的代码整理,目前是可以正常通信的了,采用的是增强型校验方式。后期再进一步跟进研究。。。更新一博,留

4路红外循迹模块使用教程

4路红外循迹模块使用教程 个人原创博客:点击浏览模块详细信息: 工作电压:DC 3.3V~5V 工作电流:尽量选择1A以上电源供电 工作温度:-10℃~50℃ 安装孔

【STM32Cube笔记】12-配置外部中断

【STM32Cube笔记】系列文章目录 1-基于STM32的VSCode入门级教程前言 2-STM32Cube安装教程 3-STM32CubeIDE汉化 4-STM32Cube配置时钟设置 5-跑马灯引脚配置 6-Cortex-M7内核基本配