概述:
手机端打开编写的蓝牙通信软件,与单片机端蓝牙串口模块连接,而后,手机通过蓝牙发送读数据命令到单片机,单片机开始读取传感器信息,
将采集到得传感器信息通过蓝牙发送到手机端,手机端软件接收到后,显示。
整体图:
焊接板图:
本项目涉及四个部分。
一、手机端软件
二、单片机端编程
三、外设电路设计
四、手机与单片机通信
下面对四个部分进一步叙述。
1、手机端软件
手机端软件为安卓软件,只需要编写一个普通的蓝牙串口调试软件即可。但在编写手机端按安卓软件时,我利用一年前做安卓手机通
过蓝牙远程控制指纹识别器的源码改进,但却始终不能接收到蓝牙串口模块发送的数据。也就是说,手机可以给下位机发送信息,下位机成功接收,
但是却接收不到下位机上传的信息。我很是疑惑,我以为是蓝牙串口模块的问题,于是换了一个,结果还是一样。我一直坚信去年的源码没有问题,
但是却查不出原因在哪里。于是,我在相应的安卓蓝牙编程的书本上,找到讲解蓝牙部分的章节,按照步骤重新编写带代码,结果双向通信可以调通。
先前的问题正在研究之中,下面是正常运行源码中的部分代码: < 各个代码略 >
(1)蓝牙连接代码
(2)手机蓝牙发送数据代码
(3)手机蓝牙接收数据代码
2、单片机端
单片机采用Arduino开发板,因其简单易学。
单片机端的代码比较简单,是一些对应的传感器采集数据代码和串口通讯代码。
3、外设焊接。
外设有两个传感器,一个蓝牙串口模块。
蓝牙串口模块负责蓝牙通信,传感器负责采集信息。
4、手机与单片机通信
首先,约定一个命令 符,当单片机端接收到手机端发送的命令符时,即开始采集传感器信息,将采集到得信息进行加工,然后传给
安卓手机。安卓手机接收数据后,随即显示出来。
做成此项目用了三天时间,其中两天时间纠结与蓝牙单向通信问题,一直没有眉目。
剩下一天用半天调通手机端蓝牙串口调试软件,半天焊接电路板,写Arduino端程序,连接布线等。
*********************************************************
这个作为一个参考,因为我准备做的是用手机与c51单片机进行蓝牙通讯
所以有些是值得借鉴的,比如:手机蓝牙端,一直不知道怎么搞手机端,这个只要知道方向了,就可以容易在网上找到合适的“蓝牙串口调试软件”,进行适当修改即可
而单片机端应该问题更小,等有空再下手吧。