惊!STM32 蓝牙串口模块(H21/JDY-31) 竟如此简单!

文章日志
1.写于2022/08/19
文章目录

1.认识蓝牙串口模块

2.困扰我很久的实验竟如此简单

3.一些现象的思考

1.认识蓝牙串口模块

JDY-31 蓝牙基于蓝牙 3.0 SPP 设计,这样可以支持 Windows、 Linux、 android 数据透传,工作频段 2.4GHZ,调制方式 GFSK,最大发射功率 8db,最大发射距离30 米,支持用户通过AT 命令修改设备名、 波特率等指令,方便快捷使用灵活

作为一款从机模块,JDY-31的一大优点是在MCU上进行编程时无需设置AT指令,更简单操作(相比于HC-05),直接串口发送信息即可使用。通常使用时接入串口引脚即可,成功与蓝牙模块建立通信后会发送CONNECTED

知道串口是怎么玩的,蓝牙串口模块就基本上会玩了。说白了,只是个蓝牙转串口的设备。

实物图如下:(这个是4针的)

工作图示如下:

手机蓝牙连接配对后,手机端发送信息,蓝牙串口模块会接收到,然后TXD引脚将信息发送单片机RXD引脚

单片机TXD发送信息到蓝牙串口RXD,蓝牙串口模块收到后,发送给配对的手机端

蓝牙串口模块也就相当于手机端和单片机无线通信的媒介

我购买的这款蓝牙串口模块,可以直接与手机配对连接,那么手机和蓝牙模块的无线通信便建立起来。

蓝牙模块,TXD和RXD引脚,直接接入单片机串口的RXD和TXD。比如接入串口1,那么手机端发送的数据,可以在PC(注意,这里是PC串口调试助手)看到。

2.困扰我很久的实验竟如此简单

我把实验想复杂了,搞半天居然没搞出来。

实际上,程序根本不用写,直接用之前的串口调试实验例程就可以的,改都不用改。

蓝牙模块和单片机连上就行。

手机端下载个蓝牙串口助手(蓝牙调试之类的),连接配对后,发送数据,可以在PC串口助手看到。(当然,如果你连线到其他串口,PC上是看不到的。PC上串口调试助手就是单片机串口1)

实验验证:

我这里用的是普中的串口示例。14. USART串口通信实验.7z

普中pz6806L开发板的串口1发送端引脚是PA9,接收端引脚是PA10(注意蓝牙模块和单片机T要连R,R要连T,我这里连反了)

手机端连接

连接后,手机端显示:

PC端显示:

然后,我们在手机端发送 hello bluetooth

PC端显示:

PC串口调试助手发送信息,手机端也可以收到

加一点其他的东西:

使用AT指令修改蓝牙设置时,需要保证蓝牙没有处于通信状态

3.一些现象的思考

明明这么简单,我实在搞不懂当时为啥我搞了好久…

真奇怪,刚发现一个bug,pc端发送hello phone时,手机端偶现 只接收到 hello phon 少了一个e
确实丢包了

在实际项目使用中,尽量简短命令发送吧。我这里,这个bug可能跟硬件有关,也可能是因为使用串口1,既要和PC通信,又要和蓝牙通信,负载大。

实际项目使用中,估计是发送数据包,像 帧头 + 数据体 + 校验码 之类的,就可以避免在接收到错误数据时的错误执行。

惊!STM32 蓝牙串口模块(H21/JDY-31) 竟如此简单!相关推荐

  1. uniapp app蓝牙打印_编程器加装蓝牙串口模块与手机APP操作演示

    编程器加装蓝牙模块后,可以方便的使用手机查看打印信息,进入控制台执行各种串口命令.本款蓝牙串口APP具有保存打印信息.分享打印信息.设置字体大小.清除屏幕信息.进入控制台.发送串口命令.执行串口命令- ...

  2. HC-02蓝牙串口模块的配置和使用

    HC-02蓝牙串口模块是基于蓝牙2.0并兼容BLE的双模蓝牙数传模块,带底板的蓝牙模块如下图: 模块可以作为从机与HC-05或HC-06的主机设备通信,也可以和手机通信. 模块在上电未连接蓝牙的时候L ...

  3. android车机蓝牙,安卓APP通过蓝牙串口模块控制DSP车机收音机

    从零开始,嘀咕很久 终于可以使用了... 安卓APP是电脑版xdr-gtk 的手机版控制,频谱扫描和RDS还没嘀咕好... 手机APP是在 ace919 eggplant886两位控制DSP车机的基础 ...

  4. android 车载蓝牙模块,安卓APP通过蓝牙串口模块控制DSP车机收音机

    从零开始,嘀咕很久 终于可以使用了... 安卓APP是电脑版xdr-gtk 的手机版控制,频谱扫描和RDS还没嘀咕好... 手机APP是在 ace919 eggplant886两位控制DSP车机的基础 ...

  5. 关于蓝牙串口模块开发

    我想做一个蓝牙串口APP,跟我的蓝牙串口模块进行通讯,但网上找的例子都是查找蓝牙,蓝牙配对什么步骤,这些步骤每个手机都可以手动做,没必要弄了吧,怎么还弄这些步骤呢?只要手动配对后再监听就可以了吧?有开 ...

  6. Unity与汇承HC-02蓝牙串口模块通讯

    概述 本来以为用Unity开发蓝牙功能非常简单,但是实际上去测试的时候才发现,还是有不少问题的.Unity中蓝牙通讯插件基本上也都是是用于安卓和ios系统的,但是现在的需求是要和HC-02蓝牙串口模块 ...

  7. android蓝牙模块有哪些类型,蓝牙串口模块是什么?怎么用?有哪些种类?

    燚智能点评:蓝牙串口模块,分为经典蓝牙串口(4.0以前的)和BLE串口(4.0以后).经典蓝牙的速度快,和普通串口速度相当,功耗高.BLE的速度慢,也就1K每秒上下,但是功耗低. 如果做物联网产品的控 ...

  8. arduino蓝牙通讯代码_通过手机控制蓝牙串口模块与Arduino通讯

    功能 通过手机APP向蓝牙模块发送指令,蓝牙模块通过串口将指令传递给Arduino开发板,并由Arduino做出反馈,传递给手机. 工具材料Arduino 开发板 ×1 蓝牙串口模块×1 Androi ...

  9. java 蓝牙读取数据格式,单片机与安卓手机通过蓝牙串口模块利用JSON数据格式通信实例...

    原标题:单片机与安卓手机通过蓝牙串口模块利用JSON数据格式通信实例 JSON 指的是 Java 对象表示法(Java Object Notation),JSON 是轻量级的文本数据交换格式,JSON ...

  10. 串口发数据到android数据错误,51单片机通过蓝牙串口模块发送JSON数据给安卓手机故障解决办法...

    原标题:51单片机通过蓝牙串口模块发送JSON数据给安卓手机故障解决办法 JSON(Java Object Notation, JS 对象简谱) 是一种轻量级的数据交换格式.它基于 ECMA (欧洲计 ...

最新文章

  1. linux版魔兽服务端,linux下玩warcraft III(魔兽)
  2. eclipse 代码中突然出现特殊字符
  3. 常用特征工程方法总结
  4. 7个珍藏多年的网站,颠覆你的想象,值得收藏起来!
  5. 微服务架构 — Overview
  6. 从零开始PyTorch项目:YOLO v3目标检测实现
  7. urllib,urllib2和request模拟登陆人人网比对
  8. 住过一晚两万的ICU后,我还是建议你不要轻易买保险
  9. 洛谷 P2746 [USACO5.3]校园网Network of Schools (Tarjan,SCC缩点,DAG性质)
  10. 移动应用可以通过微信沟通接口连接公众号 微信涨粉多了一个新通道
  11. 【Elasticsearch】Fielddata is disabled on text field fielddata=true
  12. [Caffe]:关于 Error parsing text-format Caffe.NetParameter: xxx.xx : Expected interger or identifier.
  13. 【本地存储】将数据存储到本地 (sessionStorage、vuex)
  14. 我的世界java版种子多村庄_《我的世界》“村庄与掠夺”PE版种子推荐,出生点就7个村庄相连...
  15. 【PS基本操作】如何使用PS把图片背景去掉、透明背景
  16. Windows卓越性能概念以及如何打开
  17. 免费图片库网站推荐(国外高清可商用)
  18. 【3dsmax插件】FBX转Bip插件 Bippy.ms
  19. 豆瓣fm android,豆瓣FM for Android
  20. 证件照在家就能拍,2分钟完成

热门文章

  1. react小书没读完的记录
  2. 【输入法】五笔学习系列教程
  3. tomcat 8.0下载
  4. 电脑翻译,百度翻译电脑桌面版
  5. 生信技能树R语言学习
  6. 用C语言写的爬虫项目
  7. 黄健计算机科学与技术学院,计算机科学与技术学院研究生学业奖学金初评结果汇总表...
  8. (1)pytorch 实现 minist手写数据集(cpu/gpu)版本
  9. EMC之 “不整改好别回来了”
  10. 小程序开发流程详细,小程序开发教程