是近年来发展迅速的短距离无线通信技术,可以用来替代数字设备间短距离的有线电缆连接。利用蓝牙技术构建数据采集无线传输模块,与传统的电线或红外方式传输测控数据相比,在测控领域应用篮牙技术的优点主要有:

1.采集测控现场数据遇到大量的电磁干扰,而蓝牙系统因采用了跳频扩频技术,故可以有效地提高数据传输的安全性和抗干扰能力。

2.无须铺设线缆,降低了环境改造成本,方便了数据采集人员的工作。

3.可以从各个角度进行测控数据的传输,可以实现多个测控仪器设备间的连网,便于进行集中监测与控制。

系统结构原理

本课题以单片机和蓝牙模块ROK 101 008为主,设计了基于蓝牙无线传输的数据采集系统,整个装置由前端数据采集、传送部分以及末端的数据接受部分组成(如PC机)。前端数据采集部分由位于现场的传感器、信号放大电路、A/D转换器、单片机、存储器、串口通信等构成,传送部分主要利用自带微带天线的蓝牙模块进行数据的无线传输;末端通过蓝牙模块、串口通信传输将数据送到上位PC机进一步处理。

AT89C51单片机作为下位机主机,传感器获得的信号经过放大后送入12位A/D转换器AD574A进行A/D 转换,然后将转换后的数据存储到6264中。下位机可以主动地或者在接收上位机通过蓝牙模块发送的传送数据指令后,将6264中存储的数据按照HCI-RS232传输协议进行数据定义,通过MAX3232进行电平转换后送至,由篮牙模块将数据传送到空间,同时上位机的蓝牙模块对此数据进行接收,再通过MAX3232电平转换后传送至PC机,从而完成蓝牙无线数据的交换。

数据采集系统的下位机电路设计

信号放大电路主要采用高共模抑制比放大电路,它由三个集成运算放大器组成,本课题选用的集成运算放大器TL082具有高精度、低漂移的特性。

AT89C51与A/D转换器AD574A及外扩数据存储器6264的接口示意图。AT89C51通过地址译码器74LS138、地址锁存器74LS373,对A/D转换器、数据存储器进行地址选择。

蓝牙模块与AT89C51串口之间采用蓝牙模块提供的RS232传输层接口实现通信,需要外接电路实现电平转换,由于蓝牙模块需3.3V供电,因此这里选用MAX3232芯片作电平转换芯片。另外,为了将5V输入电压转换为3.3V电压,选用7301为蓝牙模块供电。AT89C51通过MAX3232与蓝牙模块的接

数据采集和蓝牙通信的软件实现

本课题的软件主要包括两部分:数据采集和蓝牙通信,采用汇编语言和C51混合编程。为了保证数据采集的实时性,数据采集部分采用汇编语言编程,单片机采用定时采样,具体选择定时方式2,定时为100微秒,定时结束后,进行A/D转换,单片机采用查询的方式读取AD574A的转换结果,然后将转换后的数据存至外扩存储器6264中。另外,串行口工作在方式1,波特率为9600bps。蓝牙通信部分采用C51编程,主要实现利用主机控制器接口HCI层建立点对点的蓝牙异步无链接数据传输通道,当两个蓝牙模块链路建立成功后,就可以按照蓝牙规范规定的HCI数据分组格式收发数据。

两个蓝牙设备间进行数据通信是通过HCI分组实现的,HCI作为蓝牙软件协议堆栈中软硬件之间的接口,为上层提供了访问和控制蓝牙硬件的统一接口。HCI是通过分组(Packet)的方式来进行信息交换的。HCI分组有三种类型:指令分组(Command Packet)、事件分组(Event Packet)和数据分组(Data Packet)。

主机与蓝牙模块用指令--应答方式进行通信,主机向主机控制器发送指令分组;主机控制器执行某一指令后,大多数情况下会返回给主机一个指令完成事件分组(Command Complete Event Packet),该分组携带有指令完成的信息。有些分组不会返回指令完成事件,而返回指令状态事件分组(Command Status Event Packet)用以说明主机发出的指令己经被主机控制器接收并开始处理。如果指令分组的参数有误,返回的指令状态事件分组就会给出相应的错误代码;数据分组分为异步无连接(Asynchronous Connectionless, ACL)数据分组和同步面向连接(Synchronization Connection Oriented, SCO)数据分组两种。在本课题中,仅涉及到数据通信,而没有涉及到语音通信,因此建立的是ACL链路。

单片机与蓝牙模块的软件接口,就是指单片机如何通过软件实现向蓝牙模块发送HCI指令,蓝牙模块又如何通过软件向单片机返回HCI事件以及两者之间如何实现数据传输。单片机和蓝牙模块间通信的过程是通过键入HCI指令,观察收到的HCI事件。当两个蓝牙模块建立链路成功后,就可以按照蓝牙规范规定的HCI数据包格式收发数据。

在通过蓝牙模块进行数据通信时,首先要进行蓝牙模块的初始化和HCI层流控设置。典型的蓝牙模块间的ACL数据通信流程有6个步骤:蓝牙模块自身初始化Init Bluetooth( )、HCI流量控制设置Flow Set( )、查询Inquiry( )、建立连接Great Connection( )、进行数据通信Data_ Transmit(Data Length, HCI_ Number)和断开连接Disconnect()

初始化程序主要是单片机对蓝牙发送一系列命令分组。单片机每向蓝牙发送一个HCI命令分组就要接收蓝牙返回的事件分组,判断命令执行的情况。若返回事件分组不正确就要重新初始化蓝牙,直到完全正确。蓝牙设备在初始化完成之后,通过Set_ Host_ Controller_ To_ Host_ Flow_ Control指令打开主机控制器到主机的流量控制,并通过Host Buffer Size指令来对流量控制进行配置,包括数据分组的长度等。此后,主设备查询周围的蓝牙设备,找到之后即可向其发出建立连接指令,建立ACL连接。成功建立连接之后就可以进行数据通信。通信完成后,主设备和从设备都可以发出断开连接的命令Disconnect。在上述过程中,查询过程不一定存在,所以这只是一般的流程模型。如果在任何一条指令分组发出后,返回错误的事件分组,则指令需重发直到正确为止[5]。本课题中,下、上位机的蓝牙模块间进行数据传输的程序流程图分别如图4、5所示。

随着数据采集技术的不断发展,将蓝牙技术与数据采集技术相结合构建出的数据采集蓝牙无线传输系统具有性能高、体积小、功耗低、抗干扰能力强、数据传输速度快、安装维护方便适用于移动设备和便携设备等优点。本课题所设计的数据采集,有效的实现了对现场数据的采集和短距离内数据的无线传输,对于类似的数据采集系统的设计具有很好的借鉴意义。

基于的无线数据采集系统可以在短距离内用无线接口来代替有线连接,这对于需要采集大量数据的测控场合非常有用,在采集数据时,本系统就可以迅速地将所采集到的数据传送到附近的数据处理装置(例如PC、笔记本电脑)中,不仅避免了在现场铺设大量复杂连线以及对这些接线是否正确的检查与核对,而且不会发生因接线可能存在的错误而造成测控的失误。

单片机蓝牙烧录_单片机和蓝牙模块的完美结合相关推荐

  1. 单片机蓝牙烧录_蓝牙模块与单片机如何连接?

    蓝牙模块与单片机如何连接? 首先我们来看看蓝牙模块 蓝牙模块HC-05: TX连接单片机P3.0口,RX连接单片机P3.1口. 在蓝牙模块连接到单片机上前,首先通过USB-TTL转接器,连接到电脑上后 ...

  2. 单片机蓝牙烧录_怎么样蓝牙模块给单片机烧程序?

    当年刚入坑那会,我也想过这个问题,用的单片机是STC15F2K60S2,于是乎我用蓝牙模块进行了测试,发现失败了,那会懂得也不多,也没进行什么深入研究,再后来学了STM32,发现这玩意能支持IAP,于 ...

  3. 单片机蓝牙烧录_「51单片机」蓝牙从机基本使用方法

    HC-06从机模块基本使用方法 一.蓝牙和单片机怎么连接 如图,GND和VCC就接地和电源 RXD和TXD分别接单片机的RXD和TXD RXD:接收数据 Receive(rx) Data TXD:发送 ...

  4. 单片机蓝牙烧录_实现蓝牙HC-05、06与单片机的连接及与手机通信

    蓝牙(Bluetooth):是一种无线技术标准,可实现固定设备.移动设备和楼宇个人域网之间的短距离数据交换(使用2.4-2.485GHz的ISM波段的UHF无线电波).蓝牙技术最初由电信巨头爱立信公司 ...

  5. 手机连接蓝牙扫码枪_原来手机蓝牙的隐藏功能这么多,你不会还只用来连接耳机吧?...

    大家好,这里是"黑科技中心",今天小黑所说的是关于我们手机蓝牙的功能.手机蓝牙是我们日常生活中经常需要用到的,许多人用蓝牙,仅仅只是连接蓝牙那么简单,其实我们手机蓝牙的功能和用途是 ...

  6. 单片机蓝牙初始化_单片机程序那些事

    最近在做一个项目的时候,需要进行增量式固件升级,因为固件特别大,一共有900+K,通过蓝牙4.0接口升级,这个数据量非常大,不可能每次全部更新,我们只需要将修改过的函数更新进去就好了,那么就必须要将函 ...

  7. arduino 蓝牙示例_(转载)HC-05蓝牙模块使用教程[Arduino]

    BlueTooth HC-05蓝牙模块使用教程 模块简介 嵌入式蓝牙串口通讯模块(简称蓝牙模块)具有两种工作模式:命令响应工作模式和自动连接工作模式. 命令响应模式(AT模式) 首先按住蓝牙模块上的复 ...

  8. 太原工业学院单片机课程设计_单片机智能小车毕业设计论文

    一.单片机智能小车毕业设计论文 已录入:205499篇 热门排序 推荐排序 此频道包含与小车和单片机和毕业设计相关的例文,免费为你学单片机毕业设计论文提供有关参考文献. [小车语音](沈阳师范大学物理 ...

  9. 寻路机器人单片机程序示例_单片机典型案例开发(四)

    一.基于STC单片机的智能LED路灯控制器设计本文引用地址:http://www.eepw.com.cn/article/171408.htm 摘要:为了充分节约能源,提高路灯控制系统的智能化,介绍了 ...

最新文章

  1. PyDev的使用-高效Py编程
  2. 函数可重入性及编写规范
  3. Proxy(代理)--对象结构型模式
  4. 游戏云平台怎么开发_百度“云手机”与咪咕快游共建国内最大云游戏平台
  5. SAP MM t-code 全
  6. 百款 TWS蓝牙耳机 蓝牙天线拆机分析与仿真
  7. FFmpeg MP4文件提取音频文件
  8. 你别不信,安卓机用户才是苹果机涨价的最大受害者
  9. 三点估算法评估开发工作量
  10. sendcloud php,Sendcloud的x_smtpapi具体如何定义?
  11. 我劝你不要再留QQ邮箱了
  12. python给女朋友_Python 给女朋友道歉的一天
  13. 淘淘商城业务--加油
  14. Java解决杨辉三角问题(这里提供了两种方法)
  15. 英文写作中单词的用法
  16. 实习随笔3( 辗转,终到,这一天)
  17. 《软件设计的哲学》(十九)【代码应该是显而易见的】
  18. (全解析)屏幕尺寸,分辨率,像素,PPI之间到底什么关系?
  19. H5培训第一天基础知识总结
  20. 超声波相关——抗干扰

热门文章

  1. 暗影格斗3显示无服务器,暗影格斗3暗影技能闪击怎么用,轻松就能使用
  2. 怀旧服第二阶段术士毕业装备
  3. 智慧水务之排水系统物联网监测
  4. 【BZOJ3217】ALOEXT-暴力重构线段树-替罪羊树-Trie树-树套树-10k大代码(+数据生成器)...
  5. echarts实现2d柱状_堆叠柱状图
  6. iPhone 6将于10月17日中国大陆发售 5288元起
  7. html5仿发送说说,适合发朋友圈可爱又有趣的说说 朋友圈必备秒赞文案
  8. 2022年南昌市施工员(装修装饰)考试练习题及答案
  9. 《让你少奋斗10年的工作经验》引出的思考
  10. 基于Travis CI实现 Hexo 在 Github 和 Coding 的同步部署