Ublox-MAX-M8接收机配置和协议的获取

方法一:使用官方的Ucenter软件进行配置,但是掉电后会失效,重新开机为默认设置,使用BBR也只能保存约半小时左右,且MAX-M8没有SPI Flash接口。I2C接口在第七代之后不支持EEPROM存储配置,只能用作通信。Ucenter链接 u-center | u-blox

方法二:使用单片机等外设在上电时进行初始化配置。在初始化配置时需要知道具体的协议,我使用的MAX-M8型号的数据手册链接如下https://www.u-blox.com/zh/ubx-viewer/view/u-blox8-M8_ReceiverDescrProtSpec_UBX-13003221?url=https%3A%2F%2Fwww.u-blox.com%2Fsites%2Fdefault%2Ffiles%2Fproducts%2Fdocuments%2Fu-blox8-M8_ReceiverDescrProtSpec_UBX-13003221.pdf  这个数据手册长达476页,看起来很头疼,具体的配置协议在Interface Description->UBX Protocol->UBX-CFG(0x06)中。以配置串口为例,即UBX-CFG-PRT(0x06 0x00),对应章节为32.10.25.2,我们可以找到如下表格

其中Message Structure就告诉我们配置协议的具体内容了,首先是比较固定的Header,Class,ID等,然后是具体发送的字节长度,payload应该指的是具体每一个字节的内容,最后是数据校验位,下面来看payload的具体内容。

 

 以其中的mode为例,在向下看数据手册会发现有Bitfield Mode,Mode这一部分一共有四个字节,即32位,Bitfield中就定义了每一位作用,比如我要使用8位传输,无校验,1个停止位,从nStopBits即第13位向右以此设置为001000 11000000,转化为16进制即0x08 0xc0,对于reserved位置,可以随便设置,但要注意校验位的值。由于是小端模式,发送数据时要将0xC0放在前面,0x08放在后面。我还是发现有些太麻烦了,还得写个小程序计算校验位的值,并且这20个字节每个都需要这样配置,很浪费时间,下面介绍一个简单方法。

下面这种方法需要用到ucenter软件,串口调试助手,两个USB转TTL模块杜邦线几根。

1将两个USB转TTL模块都接到电脑上,下面用1和2来表示,将1和2的TX,RX交叉连接,GND也接到一起。

2打开ucenter和串口调试助手,在ucenter中选择1对应的COM口,在串口调试助手中选择2对应的COM口(两个可以交换),注意将两个软件的波特率设为相同的,一般为9600,记得打开串口。

3打开ucenter,点击View->Configuration View,还是以串口配置为例,找到PRT

 

 选择自己想要的参数,比如波特率设置为115200,点击左下角Send按钮,在串口调试助手上就能看到ucenter发出的信息了,记得在串口调试助手上选择16进制显示,可以多点几次send按钮,确保数据的准确性。

4串口调试助手接收到的信息有很强的规律性,开头一般都是B5 62,将信息分段就能获得配置信息了,接收到的信息中较短的信息一般没用,注意筛查。

5将接收到的配置信息设置成数组,使用STM32串口发送,就能够配置成功了。

ublox-m8n-gps模块是一种高精度的GPS定位模块,适用于各种导航和定位应用。而STM32F103是一种常用的ARM Cortex-M3微控制器,具有良好的性能和可靠性。 在使用ublox-m8n-gps模块和STM32F103控制器时,可以借助相应的例程来实现GPS数据的接收和解析。以下是一个简单的例程流程: 1. 首先,配置STM32F103的串口通信模块,确保能够与GPS模块进行数据交互。例如,选择合适的波特率和数据位、停止位及校验位。 2. 初始化GPS模块,向其发送相应的配置指令,以确保获取所需的GPS数据。可以使用ublox公司提供的配置工具或者手动发送AT指令进行配置。 3. 在主循环中,通过串口接收到的数据判断是否接收到有效的GPS数据。可以使用适当的校验算法来验证数据的完整性和准确性。 4. 解析GPS数据,获取所需的定位信息,如经度、纬度、海拔、速度等。ublox-m8n-gps模块通常提供了相应的数据格式及协议,可以通过解析数据包来获取所需的信息。 5. 根据需要进行进一步的处理和应用,比如将定位信息显示在LCD屏幕上,或者将数据发送到其他设备。 需要注意的是,以上例程只是一个大致的流程,具体的实现方式和相应的库函数可能因不同的开发环境和工具链而有所不同。因此,在实际应用中,需要根据具体的开发板及使用的开发环境进行相应的调整和修改。同时,还可以参考官方文档和相关资料,以更好地理解和应用ublox-m8n-gps模块和STM32F103控制器。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值