📘 MCU协议栈移植
30章 · 从入门到实战
📡
物联网通信 · 嵌入式
1
01
协议栈概述
物联网通信协议栈的层次结构、常见协议栈介绍(LwIP、uIP、FreeRTOS+TCP)、移植前的准备工作。
↗
2
02
硬件抽象层(HAL)设计
MCU外设驱动抽象、时钟与定时器抽象、中断管理抽象、GPIO与UART抽象层接口定义。
↗
3
03
内存管理移植
动态内存分配策略、内存池设计、零拷贝技术、内存对齐与字节序处理。
↗
4
04
网络接口层移植
MAC层驱动适配、PHY芯片初始化、MDIO总线操作、网络中断处理。
↗
5
05
数据链路层实现
以太网帧封装与解析、ARP协议实现、VLAN支持、链路层状态机。
↗
6
06
IP协议栈移植
IPv4/IPv6双栈支持、IP分片与重组、路由表管理、TTL与校验和计算。
↗
7
07
ICMP协议实现
Ping响应、ICMP差错报告、超时处理、ICMPv6邻居发现。
↗
8
08
UDP协议移植
UDP控制块管理、端口绑定与复用、校验和计算优化、广播与组播支持。
↗
9
09
TCP协议移植(上)
TCP控制块设计、状态机实现、三次握手与四次挥手、窗口管理。
↗
10
10
TCP协议移植(下)
拥塞控制算法、重传超时计算、Nagle算法、Keep-Alive机制。
↗
11
11
Socket API适配
BSD Socket接口封装、select/poll机制、非阻塞I/O、超时控制。
↗
12
12
操作系统适配层
RTOS任务与信号量封装、消息队列适配、临界区保护、任务间通信。
↗
13
13
中断与底半处理
中断嵌套与优先级、中断服务程序设计、Tasklet/Workqueue机制、中断延迟优化。
↗
14
14
定时器管理
软件定时器实现、定时器精度控制、超时回调机制、RTC同步。
↗
15
15
缓冲区管理
pbuf结构设计、数据包零拷贝、缓冲区链管理、DMA友好缓冲区分配。
↗
16
16
校验和计算优化
硬件校验和卸载、增量校验和、查表法优化、SIMD加速。
↗
17
17
配置与编译系统
Kconfig/CMake集成、条件编译宏设计、链接脚本调整、优化等级选择。
↗
18
18
调试与日志系统
调试串口输出、日志等级控制、断言机制、内存泄漏检测。
↗
19
19
性能测试与调优
吞吐量测试、延迟测试、CPU占用率分析、内存占用优化。
↗
20
20
低功耗模式适配
睡眠与唤醒机制、网络唤醒、定时同步、功耗与性能权衡。
↗
21
21
安全协议集成
TLS/DTLS移植、加密算法库适配、证书管理、安全启动。
↗
22
22
MQTT协议栈移植
MQTT客户端实现、QoS等级支持、遗嘱消息、会话保持。
↗
23
23
CoAP协议栈移植
CoAP资源模型、观察模式、块传输、DTLS安全层。
↗
24
24
HTTP/HTTPS协议栈移植
HTTP客户端/服务器、RESTful API、Chunked传输、SSL集成。
↗
25
25
DNS协议实现
DNS解析器、缓存机制、mDNS服务发现、DDNS支持。
↗
26
26
DHCP协议实现
DHCP客户端状态机、租约管理、Option解析、DHCPv6。
↗
27
27
SNTP时间同步
NTP/SNTP协议实现、时间戳处理、时钟漂移补偿、时区管理。
↗
28
28
多接口管理
WiFi+以太网双栈、接口优先级、路由策略、故障切换。
↗
29
29
协议栈裁剪与定制
功能宏开关、内存占用优化、代码尺寸优化、实时性保障。
↗
30
30
综合实战案例
基于STM32+LWIP的温湿度采集器、基于ESP32+FreeRTOS+TCP的智能灯控、移植问题排查指南。
↗