版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、U-Blox 芯片 GPS 模块的 UBX 协议析与配写代码的 TobemU-Blox 支持 、 三协议,程序中使用的是 UBX 议,其协议格式如 下图所示:需要注意的是对数据类型大一个字节的数据存储使用的是小端模式故行数据 读写时,先低字节,后高字节。协议格式后两个字节的校验码按如下方式进行求取:GPS 进使用前需进行初始配置主要涉及串口通信配置将置写入 eeprom 中GPS 的更新频率、要进行转换读取的数据包等:switch(packet_count)case 1:/ GPS UBX 38400packet_count+;break;case 2:/在eprom packet_count
2、+;break;case 3:/ gps为hz为hz,采 utcpacket_count+;break;case 4:UBX_CFG_MSG_Encode(NAV_POSLLH); /packet_count+;break;case 5:UBX_CFG_MSG_Encode(NAV_STATUS); /GPS_Encode_Index = 0;packet_count+;break;case 6:UBX_CFG_MSG_Encode(NAV_SOL); /packet_count+;break;case 7:UBX_CFG_MSG_Encode(NAV_VELNED); /packet_cou
3、nt+;break;GPS 的置以命令形式进行要参考手册中的 CFG 的关指令面配置 UBX 协 输出为例,进行 GPS 配命令的说明:/void UBX_CFG_PRT_Encode(u16 Protocol_out,u32 Baudrate) / 四个write_two_byte_to_GPS_Encode_Buffer(0X0001); / write_two_byte_to_GPS_Encode_Buffer(0X0000);write_two_byte_to_GPS_Encode_Buffer(0X08D0);write_two_byte_to_GPS_Encode_Buffer(0
4、X0000);/write_byte_to_GPS_Encode_Buffer(Baudrate%256);write_byte_to_GPS_Encode_Buffer(Baudrate%(0XFFFF+1)/256);write_byte_to_GPS_Encode_Buffer(Baudrate%(0XFFFFFF+1)/(0XFFFF+1);write_byte_to_GPS_Encode_Buffer(Baudrate/(0XFFFFFF+1);write_two_byte_to_GPS_Encode_Buffer(0X0001); /UBXwrite_two_byte_to_GPS
5、_Encode_Buffer(Protocol_out); /write_two_byte_to_GPS_Encode_Buffer(0X0000);write_two_byte_to_GPS_Encode_Buffer(0X0000);前面说到数据类型大于一字节的数据按小端模式进行存储因先写低字节后写高字 节:/写 2 void write_two_byte_to_GPS_Encode_Buffer(u16 value)GPS_Encode_BufferGPS_Encode_Index+=value; /GPS_Encode_BufferGPS_Encode_Index+=(value8);
6、 / GPS 的率配置如下,根据手册,导航频率参数设置似乎不对:UBX_CFG_RATE_Encode(250,250,Time_source_UTC); /gps 4hz 4hz utc 程序中使用串口 7 中断进行 GPS 数的接收,一旦还接收到数据,就将定时器 7 的数清 零,定时器 7 设置为 100ms 中断,假如 100ms 内没有数据接收到,且接收缓冲区的首地址 内容非空,则认为接收完成。涉及的两个中断分别如下:串口 中:void UART7_IRQHandler(void)static u16 TX_Send_Count=0;u8 USART7_Receive_date;if(
7、UART7-SR&(1DR;if(GPS_UART7_RX_STA&0X8000)=0)/完 -1)TIM_SetCounter(TIM7,0); /if(GPS_UART7_RX_STA=0) /TIM_Cmd(TIM7, ENABLE); /GPS_BufferGPS_UART7_RX_STA+=USART7_Receive_date;elseGPS_UART7_RX_STA = 0; /包if(UART7-SR&(17) /USART_ClearFlag(UART7,USART_FLAG_TC);if(GPS_UART7_TX_STA&0 x8000)!=0) /,USART_SendD
8、ata(EVAL_COM7,UART7_Send_BufferTX_Send_Count+);if(TX_Send_Count=UART7_TX_DATA_LEN) /完USART_ITConfig(EVAL_COM7, USART_IT_TXE, DISABLE); /TX_Send_Count=0;GPS_UART7_TX_STA=0; /if(USART_GetFlagStatus(UART7,USART_FLAG_ORE)=1) /USART_ReceiveData(UART7);定时器 中:void TIM7_IRQHandler(void) /100msif (TIM_GetITStatus(TIM7, TIM_IT_Update) RESET) / if(GPS_Buffer0!=0)GPS_UART7_RX_STA|=0X8000; / 100ms USART_ITConfig(EVAL_COM7, USART_IT_RXNE, DISABLE);/再TIM_ClearITPendingBit(TIM7, );TIM_Cmd(TIM7, DISABLE); /gps_update_time = Time_micros();然后对接收到的数据进行轮询,当找到协议的帧头匹配时,则对数据进行拆解。 for(index=0;indexsizeof(GPS_Buffer)
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 二零二四年度海上工程船舶租赁光租赁合同(04版)
- 二零二四年度能源供应合同模板
- 加工合作合同的技术规范
- 培训班合作合规协议
- 转让协议与合同的法律关系探讨
- 农村自建房买卖合同的贷款政策
- 住宅装修工程分包协议
- 沥青路面施工安全措施落实购销合同
- 精密机械转让协议书
- 甲方购销合同操作
- 第八章食品良好生产规范(GMP)
- 2025届新高考生物-命题趋势分析及备考策略-课件
- NBA球星库里课件
- 2024届高考英语完形填空专题之答题技巧教学设计
- 人教版数学五年级上册《解方程(例4、5)》说课稿
- 2024-2029年红色旅游行业市场发展分析及竞争格局与投资战略研究报告
- 2024年平面设计师技能及理论知识考试题库(附含答案)
- 3DMAX基础建模智慧树知到答案2024年四川文化产业职业学院
- 2024年《军事理论》考试题库附答案(含各题型)
- MOOC 马克思主义基本原理-华东师范大学 中国大学慕课答案
- 维保技术服务方案
评论
0/150
提交评论