您的位置:首页 > 编程语言

win 10 电脑与 H C-05蓝牙模块连接方法集合(含k60 CRC 校验代码软件下载地址)

2018-03-18 17:40 537 查看
        在飞思卡尔比赛,有时需要通过蓝牙模块让电脑和小车连接,然后用串口将小车的实时数据发送到电脑,以便调车。但是在蓝牙模块与电脑连接时,因为驱动等原因,容易连接失败。经过网上搜查,与个人及队友试验,总结以下方法。下面方法均为针对如何在蓝牙模块( H C-05)与电脑之间建立连接,后续的串口发送数据,可以参考网上的代码或者函数库。

方法一:用驱动精灵装载驱动

操作过程:

1.下载安装驱动精灵
2.将蓝牙模块的无线适配器插入电脑中(如图,图片来源某宝),驱动精灵将提示安装驱动,驱动安装成功后,串口即可连接


3.用串口助手打开串口(选择对应的com端口号,如何查看端口号方法如下),即可连接上蓝牙并且发送数据。


4.是否连接成功可到蓝牙设置(如图)中查看,显示已连接即为连接成功,下面的方法同理。


问题:容易出现无法安装驱动情况。如下图,这样就需要尝试方法二或方法三。(如果幸运,这个方法应该是最方便的)
优点:简单粗暴,无复杂配置过程。
缺点:适用的电脑环境少。

方法二:win10电脑自动装驱动

操作过程:

1.在Cortana中搜索”控制面板“,点击打开
2.点击”网络和Internet“,选”网络和共享中心“,再选”更改适配器选项“。


3.这时候如果你电脑开启了蓝牙,双击图中的蓝牙图案,选右上角的添加设备




4.这时,你的蓝牙模块开启(一般只需要将vcc、gnd、txd、rxd四个脚插入单片机对应管脚)后,你便会搜到一个蓝牙设备。搜索完成后,选择你的蓝牙模块,点击下一步,然后会提示你要输入密码,输入1234(试过跳过输入密码这步,不过好像会连接失败,大家可以自己尝试),然后会系统会自己安装驱动。
5.这时回到方法一中,查看串口的窗口,查看是否有hc05的串口,没有,则手动添加后,记住传出端口号,这时候打开串口助手,使用串口连接即可。
6.因为这个添加串口是系统自己添加,我们没办法选择串口,而在使用VisualScope示波器时,如果不是破解版,只能用com1串口号。这是我们要修改串口号。修改方法如下图。在任务栏最左方的windows标志点击鼠标右键打开设备管理器,右键图中的自己蓝牙模块传出串口号,选中高级,即可修改串口号。




问题:可能出现无法安装驱动情况。也会出现部分电脑搜索不到蓝牙模块
优点:无需适配器,不用安装第三方如驱动精灵的驱动。
缺点:存在部分不适用的电脑。

方法三:千月蓝牙驱动法

操作过程:

1.下载安装千月蓝牙软件。注意:安装时,点击安装包用管理员权限打开安装
2.安装好后,用管理员权限打开。
3.然后点击中心的图案,搜索设备,这是会搜索到一堆的设备,都是附近开了蓝牙的设备,而hc05的设备会显示为hc05(也有直接显示20:15:02:05:55:43,这是这个蓝牙模块的唯一识别号,不确定不同模块是否不同,但应类似)。这时候右键点击配对,会提示输入配对密码,一般是1234,输入后会配对成功,然后右键,点击搜索服务,如果模块正常开启,会搜索到一个服务,点击连接即可连接,连接成功后,蓝牙图标会变绿色。
4.由于安装问题或别的不明问题,软件可能会出错,出现无法搜索服务无法启动蓝牙的情况,在确认蓝牙模块正常开启后,可以尝试重启或重装软件。
5.查看串口号和修改串口号方法可以参考方法一,也可以到设备管理器查看。
问题:可能出现无法打开情况。也会出现部分电脑搜索不到蓝牙模块、蓝牙服务,初次使用软件容易出错。
优点:蓝牙连接成功率高,而且不需要配置太多其他设置
缺点:会把系统自带蓝牙图标删掉,同时需要安装收费(第一个月免费,可以尝试下载破解版或者重复安装)的第三方软件

最后附上软件的连接和crc校验代码
串口调试助手和虚拟示波器:链接:https://pan.baidu.com/s/1cPKhJidn6hwJjJzFw8kknw 密码:z025
千月官方下载网站:http://www.bluesoleil.com.cn
crc校验代码如下:
/*******************************************************************************
*  @brief      CRC_CHECK函数
*  @note       直接放入main中while(1)里执行

对发送的数据惊醒crc校验:用于虚拟示波器

*  @warning    18/3/11 v4.0
******************************************************************************/
unsigned short CRC_CHECK(unsigned char *databuf,unsigned char CRC_CNT)
{
unsigned short CRC_Temp;
unsigned char k,j;
CRC_Temp = 0xffff;

for(k=0;k<CRC_CNT;k++)
{
CRC_Temp^=databuf[k];
for(j=0;j<8;j++)
{if(CRC_Temp&0x01)
CRC_Temp=(CRC_Temp>>1)^0xa001;
else CRC_Temp=CRC_Temp>>1;
}
}
return(CRC_Temp);
}
如果不想用那个虚拟示波器可以不用crc校验。其他的函数参考k60库函数
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: