51与JDY31蓝牙模块通讯,51驱动JDY31蓝牙APP点灯
51与JDY31蓝牙模块通讯,51驱动JDY31蓝牙APP点灯
- JDY31蓝牙模块简介
- 串口配置
- 主要代码
- 实验接线
- 手机APP配置
- 实验现象
- 总结
JDY31蓝牙模块简介
本次实验用到是JDY31蓝牙模块,JDY-31 蓝牙基于蓝牙 3.0 SPP 设计,
点击图片购买
蓝牙模块是串口通讯,单片机也有串口通讯,我们只需要配置好既可以实现单片机于蓝牙通讯,甚至是实现更多的功能,本文对刚学习51需要制作蓝牙小车的帮助很大
串口配置
STC89C52的UART有四种工作模式:
模式0:同步移位寄存器
模式1:8位UART,波特率可变(常用)
模式2:9位UART,波特率固定
模式3:9位UART,波特率可变
本次实验配置的是模式1; 8位自动重装
具体的程序的程序配置可以借助STC官方的下载器,下载器自带一个波特率计算器,按下面的图配置生成复制代码就行
蓝牙模块默认波特率是9600,所以这里要选择4800倍速
主要代码
串口初始化代码:89C52单片机没有AUXR,可以去掉这两句程序,再打开EA和ES中断
/*** @brief 串口初始化9600bps@11.0592MHz* @param 无* @retval 无*/
void UART_Init()
{SCON=0x50; //8位数据,可变波特率PCON |=0x80; //使能波特率倍速位SMOD TMOD &= 0x0F; //设置定时器模式TMOD |= 0x20; //设置定时器模式TL1 = 0xFA; //设置定时初始值TH1 = 0xFA; //设置定时重载值ET1 = 0; //禁止定时器%d中断TR1 = 1; //定时器1开始计时EA=1; //开启总中断ES=1; //开启串口中断
}
串口发送数据:SBUF是串口数据缓冲寄存器,
*** @brief 串口发送一个字节数据* @param Byte 要发送一个字节数据* @retval 无*/
void UART_SendByte(unsigned char Byte)
{SBUF=Byte;while(TI==0);TI=0;
}
主要代码
void main ()
{UART_Init(); //串口初始化while(1){ }
}void UART_Routine() interrupt 4 //串口中断号
{if(RI==1){P1=SBUF; //接收数据控制P1RI=0; //串口接收寄存器置零}
}
实验接线
单片机下载的时候不要连接蓝牙,要先下载程序再连接,否则下载会失败
单片机 | 蓝牙模块 |
---|---|
5V | VCC |
P3.0 | TX |
P3.1 | RX |
GND | GND |
手机APP配置
1,在手机商店下载SPP蓝牙串口,本蓝牙模块苹果手机不可用,
2,点开APP右上角连接对应的蓝牙
3,在开关这个地方自定义一个按钮,配置如下图:
配置好之后即可开始操作
实验现象
总结
蓝牙传输的数据存在SBUF寄存器中,对接收到的数据进行处理就可以进行各种操作控制,本文相当于一个串口通讯模板,需要完整工程的可以下方留言
51与JDY31蓝牙模块通讯,51驱动JDY31蓝牙APP点灯相关推荐
- C#实现笔记本自带蓝牙与汇承HC-08(BLE)蓝牙模块通讯
汇承HC-08蓝牙C#通讯 目录 问题背景 感谢 BLE介绍 参考代码 参考业务逻辑 参考库和例程 程序思路 难点介绍 问题1平台和windows sdk 的组件 问题2优化速度和更改同步 问题3蓝牙 ...
- 利尔达e95蓝牙模块程序_Arduino使用HC05蓝牙模块与手机连接
通过本文,可以了解到以下内容: 进入 AT 模式进行蓝牙基本参数设置 Arduino 蓝牙控制 LED 电路设计以及代码编写 利用 Andorid 蓝牙串口调试软件测试功能 进入 At 模式进行蓝牙基 ...
- 20220727使用汇承科技的蓝牙模块HC-05配对手机进行蓝牙串口的演示
20220727使用汇承科技的蓝牙模块HC-05配对手机进行蓝牙串口的演示 2022/7/27 18:55 Android11:摩托罗拉 motorola edge s 6GB+128GB 骁龙870 ...
- linux禁用蓝牙模块,[原创]CVE-2020-12351:Linux蓝牙模块拒绝服务漏洞分析
一. 漏洞信息 1. 漏洞简述 CVE-2020-12351是谷歌安全研究人员在Linux内核中发现的蓝牙安全漏洞.该漏洞位于net/bluetooth/l2cap_core.c,是一个基于堆的类型混 ...
- HC-05蓝牙模块学习(两个蓝牙模块连接互发信息)
目录 1.进入AT模式和连接前注意事项 2.实现两个蓝牙完美配对 3.HC-05_1初始化配置 4.HC-05_2初始化配置 5.HC-05_1与HC-05_2绑定 6.设置模块通信波特率&通 ...
- Linux卸载蓝牙模块,Linux 下调试低功耗蓝牙的笔记
蓝牙4.0版本推出了低功耗规范,简称BLE (Bluetooth Low Energy),很多小型设备,例如小米手环,都是使用低功耗蓝牙.要与这类模块连接,主设备的蓝牙模块必须支持低功耗,例如inte ...
- 蓝牙模块 hc06 linux,[Arduino]HC-06蓝牙模块使用小结
简介 蓝牙,顾名思义,蓝色的牙齿,并不能用来咬人,而是一种无线数据传输标准. HC-05和HC-06是现在使用较多的两种蓝牙模块.两者之间的区别是HC-05是主从一体机,既能向自己的'主子'打小报告, ...
- 51单片机与HC-05蓝牙模块连接使用
文章目录 文章目录 一.连线 二.配置模式 三.代码编写 一.连线 一般我们只用VCC,GND,TXD,RXD这几个接口 VCC->5V GND->GND TXD->RXD ...
- 51单片机蓝牙模块(HC05)运行原理
51单片机蓝牙模块(HC05)及其运行原理 目录 51单片机蓝牙模块(HC05)及其运行原理 一.测试蓝牙模块 二.配置蓝牙模块 三.烧写程序 四.测试 参考博文 一.测试蓝牙模块 在所有工作进行之前 ...
- JDY-31蓝牙模块远程控制STM32F103单片机
一,概述 手机app通过蓝牙模块发送指令实时控制单片机的外设功能,比如发送衣柜开关门指令(舵机旋转),衣架上升降落(步进电机正转反转),远程开启去污除湿功能(继电器控制打开\关闭小风扇+加热片). 本 ...
最新文章
- fedora linux操作系统安装,Fedora-10 Linux操作系统的安装,Fedora Linux的安装锦集收藏,图文并茂详解...
- 【示例】C语言中利用数组存放函数指针
- 端口复用突破防火墙(图)
- 常见的php笔试题(附答案)搜集整理
- 使用Azure Functions玩转Serverless
- 河南省高考让不让带计算机,河南高考2018严禁携带的东西有哪些?这种衣服不能进考场...
- 实时“头发-面部皮肤”分割与人脸肤色分类
- 在创业之路上,每个人都会有很多的老师
- c语言程序构建,c语言开发环境构建及简单的c程序设计.doc
- 太原冶金技师学院计算机系,山西冶金技师学院专业都有什么
- 三维医学图像数据标注 3D Slicer
- VMware Workstation Pro安装
- 【Flink】Flink 做检查点 报错 Checkpoint Coordinator is suspending.
- 系统测试之功能测试:测试用例的设计步骤——从登陆开始说起
- win10便签常驻桌面_Win10下环境有哪些好用的便签记事本?想和iPhone一块儿用 - 学显...
- Receptive Field Block Net for Accurate and Fast Object Detection
- 自动化建模 | H2O开源工具介绍
- 敏捷开发“松结对编程”系列之十一:L型代码结构(团队篇之一)
- Docker容器无法启动,里面的配置文件如何修改
- Matplotlib 多子图绘制