每个大容量数据包的最大大小为512字节,每个微帧的长度固定为125μs(以太网数据帧的数据字段的最小长度必须为()字节)
1 NMEA声明
1.1 NMEA数据格式
NMEA格式:数据传输以“声明”的形式进行。每条语句都以“$”开头,后面是两个字母的“标识符”和三个字母的“语句名称”,后面是逗号分隔的数据体。语句的结尾是校验和,整个语句以回车换行符结尾。
$GNS,,,,,,和*xx
:UTC时间,HHMMS ss
:纬度标识,n或s
:经度标识,e或W
:定位ID,NN-未定位,AA-定位活动
:定位星数
:hdop值
:海拔,单位:米
:水平间距,单位:M
:差异数据时代
:差分站代码
*二十: 校验和
单位为m,表示误差范围
$GPBOD,099.3,T,105.6,M,B点,*01
删除前缀$gpbod后,它由逗号分隔,并且*符号表示结束。
:99.3运动角,000-359,正北参考系
:T=真北参考系
:105.6运动角,000-359,磁北参考系
:M=磁北参考系
$GPGGA,,,,,,M,M,,*xx
在删除前缀$gpgga后,它由逗号分隔,*符号表示结束。
:UTC时间,格式为HHMMS或sss
:纬度,格式ddmm-mmmm
A:纬度半球n
:经度,格式dddmm mmmm
经度半球e
:定位质量指示,0=定位无效,1=定位有效
:使用的卫星数量,从00到12
:hdop-水平精度因子,0.5至99.9。一般认为,hdop越小,质量越好
:海拔高度M
:地球椭球相对于大地水准面的高度
:差分时间自上次接收差分信号以来的秒数。如果不是差分定位,则为空
:差分站ID号0000~1023前一个0也将被传输,如果不是差分定位,则为空
GPGSA:
PDOP位置精度因子
Hdop水平精度因子
垂直精度因子
$GPGSV、、、、、…、、、*hh
删除前缀$gpgsv,然后用逗号分隔,从0开始的索引*该符号表示结束。
、、形成一个卫星组,并具有多个卫星组的状态。场是SNR。
[视频新闻]
:卫星搜索所需的gpgsv声明总数
:整个序列中当前GSV的数量,第一个为1,最后一个等于
:表示当前可见的定位卫星总数
:表示卫星号。GPS卫星的PRN码范围为1-32
:信噪比
$GPRMC,,,,,,和*hh
在删除前缀$GPRMC后,它由逗号分隔,*符号表示结束。
除了GPRMC,还有gprma和gprmb。
:UTC时间,HHMMS格式
:a表示定位
:纬度ddmm mm
A:纬度半球n
:经度dddmm毫米
经度半球e
:地面速度000.0~999.9节,之前的0也将被传输
:地面航向000.0~359.9度,以正北为基准,前一个0也将被传输
:UTC日期,ddmmyy格式
:磁偏转角000.0~180.0度,前一个0也将被传输
:磁偏角方向,e
$GPVTG,T,M,N,K,*hh
在删除前缀$gpvtg后,它由逗号分隔,*符号表示结束。
:运动角,000-359,正北参考系
T: 真北参考系
:运动角,000-359,磁北参考系
M: 磁北参考系
1.2 PRN编号
在导航系统中,卫星对应于唯一的PRN。请参阅GPGSV
北斗:1-37
全球定位系统:1-32
小企业会计准则:33-64
QZSS:193-197
北斗和GPS的PRN重叠,通过NMEA语句的前缀GP或BD来区分。
1.3地图
百度地图和高德地图使用gxrmc和gxgsv作为地图的数据源。
1.4 TOD声明
GPGGA,GPRMC,GPZDA
2 GPS卫星信号分析
-GPS卫星星历:描述卫星的轨道信息
-GPS信号是CDMA信号。一般来说,GPS接收机对卫星信号的搜索是一个“搜索整个天空中的卫星”的过程,即搜索对应于天空中所有卫星的伪随机码。如果事先知道所有卫星在任何时间的近似位置,接收器此时只能在天空中再现卫星的伪随机码以进行搜索。这样,GPS接收机在搜索卫星时可以成为目标,并缩短获取卫星信号的时间
-GPS卫星号从1到32
3 MTK全球导航卫星系统
3.1 MT3333
3.2 SDIO
SDIO设备扫描从MMC_ Rescan函数开始,MMC_。扫描设备后,扫描将退出。因此,如果以400k速率扫描SDIO设备,则不需要执行以下三种速率的扫描。
3.3 MT6630
FWK->JNI->HAL->MNLD
获取GPS状态,包括GPS字符串,指示GPS已打开:
要在logcat中查看NMEA语句,需要将日志级别调整为D,而不是V,否则仍然无法查看日志。
4 ublox
4.1 u形中心
查询当前串行端口波特率配置:
选择支持哪些NMEA消息输出:
串行端口配置:
UBX>>CFG
周期配置:
UBX>>CFG
Ubx cfg-将发送到芯片的当前数据保存到外部SPI闪存
清除BBR和闪光灯的NVM:B5 62 06 09 0D 00 FF 00 00 FF 00 03 1B 9A
Ubx nav eoe-每秒NMEA和Ubx消息的结束
4.2 UBX-CFG-MSG
-根据上述三个参数设置Ubx消息的输出频率
-根据上述三个参数,它依次用于训练某个Ubx消息
4.3 m8030有源天线状态读数
PIO14:ANT_ DET,用于电源
PIO15:ANT_ SHORT_
PIO16:ANT_ OFF
4.4 RTCM3
RTK是在某个地方设置一个基站,然后在自动驾驶车辆上安装一个漫游车。基站是固定的,使得基站可以接收GPS的载波相位a。然后,在连续移动期间,月球车可以从卫星接收载波相位B,从基站接收载波相位a。当a和B被区分时,可以获得载波相位误差C。罗孚利用该误差C不断修正其自身的误差B,从而获得1~2cm的精度。
RTK数据通信有两种模式,一种是无线电模式,另一种是网络模式。
4.5时间戳转换为UTC时间
导入时间
4.6 NMEA报表参数分析
使用ATOI将字符串argx转换为相应的整数和浮点数
SPC:shared_ ptr类
4.7 GPS冷启动、热启动和热启动
热启动:当最后定位时间超过两小时时启动。
热启动:从上次定位开始的时间少于两小时时启动。
4.8 u-center TCP客户端
tcp://192.168.5.99:65501
->
->
->
用户层回调类
6 USB主机数据包捕获方法
6.1嗅探原理
文本格式路径:/sys/kernel/debug/USB/usbmon
要创建二进制节点,请执行以下操作:
英特尔APL 8端口MPH xHCI
7 USB批量传输
21.3 DBC
21.4 DWC3
21.5 DWC3
寄存器地址:PCI_ BAR0+80D4h
在控制或批量令牌传输之间插入延迟,否则,输入或输出令牌发送过快将导致ublox m8030的全速设备丢失数据包。
7.2 USB批量传输速度计算
-全速
每个帧最多可以传输19个大容量数据包,每个大容量数据包最多64字节。因此,最大传输速率为:19 x 64 x 1000=1.16 MB/s。
-高速
USB 2.0在每个微帧中最多可以传输13个大容量数据包。每个大容量数据包的最大大小为512字节,每个微帧的长度固定为125μs。因此,最大传输速率为:13 x 512 x 8 x 1000=51 MB/s。
-超高速
USB 3.0可以在每个微帧中传输多达13个大数据包,每个大数据包的最大大小为1024字节,而每个微帧的长度固定为125μs。因此,最大传输速率为:13 x 1024 x 8 x 1000=102 MB/s。
7.3 QCOM USB全球导航卫星系统
cat/sys/kernel/debug/smd/tbl
使用/dev/ttyGS0将NMEA打印到主机
8 strace
strace-e epoll_ wait-x-p$PID
strace-p$PID-tt-T-s128-x2>grep“读取17”
要捕获物理串行端口的read数据,strace必须采用-f参数,否则无法捕获read的数据。
strace-p$PID-x-tt-T-f-e trace=read-e read=$FD
9个网址
NMEA数据
各种时间转换关系
AGPS MSB:基于MS的
BBR:备份RAM
GPS Xtra:高通公司提供的一种解决方案,可以发送星历信息,类似于MTK EPO,用于辅助定位
SBZ:应该是零
发表评论