等待蓝牙连接完成后,便可以进行数据传输。在蓝牙间的数据传输是由蓝牙模块自动按照蓝牙协议栈的要求进行的,而在智能电极端从微控制器到蓝牙模块以及在Android终端从蓝牙设备到应用程序的数据传输都是按照URAT异步串口通信方式进行的数据传输。在设计中所设置的数据传输格式是以一个字节长度为一帧来传输的,其中有7位数据位和1位奇偶校验位共同组成。所以接收端所接收的数据都是以字节为单位来存储的。在这个通信系统中,还加入了对接收数据的另一数据检错方案。数据的收发并不是将采集数据直接转换成二进制的串行数据进行传输的,而是将这些数据转换成所对应的ASCII码再转成串行数据再进行数据的发送,这样在接收端接收到数据后,会将这些数据转为ASCII码,如果这些ASCII对应的不是数字或是已超出ASCII码范围,则认为是错误的数据,将其丢弃。这样做了之后,结合奇偶校验,只有低三位同时有两位都传输错误的数据不能被监测出来,出现这种情况的概率比较小,并且蓝牙传输距离短,传输环境并不算恶劣,这样的检错能力已经足够了。数据接收过程也是一个阻塞调用的过程,所以同样需要一个单独的线程来完成。
欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) | Powered by Discuz! 7.0.0 |