基于STM32的北斗终端通信模块设计
息发送出去,也能将蓝牙接收的信息转成串口或是USB输出。通过AT指令,可将该蓝牙芯片设置成主机模式和从机模式,当芯片处于主机模式时,可直接与从机模式的芯片相连。当芯片处于从机模式时,则可与手机蓝牙、电脑蓝牙等带有蓝牙功能设备相连,但处于从机模式的芯片之间不能互联。
2.4 北斗终端用户信息解析处理模块
北斗终端用户信息解析处理模块,主要负责发送特定的北斗指令和对应的北斗信息。该模块采用基于ARM Correx—M3的STM32F103RBT嵌入式处理器作为主控芯片,该芯片最高可工作在72 MHz频率,工作电压为2.0~3.6 V,拥有GPIO、UART、ADC等丰富的外设接口,具备优异的实时性能、杰出的功耗控制和良好外设性能等诸多优点,更重要的是ST公司提供了STM32系列处理器固件库函数,降低了该芯片开发难度,大大缩短了产品开发周期。
STM32F103RBT芯片将用户按键外部中断选择发送的北斗指令,加上北斗通信的报文帧头信息,长度信息和校验信息等,通过蓝牙通信模块传输给FDBD3111北斗RDSS射频基带模块调制放大,最后输送到北斗天线上发送出去;同时,该芯片可读取并解析蓝牙通信模块接收的北斗用户信息,最后显示在TFT液晶屏上,液晶背景图片存储在SD Card中。系统工作框图如图3所示。
3 北斗终端系统软件设计
北斗信息处理模块是北斗终端的核心部分,它将北斗终端的各个组件以及功能模块贯穿在一起,通过北斗信息处理模块运行的系统软件来协同北斗终端的硬件模块以及软件功能模块共同实现北斗终端的各项功能以及协议要求。系统软件总体框图如图4所示。
3.1 蓝牙通信模块
该模块完成FDBD3111北斗射频基带模块处理的北斗信息与蓝牙通信信息出传输的转换。由于蓝牙通信功能模块式基于CSR蓝牙芯片BC417的接口配置,该芯片是集成专用的蓝牙芯片,芯片内部已固化了串口或是USB转蓝牙的程序,通过特定指令配置即可设置工作模式、数据发送接收波特率等参数。这种指令叫AT指令,AT即Attention,该指令一般应用于终端设备与PC应用之间的连接与通信。通过PC机上位机软件发送AT指令,从而对蓝牙模块工作模式及工作参数进行设置。
3.2 北斗信息处理模块
该模块是北斗终端软件的重要组成部分,需要完成发送和接收北斗卫星通信信息。该部分主要是基于STM32F103RBT处理器的嵌入式软件设计,需要完成硬件驱动的程序设计、北斗信息包的解析处理以及北斗信息显示界面的设计。
按照北斗通信协议的数据帧格式,可以解析出的北斗数据信息,在STM32串口中断函数中实现这一解析的过程,即不断的判断接收数据是否与北斗数据帧格式相吻合,通过最后接收到的数据校验来判断接收数据帧正确性。其具体实现思想如下:
(1)判断是否接收到帧头信息,若是则继续接收,且已接收字符数加1。
(2)判断是否接收到与帧头对应的北斗数据的长度Len,若是则继续接收,且已接收字符数加1。
(3)接收的都是北斗的信息内容,可直接判断已接收数据长度是否等于Len-1,若是则说明接收到最后一个校验信息,则要将前面接收的数据累加,判断其和是否等于校验信息;若长度不等于Len-1,则继续接收。
(4)若接收数据完毕且正确,则将接收成功的标志位置1,然后读取对应的北斗信息,显示在液晶屏上。
(5)只要接收数据的帧头或是长度信息不匹配,或是最终校验和错误,则接收缓冲区都要清除重新接收,对应变量也都清零重新开始计算。
4 结语
我国自主研发的北斗卫星导航系统打破了GPS、GLONASS等卫星导航系统在该领域的垄断地位,具备了精密授时、快速定位、高可靠导航等优点,而独有的短信通信功能使其应用更加广泛。北斗终端作为北斗导航系统的重要组成部分引起了广泛关注,相信在不久的将来北斗卫星导航会搭配完善的服务,以轻巧好用,实惠便捷的姿态融人老百姓的生活中。
- 低成本无线WiFi音乐播放系统设计(09-25)
- 密不透风的隐私“墙”:基于STM32F411的蓝牙通讯加密方案(07-11)
- 基于STM32的无线通讯终端系统设计(07-02)
- 基于STM32的无线传感器网络系统设计(09-03)
- 基于FPGA和STM32的CAN总线运动控制器设计(04-02)
- 一种基于RFID技术嵌入式矿山安全监控系统设计(04-24)