CAN总线学习之路

闻道有先后,术业有专攻。我们接触新的事物时总会有个学习过程,如今现场总线非常繁多,CAN总线就是其中不可忽视的一种,在此以个人的学习过程与大家共勉!

我大学时的专业是电子科学与技术,专业课程是数电、模电、单片机、C语言等,如果不是进入了致远电子,很有可能根本不会接触到CAN总线。致远电子是国内最早研究CAN总线的公司之一,推出销售的CAN总线相关产品非常丰富,因此每一位进入致远电子的工程师,CAN总线就成了必修课之一,我也不例外。

记得那是2011年的11月,我刚到致远电子报到,第二天的欢迎会上,周工就给我们发了两本书,一本是《新编计算机基础教程》、另外一本就是《项目驱动------CAN-bus现场总线基础教程》,我的CAN学习之路也从此开始。

《项目驱动》告诉了我什么是"总线------bus",信息在一条公共通道上传输,信息接收者从通道上接收所有信息,并根据规则过滤出发给自己的信息,这就是总线的概念。而CAN总线最早是应用在汽车上,为了解决早期车身点对点连接导致车身线缆数量随着电子部件的增加而呈指数上升带来的管理问题。正因为CAN总线最早应用在汽车上,所以CAN总线有着一套非常完整完善的错误处理机制,这使得CAN总线的自身的错误率大大减低,其自身出错概率小于10-9。因此CAN总线往往被应用在安全性要求很高的场合,如轨道交通、轮船、煤矿、医疗器械、甚至火箭发射都有CAN总线的身影。

随着学习的深入,也了解了CAN总线在ISO/OSI模型中主要有三层,分别是物理层、链路层、应用层,前面提到的CAN安全性的保证主要就是在链路层实现;在物理层的传输过程中,又包含了CAN控制器、CAN收发器、CAN传输网络;应用层主要就是高层协议,常见的包括:CANOpen、DeviceNet、J1939、iCAN等。我还记得当时为了配合学习CAN,我还专门申请了一块M0的学习板------TinyM0-CAN-T,主芯片是NXP的LPC11C24,带CAN控制器和收发器,就是在这个小板子上,自己调试跑了各样CAN的小程序,学习了CAN总线的工作过程。

随着工作的深入,学习的产品越来越多,接触的客户也越来越多,遇到的行业也越来越多。比如说客户做一个项目,一开始就规划了CAN总线,那么此时客户关注的往往就是选择什么样的主控制芯片(一般要带CAN控制器),然后选择合适的CAN收发器,为了保证总线运行可靠,很多客户会选用现成的隔离收发器,如CTM模块;又比如有些项目原本没有CAN总线,而由于后期应用需要增加CAN总线,此时往往会在原有的总线上进行转换,如以太网转CAN、串口转CAN、PCI转CAN、光纤转CAN等;还有一些CAN总线网络已经搭建完成,但是在工作过程中出现一些总线故障,此时需要用CANScope、CANDT等分析仪设备对CAN节点和总线进行全面体检分析。

虽然说除了CAN总线以外,还有很多的现场应用总线,但是学习是讲究触类旁通、举一反三的,当我们学习理解了一种总线协议之后,再学习其他现场总线那就是事半功倍的事了。

相关推荐
悠哉悠哉愿意5 天前
【单片机学习笔记】串口、超声波、NE555的同时使用
笔记·单片机·学习
Lester_11015 天前
STM32霍尔传感器输入口设置为复用功能输入口时,还能用GPIO函数直接读取IO的状态吗
stm32·单片机·嵌入式硬件·电机控制
LCG元5 天前
低功耗显示方案:STM32L0驱动OLED,动态波形绘制与优化
stm32·嵌入式硬件·信息可视化
三佛科技-187366133975 天前
120W小体积碳化硅电源方案(LP8841SC极简方案12V10A/24V5A输出)
单片机·嵌入式硬件
z20348315205 天前
STM32F103系列单片机定时器介绍(二)
stm32·单片机·嵌入式硬件
PM老周6 天前
2026年软硬件一体化项目管理软件怎么选?多款工具对比测评
java·安全·硬件工程·团队开发·个人开发
Alaso_shuang6 天前
STM32 核心输入、输出模式
stm32·单片机·嵌入式硬件
TangDuoduo00056 天前
【Linux SPI驱动开发】
驱动开发
脚后跟6 天前
AI助力嵌入式物联网项目全栈开发
嵌入式硬件·物联网·ai编程
2501_918126916 天前
stm32死锁是怎么实现的
stm32·单片机·嵌入式硬件·学习·个人开发