蓝牙HCI-UART主控制接口的FPGA设计与实现
HCI 接口通信过程包括如下几个部分:
1)蓝牙系统初始化(initial);
2)系统准备好后,进入查询状况(inquiry);
3)建立数据连接(creat_connection);
4)数据传输(transmit);
5)断开连接(disconnect);
首先,蓝牙主从设备进行初始化;接着蓝牙的主设备在范围内用Inquiry 命令分组查找其他的蓝牙设备。然后,主设备会收到对应的蓝牙从设备的应答信息,其包括有事件分组包和从机地址包。之后,蓝牙主设备向从设备发送Create_Connection 的命令分组,然后,主设备会收到一个连接完成的事件分组 Connection_Complete,表示两机之间已经建立了连接。这样,两个蓝牙设备之间就可以进行数据的通信,即建立连接。当数据传输完成后,断开主从设备之间的连接,系统重新复位,一个数据传输过程就结束了。
4 仿真与验证
本设计采用分模块设计,在 Quartus II 9.0 下完成设计和综合,且经过Modelsim*a 的仿真验证。 同时在搭建的硬件通信测试平台下测试过,证明该设计确实可行。 5 5 结束语
HCI 是实现蓝牙协议栈时必须实现的一个部分。它是蓝牙上层协议控制底层硬件的接口,首先要根据具体应用的需要选择合适的传输层,并尽可能的为上层协议提供友好的API,在硬件实现中,UART 传输层具有其他传输层无法比拟的优点。
本文创新在于从工程实际开发角度出发,提出了一种基于FPGA的蓝牙HCI-UART 全硬件实现方式,缩短了开发周期,降低开发成本,具有一定的工程参考价值。
评论