STM32——蓝牙模块HC06
STM32——蓝牙模块HC06
选用的芯片是STM32F407的芯片,一个HC06的蓝牙模块。
我们采用串口连接,所以我们在芯片原理图找出串口模块。
参数
STM32串口异步通信定义的参数传送格式
起始位
数据位(8位或者9位)
奇偶校验位(第9位)
停止位(1,1.5,2位)
波特率设置
波特率:串行通信的传送速率:在串行通信中,数据是按位进行传送的,因此传送速率用每秒钟传送格式位的数目来表示,称之为波特率(band rate)。每秒传送一个格式位就是1波特。9600bps:每秒传输9600位数据 传输1200个字节 有效960字节
TXD:发送数据 Transmit(tx) Data 简写形式 (另外写法:T TX TD)
RXD:接受数据 Receive(rx) Data 简写形式 (另外写法:R RX RD)
然后找出引脚。
PA2——TX
PA3——RX
然后蓝牙的VCC——5V(开发板)
RX——TX
TX——RX
GND——GND
接上即刻
代码
配置引脚
//蓝牙模块的初始化
void HC06_Init(void)
{GPIO_InitTypeDef GPIO_InitStruct;USART_InitTypeDef USART_InitStruct;NVIC_InitTypeDef NVIC_InitStruct;RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOA, ENABLE);RCC_APB1PeriphClockCmd(RCC_APB1Periph_USART2, ENABLE);GPIO_PinAFConfig(GPIOA, GPIO_PinSource2, GPIO_AF_USART2); //引脚进行映射GPIO_PinAFConfig(GPIOA, GPIO_PinSource3, GPIO_AF_USART2);GPIO_InitStruct.GPIO_Pin = GPIO_Pin_2|GPIO_Pin_3;GPIO_InitStruct.GPIO_Mode = GPIO_Mode_AF;GPIO_InitStruct.GPIO_PuPd = GPIO_PuPd_UP;GPIO_InitStruct.GPIO_Speed = GPIO_Fast_Speed;GPIO_InitStruct.GPIO_OType = GPIO_OType_PP;GPIO_Init(GPIOA, &GPIO_InitStruct); //初始化引脚A2,A3为复用功能USART_InitStruct.USART_Mode = USART_Mode_Rx|USART_Mode_Tx;USART_InitStruct.USART_BaudRate = 9600; //蓝牙模块的波特率一般为9600USART_InitStruct.USART_Parity = USART_Parity_No;USART_InitStruct.USART_HardwareFlowControl = USART_HardwareFlowControl_None;USART_InitStruct.USART_StopBits = USART_StopBits_1;USART_InitStruct.USART_WordLength = USART_WordLength_8b;USART_Init(USART2, &USART_InitStruct); //初始化串口2的接收端和发送端NVIC_InitStruct.NVIC_IRQChannel = USART2_IRQn;NVIC_InitStruct.NVIC_IRQChannelCmd = ENABLE;NVIC_InitStruct.NVIC_IRQChannelPreemptionPriority = 0x00;NVIC_InitStruct.NVIC_IRQChannelSubPriority = 0x00;NVIC_Init(&NVIC_InitStruct); //初始化中断向量表USART_ITConfig(USART2, USART_IT_RXNE, ENABLE); //开启接收端的中断USART_Cmd(USART2, ENABLE); //开启串口工作
}
STM32——蓝牙模块HC06相关推荐
- android蓝牙串口 hc06,Android手机通过蓝牙模块HC-06连接Arduino串口输出
通过手机进行通信是可以实现很多遥控功能,虽然距离是比较短,一般是10米,但对于我这种新手做测试,比起买一个几百块的多通道遥控器成本要低很多. 实验目的:用Android实现蓝牙连接通过Arduino串 ...
- android 与 蓝牙模块 hc06通信app 开发要点
2016.8.24:这里非常抱歉,做完这个综合训练我个人忙于考研,没能第一时间把这篇博文写完.由于时间已经过了一年,而且我个人正在改行研究NLP,导致我现在对于其中一些要点已经忘记了.之前有些朋友私信 ...
- 蓝牙模块 hc06 linux,HC-06蓝牙模块设置和使用方法
HC-06的设置方法 1.给蓝牙上电 给HC-06上电之后,HC-06的指示灯会不停地闪烁,这个时候就标志着进入AT模式了 2.有线串口连接 这时,可以选择有线串口连接的方式,将单片机和电脑连接起来, ...
- 蓝牙模块 hc06 linux,HC-06蓝牙模块设置与使用
由于项目需要用到Android手机控制单片机,所以用到了HC-06蓝牙模块(以下简称蓝牙模块),找了一些网上的参考资料发现好像不太全,折腾了半天才弄好,因此出此文记录一下,也希望能帮助到有需要的朋友. ...
- stm32蓝牙模块和超声波测距模块
蓝牙 蓝牙概念 蓝牙技术是一种无线数据和语音通信开放的全球规范,它是基于低成本的近距离无线连接,为固定和移动设备建立通信环境的一种特殊的近距离无线技术连接. [1] 蓝牙使当前的一些便携移动设备和计算 ...
- 蓝牙模块 hc06 linux,[Arduino]HC-06蓝牙模块使用小结
简介 蓝牙,顾名思义,蓝色的牙齿,并不能用来咬人,而是一种无线数据传输标准. HC-05和HC-06是现在使用较多的两种蓝牙模块.两者之间的区别是HC-05是主从一体机,既能向自己的'主子'打小报告, ...
- android 蓝牙串口连接不上,安卓手机搜索不到蓝牙模块HC-06,是怎么回事?
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 问题0010:蓝牙串口模块使用的正确步骤 很多人现在都开始使用蓝口模块,利用手机蓝牙或者PC蓝牙进行控制单片机系统.但是很多人一上来就直接把蓝牙模块和单片 ...
- android stm32 蓝牙模块,STM32+USART+蓝牙模块(BT04)
硬件:正点原子战舰V3 蓝牙模块BT04(HC-05也一样的,不过指令不一样) USB转TTL模块 软件:XCOM串口调试助手(PC) 蓝牙调试宝(安卓平台) 昨晚调试蓝牙模块,这个蓝牙模块因为只需 ...
- stm32蓝牙模块通过手机和电脑双向通信
只需将蓝牙连到单片机上,使用usart3(PB10.PB11)作为蓝牙和单片机的数据传输,而电脑的收发数据要是用usart1(PA9.PA10),将数据存入数组中,从而在串口助手中打印值 1.下面是u ...
最新文章
- php session already send by ……
- 【2016-05-19】一次tomcat频繁挂掉的问题定位
- Android 获取 AudioRecord 麦克风音量大小并做选择性发送
- Numpy练习题100题-提高你的数据分析技能
- 其它综合-VMware虚拟机安装Ubuntu 19.04 版本
- 确定最小的正整数n,使得n!的结尾恰好有1987个0
- python调用api接口获取数据_python批量爬取NCBI基因注释并调用谷歌API批量翻译
- RxJs SwitchMap 学习笔记
- vs里面mfc是什么_最近!一大批人正在前往文安,究竟发生了什么?
- Spring的核心模块解析
- GestureDetector学习之左右滑动,上下滑动屏幕切换页面
- python 获取字符串中的字典_python cookies提取——从字符串到字典(一行Python代码)...
- 本地提交到yarn_Flink on Yarn三部曲之三:提交Flink任务
- SQL 递归查询最顶级目录
- python安装-在Python中安装包的三种方法
- OSChina 周二乱弹 ——我FFFF……佛慈悲
- Ubantu搭建深度学习和强化学习环境
- ORACLE 19C 单实例数据库安装
- 文件下载兼容ie,Firefox,chrome
- 笑哭!程序员的23个段子,搞笑又实用!