KL25开发板利用串口蓝牙与PC通信
来源:互联网 发布:mysql的casewhen 编辑:程序博客网 时间:2024/04/26 02:53
KL25开发板芯片本身支持三个串口,uart0,uart1,uart2。其中uart0不太一样,在数据手册里面单独一章介绍;而uart1和uart2则是一样的。
我所使用的串口蓝牙模块是BC04,支持主从两种模式,通过硬件连接来决定是主模式还是从模式,波特率固定为9600。所以,要想与之通信,主机也必须是9600波特率。
这个模块既可以连在PC上,也可以连在开发板上,都可以用。不过它本身是TTL电平,如果要连上PC,需要转成232电压,然后交叉连接接在PC串口上。如果接单片机,则可以直接接在单片机的串口上,当然RXD和TXD也要交叉连接。
我们看一下引脚介绍:
这个介绍有点误导人。该模块的RXD引脚应该接单片机的TXD引脚,交叉连接才对。我这里使用的KL25的串口1连接这个模块。
我的KL25是3.3V供电,接上这个BC04串口蓝牙,设置为从模式。所以只连了3.3V,GND,TXD与RXD四个引脚。这个模块只要一通电,就会有一个LED不停闪烁,意思是等待蓝牙连接。
主机这端,我买了一个USB的蓝牙适配器,很便宜才12块钱。插上去之后,win7自动就能识别,驱动都不需要。win7自带有蓝牙传输软件,但是明显控制能力太差,所以我下载了最强悍的蓝牙工具:IVT Bluesoleil。
我们打开这个软件,然后打开本机的蓝牙,再搜索,就可以搜到单片机上的蓝牙。单片机上的蓝牙只要通电就会开启,不需要你手动打开。默认名称为:YFROBOT。
可以看到,主机蓝牙(中间黄色的圆代表它)支持九种服务。包括虚拟串口,传图片,组网等等。
而单片机的蓝牙只有一种服务。我们右键单击YFROBOT,选择“搜索服务”,会发现它只支持串口。右键单击串口图标,选择连接。两者就会连上,此时蓝牙模块的LED停止闪烁,进入常亮状态。这是在我笔记本上面的情况,实际在我的台式机上却还需要输入口令,默认是1234,才能连接上。台式机上是盗版win7,可见用起来还是不太方便。
配对连接之后,会有一个提示,指示该连接是基于COMM6(我的台式机是COM7),所以COMM6就是这对蓝牙的等效通信接口了,它实际上是PC给他虚拟出的一个接口。我们打开串口调试助手,波特率设为9600,打开串口6,就可以调试蓝牙了,看它是否正常工作。
连接上之后的蓝牙,其实就跟串口毫无二样,所以只需要将其当作串口开发就可以了。下面是KL25单片机的一个测试代码:
int main()
{
char count=0 ;
uart_init(UART1_BASE_PTR, 24000, 9600); //BUS时钟为24KKHZ
while (1)
{
uart_putchar( UART1_BASE_PTR,count); //单片机串口1发送
count++;
Delay1Us(20);
}
return 0;
}
烧进单片机之后,剩下的就是在PC端用串口调试助手打开串口6,就可以接收数据了。
需要注意的是:蓝牙通信模块连接好后,蓝牙模块在单片机上接的是串口1,所以单片机上要对串口1发送数据才对;而主机这边,蓝牙连接被虚拟为串口6,所以串口调试助手应该打开串口6接收数据。
- KL25开发板利用串口蓝牙与PC通信
- PDA蓝牙串口与PC蓝牙串口通信
- 嵌入式开发笔记_开发板与PC串口通信
- PC与串口通信
- PLC与PC串口通信
- 单片机-串口与PC通信
- Delphi开发环境下利用Spcomm控件实现PC机与单片机之间串口通信的方法
- 利用开发板上的RS485模块与PC机的串口通讯
- FPGA与PC串口自收发通信
- PC与单片机串通(串口通信)
- 51单片机与PC进行串口通信
- Android通过串口与PC通信
- 51单片机与PC串口通信
- 单片机与PC机多机通讯 串口通信
- 手机通过蓝牙串口与arduino通信
- Android与蓝牙串口模块通信
- Arduino与蓝牙的串口通信
- android蓝牙开发-与蓝牙模块通信
- 当csdn出现这个图,你们会做何感想
- 2012华为校园招聘上机试题大全及答案(软件)
- 笔试题目收集(4)
- Java中弹出对话框中的几种方式
- 修改Tomcat的网站根目录
- KL25开发板利用串口蓝牙与PC通信
- 用autoconf和automake自动生成makefile
- 头文件string与string.h的区别
- 简单算法学习一
- html学习笔记
- sencha touch 2 常用组件
- “解决问题”与“消灭问题”
- GoAsm 定义unicode char
- poj 2049 Finding Nemo 建迷宫预处理+优先队列bfs