📘 TBOX·嵌入式Linux
入门30章
🚗 车联网 · 硬核实战
01
TBOX概述与行业背景
什么是TBOX
· 车联网角色 · 硬件架构(MCU+4G/5G+GNSS) · 软件架构 · 国标GB/T 32960
02
嵌入式Linux开发环境搭建
交叉编译链 · TFTP/NFS · 网络连接 · SSH/串口 · 烧录启动
03
Linux基础与Shell编程
常用命令 · Vim · Shell脚本(变量/循环/判断) · Makefile入门
04
GPIO接口编程
Linux GPIO子系统 · sysfs · libgpiod · 实战:控制LED指示灯
05
UART串口编程
UART驱动框架 · termios · open/read/write/ioctl · 实战:MCU AT指令通信
06
SPI / I2C 编程
SPI设备模型 · spidev · I2C设备模型 · i2c-dev · 实战:温度传感器
07
CAN总线编程
SocketCAN · CAN帧结构 · 实战:接收车辆CAN数据
08
GNSS定位编程
NMEA 0183 · GGA/RMC/GSV · 串口读取 · 实战:经纬度与速度
09
4G/5G模块上网
AT指令 · PPP拨号 · QMI_WWAN/ECM · 实战:pppd数据连接
10
音频编程 (ALSA)
ALSA架构 · arecord/aplay · G.711/OPUS · 实战:语音通话
11
视频采集与编码
V4L2框架 · 摄像头采集 · H.264/H.265 · 实战:行车记录仪
12
电源管理
Linux PM框架 · 休眠唤醒 · GPIO控制电源轨 · 低功耗待机
13
看门狗 (Watchdog)
硬件看门狗 · Linux Watchdog驱动 · 用户空间喂狗 · 防死机
14
RTC实时时钟
RTC子系统 · hwclock · 驱动编程 · 精准时间同步
15
ADC模拟信号采集
Linux ADC · IIO框架 · 读取模拟信号 · 检测电瓶电压
16
PWM输出控制
Linux PWM子系统 · 用户空间接口 · 控制蜂鸣器/电机
17
SD卡/eMMC存储
分区 · ext4/FAT32 · 自动挂载 · 本地日志存储
18
加密芯片与安全通信
HSM · TLS/SSL · OpenSSL · 云端安全通信
19
蓝牙 / WiFi
BlueZ · wpa_supplicant · 实战:手机蓝牙钥匙
20
以太网与Socket编程
ifconfig/ip · TCP/IP · Socket · 远程诊断
21
USB子系统与Gadget
Linux USB · USB Gadget · 实战:USB上网卡
22
传感器融合与惯性导航
加速度计/陀螺仪/磁力计 · 卡尔曼滤波 · 惯性导航DR
23
软件架构设计
多线程pthread · IPC(共享内存/消息队列/信号量) · 状态机 · 主控框架
24
MQTT协议栈
MQTT原理 · Mosquitto · Paho C客户端 · 车辆状态上报
25
HTTP/HTTPS与OTA
HTTP原理 · libcurl · cJSON · 实战:OTA升级
26
GB/T 32960 国标协议
32960协议解析 · 车辆登入/登出 · 实时数据上报
27
UDS诊断 (ISO 14229)
UDS服务 · 读取DTC · CANoe模拟 · 远程诊断
28
SOME/IP协议
SOME/IP原理 · vsomeip · 服务发现 · 与ADAS通信
29
DDS实时数据分发
DDS原理 · FastDDS · 发布/订阅 · 实时数据分发
30
项目实战与调试
需求分析 · 模块集成 · gdb/strace/perf · 完整TBOX Demo