全球旧事资料 分类
动发送能力和对CAN控制器的差动接收能力,其位速度高达1Mb/s,与ISO11898标准兼容。它的斜率控制功能使电磁兼容性能增强,准备模式可以减少网络的功耗,准备模式中,网络一旦检测到总线上有报文就会被立即激活。同时,它可提供更强抗干扰能力,以及有热保护、短路保护、支持多达110个节点等好处。在微控制器和CAN总线收发器之间,采用了2个高速光电耦合器6N137进行电气隔离,防止将总线干扰引入系统,提高了系统的可靠性。同时,在节点端部接有1个120Omega终端匹配电阻,提高了数据通信的抗干扰性。3CAN通信协议的设计根据ISO/OSI模型,CAN总线规范了只制定了数据链路层中的媒体访问子层和一小部分的逻辑链路控制子层,CAN的ISO标准规定了总线及驱动器的电气特性。因此需要根据自己的需求设计通信协议。CAN协议标准2.0B的数据帧的ID长度为29位,为扩展格式数据帧结构,。r
r
数据帧由帧起始、仲裁段、控制段、数据段、CRC段、ACK段、帧结束组成。协议的设计是对标识符和数据位的定义。本系统协议的设计参照SAEJ1939协议标准,标识符分配为优先级P、保留位R、数据页DP、代码域PF、目标域PS、源地址SA和数据域DF7个部分。根据需求定义了5个报文,报文标识符定义如表1所示。r
r
整车控制器的节点地址为OxA7;BMS节点地址为OxE4;CCS节点地址为OxE5;电机控制器节点地址为OxE6。根据实际需求,设计了5个报文,分别为:BMS发给CCS和电机控制器的2个报文,CCS和电机控制器发给整车控制器的2个报文,整车控制器发给电机的报文。根据信息的重要程度,将电机控制器和整车控制器间的报文设计为最高优先级3,其他报文优先级设计为6。4CAN总线节点的软件设计系统采用基于C语言的程序设计。在IAB开发环境下进行调试和仿真。整车控制节点的软件设计主要包括4个部分:CAN控制器的初始化、报文发送、报文接收和错误处理。4.1CAN控制器的初始化在启动CAN通信前必需进行CAN模块的初始化,包括硬件使能、CAN工作模式设置、总线波特率设置、设置中断、验收过滤器设置等。初始化操作在CAN模块复位的模式下进行。初始化程序流程图。r
r
本设计中采用的是29位扩展标示符,符合CAN2.0B的标准,所以在验收屏蔽过滤器设置中进行相应的设定。同时,本设计的CAN波特率设置为250Kb/s,与总线上其他节点的波特率相同,才能进行正常的通信。4.2数据的发送对CAN数据的发送采用查询方式,提高处理器的效率,STM32F103VE的CAN模块有3个发送邮箱,发送报文的流程为:应用程序选择一个空发送邮箱;设置标识符,r
好听全球资料 返回顶部