📘⚙️🚗
嵌入式CAN驱动开发实战指南
🎯 30章 从入门到项目实战
🧩 友好 · 全彩目录
01
CAN总线基础
CAN协议起源
物理层特性
应用领域
02
CAN协议详解
数据帧结构
远程帧
错误帧/过载帧
帧间隔
03
CAN总线仲裁机制
位仲裁原理
优先级判定
非破坏性仲裁
04
CAN总线错误处理
错误类型
错误计数器
错误状态机
总线关闭恢复
05
CAN控制器硬件
SJA1000
MCP2515
内部寄存器映射
06
CAN收发器选型
TJA1050
SN65HVD230
ISO1050
电气特性对比
07
STM32 CAN外设
bxCAN模块架构
主控时钟配置
引脚映射
08
CAN初始化配置
波特率计算
位时序(BS1/BS2/SJW)
工作模式设置
09
CAN过滤器配置
标识符列表模式
掩码模式
FIFO关联
10
CAN报文发送
发送邮箱机制
发送优先级
中断与轮询
11
CAN报文接收
接收FIFO
接收中断
溢出处理
软件读取流程
12
CAN中断处理
中断源分类
优先级配置
中断服务函数
13
CAN回环测试
环回模式配置
自发自收验证
调试技巧
14
CAN驱动分层设计
硬件抽象层(HAL)
驱动层
应用接口层
15
Linux CAN子系统
SocketCAN架构
vcan虚拟设备
can-utils工具集
16
Linux CAN驱动框架
网络设备结构
NDIS接口
中断处理注册
17
Linux CAN设备树配置
dts节点编写
时钟与引脚绑定
兼容性字符串
18
Linux CAN驱动实现
open/close
ioctl/read/write
回调函数编写
19
CANopen协议基础
对象字典
PDO/SDO通信
NMT状态机
20
CANopen驱动实现
心跳报文
紧急报文
节点启动流程
21
J1939协议基础
PGN/SPN
地址声明
多包传输
22
J1939驱动实现
协议栈移植
参数组解析
应用层回调
23
CAN总线测试工具
PCAN-View
CANalyzer
CANDump使用技巧
24
CAN总线故障排查
示波器测量
错误帧分析
终端电阻检查
25
CAN总线电磁兼容
共模扼流圈
TVS管
PCB布局要点
26
多节点CAN网络设计
节点数量限制
总线长度
数据率权衡
27
CAN FD协议
CAN FD帧结构
数据场扩展
速率切换
28
CAN FD驱动适配
控制器支持
配置差异
兼容性处理
29
CAN安全机制
消息认证码
加密通信
防重放攻击
30
综合实战项目
STM32 CAN数据采集
监控系统设计
全流程实战