01
RTK 接收机 · 2023–2026
主控集成
RV1126 RTK 接收机
主控系统集成 · 11 个外设模块交互 · 厂商驱动适配
面向测绘场景的 RTK 接收机:卫星定位、手簿交互、内置电台、4G/Ntrip、惯导倾斜测量、激光测点、视觉放样和静态存储。主控用 RV1126 跑 Linux + Buildroot,我负责把 11 个外设模块接进主控并串起业务。
RV1126
Linux
Buildroot
DTS
FCS950U
EG800K
OG02B10 / GC2053
Ntrip / RTCM
项目背景
接收机通过 GNSS 获取实时时间与定位;手簿通过 WiFi/经典蓝牙查看状态、配置参数;内置电台支持基准站/移动站;联网后通过 4G/Ntrip 获取差分数据,达到厘米级固定解。
我的职责
- 主控侧系统集成:接口确认、DTS、电源/复位/时钟、启动与稳定性。
- 模块交互与协议:UART/I2C/SPI/USB/SDIO/MIPI 的适配、解析和状态机。
- 厂商驱动适配:FCS950U、EG800K、OG02B10/GC2053 的 DTS、固件路径与联调。
- 业务集成:手簿交互、4G/Ntrip、惯导/激光/视觉数据流、静态存储。
难点与解决
- 4G/Ntrip 偶发掉线:分 USB 枚举、SIM/注册、拨号、Ntrip 四段定位,补复位时序与重连状态机。
- 手簿连接不稳定:排查 WiFi AP、信道/干扰、IP/DHCP 和蓝牙配对,做多设备兼容性验证。
- 惯导/激光测点偏差:查 IMU/磁力计数据、标定、时间同步和坐标转换,用已知点对比验证。
成果
- 完成 RV1126 主控与 11 个外设模块的接口适配与联调。
- 完成多厂商模块驱动的适配与系统集成,支撑整机功能联调。
- 独立完成 GD32F303 LCD 固件,打通主控 UART 到前面板显示。
系统架构图(脱敏)· 主控 + 11 个外设模块 + 6 类总线
代码与原理图受保密限制,面试可详谈
11 个外设模块 + 主控,6 类总线
面试时按总线分组讲,不要逐个念模块名。
WiFi / BTSDIO + UARTFCS950U
4GUSBEG800K
CameraMIPI CSI-2OG02B10 / GC2053
GNSSUARTNMEA / 差分
IMUUART姿态 / 倾斜
磁力计I2C三轴磁 / 融合
激光UART测距 / 测点
电台UART基准站 / 移动站
eMMCeMMCuserdata / 静态存储
库仑计I2C电量 / 低电
LCDUARTGD32F303 前面板
主控RV1126Linux / Buildroot
01
手簿 / 配置手簿 → WiFi AP / 经典蓝牙 → 主控 → Web / 状态 / 配置。
02
差分 / 固定解GNSS → 主控;4G/Ntrip 或内置电台 → 差分数据 → 厘米级固定解。
03
测量 / 存储IMU + 磁力计 → 倾斜;激光 / Camera → 测点/放样;GNSS 原始数据 → eMMC。
厂商驱动:WiFi/BT、4G、Camera
我做:DTS / 电源 / 复位 / 时钟 / 固件路径 / 接口 / 联调
我自研:GD32 LCD 固件
面试讲解模式30 秒
30 秒讲法:“这是 RTK 接收机,RV1126 主控,Linux + Buildroot。我负责主控本身和 11 个外设模块的交互、协议、业务状态机和联调;WiFi/BT、4G、Camera 用厂商驱动做适配;LCD 是我独立做的 GD32 固件。”
可能追问:4G 怎么拨号/Ntrip 怎么工作?手簿 WiFi AP/经典蓝牙怎么连?IMU+磁力计+激光怎么做测点?厂商驱动和你做的适配怎么分?
边界:不把厂商驱动说成自己从零写;重点讲 DTS、电源/复位/时钟、固件路径、接口配置、联调与业务集成。
02
GD32F303 · LCD 显示模块
自研固件
GD32F303 LCD 模块
SPI 显示驱动 · 菜单状态机 · 按键交互 · UART 协议 · IAP 升级
RTK 接收机的前面板显示模块:GD32F303 通过 SPI 驱动 LCD,实时显示定位状态、卫星数、数据链和电量;用户通过按键进入菜单配置参数;主控通过 UART 与 LCD 模块交互。
GD32F303
C
SPI LCD
GPIO / EXTI
UART
Flash
IAP
Watchdog
项目背景
接收机需要一块低成本的本地显示面板:不依赖手簿,也能查看固定解状态、卫星数、电量、数据链,并完成常用参数配置。
我的职责
- SPI LCD 驱动:初始化、图形/字符绘制、状态页面刷新。
- 菜单状态机:状态 / 卫星 / 设置页面,按键切换与参数配置。
- 按键中断:消抖、长短按识别、菜单控制逻辑。
- UART 协议:与主控同步状态、解析配置命令;Flash 参数存储、IAP 升级、看门狗。
难点与解决
- 刷屏闪烁/撕裂:调整刷新策略,局部刷新 + 合理刷新频率。
- 按键抖动/长短按:EXTI + 定时器/状态机,区分短按、长按和连按。
- IAP 升级变砖:校验、失败恢复、看门狗,降低异常断电变砖风险。
成果
- 完成 LCD 显示、菜单、按键、UART 协议与 IAP 的固件闭环。
- 主控通过 UART 下发状态,LCD 实时显示整机状态。
- 沉淀了前面板显示与升级的代码结构。
在线演示:用 ▲▼ 切换页面,OK / ESC 体验菜单逻辑。
从主控 UART 到 LCD 显示,全链路自研
这块可以作为区别于“只调厂商驱动”的亮点来讲。
显示层
SPI LCD 初始化、坐标/颜色/字体、状态页与菜单页绘制;控制刷新区域和频率,减少闪烁。
交互层
按键 EXTI 中断、消抖、长短按识别;菜单状态机处理进入/退出/切换/确认。
通信层
UART 协议解析主控状态与配置命令;帧头、长度、校验、超时重同步。
可靠性
Flash 参数存储、IAP 校验与失败恢复、看门狗;提高异常断电后的可恢复性。
面试讲解模式30 秒
30 秒讲法:“LCD 是我独立做的 GD32F303 固件:SPI 驱动 LCD、菜单状态机、按键中断和长短按、UART 跟主控交互、Flash 参数和 IAP 升级。主控把整机状态发过来,LCD 实时显示,按键可以进菜单配置。”
可能追问:SPI 时序怎么配?菜单状态机怎么设计?按键怎么消抖/区分长短按?IAP 怎么防止变砖?
亮点:从主控 UART 协议到 LCD 显示、按键、升级全链路自研,能讲清“主控 ↔ 前面板”的完整闭环。