当前位置: 首页 > news >正文

学习STC51单片机21(芯片为STC89C52RCRC)

每日一言

        与其焦虑未来,不如专注当下,把每件小事做到极致。

蓝牙模块

HC-08

蓝牙模块的话总结一句串口会了,蓝牙模块就会了

因为就我们这样的水平还是一个小卡拉米研究不了蓝牙的,研究蓝牙的都是高精尖的蓝牙的工程师,他们去做的

我们最多就连接一下,会简单使用就好了

我们怎么使用呢

杜邦线连接图如下:

简单的就是说5v对应vcc  GND对应GDN 毋庸置疑, RXD对应TXD  TXD对应RXD 因为串口连接是交叉的

然后这个HC08呢需要下载一个蓝牙助手APP去WWW.hc01.com下载就好了

进入软件后连接HC08蓝牙就好了

这个是页面显示,那么就说明成功了

然后我们可以发送 open 测试一下是否可以用蓝牙给单片机发送信息

原理就是手机上发信号,蓝牙模块收到信号后,蓝牙的TXD传信号给单片机的RXD 然后单片机去执行代码程序,实现了信息的交互,与之同时,单片机的TXD发送helloword到蓝牙模块的RXD ,蓝牙模块再发送到手机

,蓝牙模块再发送到手机,那么单片机收到了就执行相应的代码了

以上的单片机与蓝牙模块的 相互的TXD和RXD是同时进行的

那么我们又会发现诶??为什么pc端的串口助手的接收缓冲区也会有信息,而且是和蓝牙的一样的!为什么啊??

解释::

1. 核心原理:双向透传

蓝牙模块(如 HC-08)本质上是一个无线串口转换器,它的 RXD/TXD 引脚与单片机的串口直接相连,形成 “无线串口”:

  • 双向透明传输
    1. 手机→单片机:手机发送的数据被 HC-08 接收,通过 TXD 引脚传给单片机的 RXD。
    2. 单片机→手机:单片机通过 TXD 发送的数据,被 HC-08 的 RXD 接收,再通过蓝牙发给手机。
    3. 单片机→PC:单片机通过 TXD 发送的数据,同时通过串口线传给 PC 的串口调试助手(如 STC-ISP)。

2为什么两边都能看到数据?

(1)发送逻辑的 “广播” 特性:

你的代码中,单片机通过串口发送的任何数据(如sendString("helloworld"))都会同时被:

  • HC-08 接收并转发给手机 APP。
  • PC 串口接收并显示在 STC-ISP 中。
(2)接收数据的 “共享” 特性:

当手机 APP 发送数据时,数据通过 HC-08 到达单片机的 RXD 引脚。如果代码中有接收处理(如if(RI == 1)),单片机可能会根据指令执行操作,并通过 TXD回传响应(如"OK: LED ON"),这些响应同样会被两边接收。

3. 示意图

[手机APP] ←→ [蓝牙无线] ←→ [HC-08] ←→ [单片机串口] ←→ [PC串口(STC-ISP)]

                     ↑                    ↑

                     └─── 双向透传 ────────┘

  • 关键点
    单片机的串口是 “共享” 的,任何通过它发送的数据都会被连接到该串口的所有设备(HC-08 和 PC)接收。

这个是HC08蓝牙模块的资料包

记住这一款蓝牙的晶振是11.0592Mhz  还有波特率初始值也是9600  所以非常适合我们的以往对单片机的设置,所以这也是蓝牙可以进行通信的重要手段

硬件:USB转TTL电平的ch340

这个硬件是干嘛的呢,是由于你现在没有单片机的环境,或者是单片机上没有ch340这个芯片,那么我们就需要买一个这个来进行连接,当然如果单片机上面有ch340且有单片机的环境,那么你也可以不用买这个USB转TTL模块,

这边我们是用这个模块直接连接蓝牙模块,比较简单也不用写程序...

PC输入AT指令修改蓝牙名字

以下是AT指令

只要发送完之后接收缓冲区显示oksetName那就是成功了,那么你的蓝牙名字就会改变成你想要的那个了

  1. PC 发送指令 → 通过串口(USB 转 TTL)将 AT 指令(如AT+NAME=SJT123)传输到蓝牙模块。
  2. 模块解析指令 → 蓝牙模块内部的 MCU 解析指令,执行对应操作(如修改名称、波特率等)。
  3. 模块返回结果 → 操作完成后,模块通过串口返回状态码(如OK表示成功,ERROR表示失败),部分指令会附带执行结果(如修改后的参数值)。
  4. PC 接收显示 → 串口工具将模块返回的数据显示在接收缓冲区。

我们修改后手机上的蓝牙名字就会修改了

相关文章:

  • 历年西北工业大学计算机保研上机真题
  • DrissionPage WebPage模式:动态交互与高效爬取的完美平衡术
  • 使用原生前端技术封装一个组件
  • 近期手上的一个基于Function Grap(类AWS的Lambda)小项目的改造引发的思考
  • Feign服务注册到nacos 2.2.3
  • Spring中过滤器 RequestContextFilter 和 OncePerRequestFilter 的区别
  • 基于CNN的OFDM-IM信号检测系统设计与实现
  • Linux(8)——进程(控制篇——上)
  • JS浮点数精度问题
  • TypeScript 中高级类型 keyof 与 typeof的场景剖析。
  • 共享签名是什么
  • 打破建筑管理壁垒,IBMS智能系统赋能现代建筑协同增效
  • AUTOSAR图解==>AUTOSAR_SWS_MCUDriver
  • WWW22-可解释推荐|用于推荐的神经符号描述性规则学习
  • 基于NetWork的类FNAF游戏DEMO框架
  • 在 Android 上备份短信:保护您的对话
  • 项目管理工具Maven
  • 四、关系数据库标准语言SQL_2
  • 使用 Fetch + Streams 处理流式响应(Streaming Response)
  • 【空间光学系统与集成微纳光子学系统简介】
  • 南丰网站建设/网页制作教程步骤
  • 做查询网站费用/百度指数平台
  • 河北建筑工程网/上海最大的seo公司
  • 河北 政府网站建设管理/给公司做网站要多少钱
  • 四川 网站建设/百度关键词搜索技巧
  • wp网站如何做多级联动筛选框/百度收录网址提交