蓝牙技术在传感器无线网络化中的应用方案
2 模拟实验装置的实现
下面以实验室开发的模拟装置为例来说明该传感器的实现。该装置的结构框图如图2所示,利用前端无线STIM中的MCU定时采集温度传感器中的温度值,经蓝牙无线网络将数据传送至NCAP。NCAP将存放于特定的位置,当有浏览器要查看该数值时,将该数值嵌入到相应的网页程序中,并对整段程序进行TCP/IP封装处理,传送到客户端的浏览器上。
2.1 STIM的实现
STIM中MCU采用的是AD公司的微转换芯片ADμC812。该芯片内有一个8052兼容的微处理器,遵从IEEE1451.2标准,利用芯片ADμC812内部的640B的数据存储器作为可重复写的TEDS存储,利用内部的一个通道12位的ADC实现A/D转换以及通过芯片内的UART串行口实现与蓝牙模块的通信。蓝牙模块选用的是支持点对多点的爱立信ROK101008系列,同时该模块自带射频微带天线。ROK101008蓝牙模块内部结构遵从蓝牙规范1.1,其内部基带控制器同样提供了UART接口。蓝牙模块内部提供了主机控制器接口(HCI)来实现对蓝牙硬件访问的统一接口,结合RS232串口就可以实现主控制器和主机之间在传输层上的数据通信,基带和射频则提供了上层的链接和服务。同时,ADμC812还应完成对温度传感器的初始化、数据采集和处理。
(1)温度传感器DS18B20接口和驱动。
温度传感器选用的是DS18B20,该温度芯片是DALLAS公司生产的一线式数字温度传感器,主要由4部分组成:64位ROM、温度传感器、非挥发的温度报警触发器TH和TL、配置寄存器。ROM中的64位序列号是该DS18B20的地址序列码,ROM的作用是使每一个DS18B20都各不相同,这样就可以实现一根总线上挂接多个DS18B20的目的。主机控制DS18B20完成温度转换必须经过3个步骤:初始化、ROM操作指令、存储器操作指令。其工作流程是:初始化→ROM操作指令→存储器操作指令→数据传输,工作时序包括初始化时序、写时序和读时序。操作时必须先启动DS18B20开始转换,再读出温度转换值。其硬件接口如图3所示。
(2)蓝牙模块ROK101008初始化。
蓝牙模块上电即让其完成初始化工作,使其能与信号范围内蓝牙建立连接通道。这一过程主要通过单片机MCU对蓝牙模块发送HCI指令完成。HCI指令包括指令分组,数据分组和事件分组,具体的格式为:操作码+参数总长+参数0+参数N。
下面给出主从设备间实现ACL数据连接的HCI指令(字符对应指令的操作码,由前10位和后6位两部分组成,括弧内为该指令的参数):从设备上电后实现查询使能进行复位Write_scan_enable(0x03)。主设备发送查为0x00000000000,则建立ACL连接的HCI指令为Creat_Connection(0x000000000000,0x18,0,0,0,0),从设备接收连接请求指令为Accept_connection_request(0x111111111111,0),假定主设备地址为0x111111111111。这样主从设备之间就建立了ACL数据连接。如Inquiry对应操作码为x0001,0x01。具体的HCI指令参见蓝牙规范。
评论