CAN通讯软件设计主要包括3个模块:CAN通讯初始化、接收数据和发送数据模块。信息目标的初始化程序代码(C语言)如下:

当微处理器接收数据采用中断方式,接收Message Object初始化时将RxIE位置1。当程序进入到CAN中断服务子程序时,先判断CAN状态寄存器的RxOK位是否已置位,若已置位,则说明CAN控制器已经成功接收到一个数据帧(因为CAN通讯有多个中断源,而中断向量只有一个),这时再调用相应的函数,取出数据帧中有用的字节进行处理或执行相应的操作。源程序代码如下:

5 、结语

C8051F040是完全集成的混合信号系统级单片机,具有与8051指令集完全兼容的CIP-51内核,代表了8位单片机的发展方向。他不但集成了构成监控系统的常用外设,而且还集成了高可靠性、高性能的CAN总线控制模块。本文使用该芯片设计的CAN节点模块集成度高、性能稳定,实时性好、软件设计简洁,在工业生产和仪器开发领域具有广泛的应用前景。本文给出的硬件和软件设计方案均已通过实际测试,并成功运用于大洋协会“十五”攻关项目:小型底栖生物标本自动分离系统的通讯模式中。

责任编辑:gt

关于接口,总线,驱动就介绍完了,您有什么想法可以联系小编。

  • UC3846控制芯片工作原理控制图 逆变焊机原理与用途
  • 数字万用表电阻档测试二极管正反向没有阻值(使用万用表测量二极管的正向电阻,为什么各档)
  • 学单片机需要学数电模电吗(学单片机要先学数电模电吗)
  • 电工怎么选择适合自己用的万用表(电工初学者买什么样的万用表好)
  • 单片机需要同时运行多个任务怎么办(单片机怎么同时执行多个任务)
  • 电机保护的方案取决于负载的机械特性
  • 绝缘电阻表正负搭接不复零位是怎么回事
  • 短路怎么用万用表查