1 个稳定版本
1.2.6 | 2023年11月26日 |
---|---|
1.0.1 |
|
#29 in 机器人
59KB
1.5K SLoC
Rust-NMEA
Rust 的 NMEA (0183) 解析器和信息库。
示例
use rust_nmea::{parser, types::{CommandTypes, Time, Cordinate, GGAStatus}, commands::gga::GGA};
let line = "$GPGGA,161009.00,1122.20418,N,02339.35234,E,1,08,1.09,11.5,M,11.3,M,,*62";
let parsed = parser::Parser::parse_line(line);
assert_eq!(parsed, Ok(
CommandTypes::GGA(GGA {
time: Time {
hour: 16,
minute: 10,
second: 9,
decimal_seconds: 0,
},
lat: Cordinate {
degree: 112,
minute: 2.20418,
},
northing_indicator: 'N',
lon: Cordinate {
degree: 23,
minute: 39.42234,
},
easting_indicator: 'E',
status: GGAStatus::S2d3D,
number_of_satellites: 8,
horizontal_dilution_of_position: 1.09,
altitude: 11.5,
altitude_unit: "M".to_string(),
geoid_separation: 11.3,
geoid_separation_unit: "M".to_string(),
differential_age_of_position: 0,
differential_reference_station_id: 0,
})
));
支持的包 | 已测试 | 已实现 |
---|---|---|
[DTM] (基准参考) | ❌ | ✅ |
[GBS] (卫星故障检测) | ❌ | ✅ |
[GGA] (全球定位系统定位数据) | ✅ | ✅ |
[GLL] (地理位置 - 纬度 / 经度) | ✅ | ✅ |
[GNS] (GNSS 定位数据) | ❌ | ✅ |
[GRS] (GNSS 范围残差) | ❌ | ❌ |
[GSA] (GNSS DOP 和活动卫星) | ✅ | ✅ |
[GST] (GNSS 伪距误差统计) | ❌ | ❌ |
[GSV] (视野中的 GNSS 卫星) | ✅ | ✅ |
[RLM] (返回链接消息) | ❌ | ❌ |
[RMC] (推荐的最小特定 GNSS 数据) | ✅ | ✅ |
[THS] (车辆航向) | ❌ | ❌ |
[TXT] (文本传输) | ❌ | ❌ |
[VLW] (双地面/水域距离) | ❌ | ❌ |
[VTG] (地面航向和地面速度) | ✅ | ✅ |
[ZDA] (时间和日期) | ✅ | ✅ |
重要:此库不提供 SerialPort
许可协议
Rust-NMEA 根据 GPL-2.0 许可协议 许可。