CAN 控制器发送的信息帧有两种,一种是发送数据帧,一种是发送远程帧. 发送邮箱有邮箱4 和邮箱5以及被配置为发送方式的邮箱2 和邮箱3. 发送数据帧时,在数据写到发送邮箱的数据区后,如果相应的发送请求位使能,则数据帧被发送到CAN 总线上. 数据帧的数据区可以通过软件设置成1~8 个字节。 数据帧的格式如图4 所示。
图4 CAN 总线数据帧
CAN 总线控制器的接收邮箱有邮箱0和邮箱1及被配置为接收方式的邮箱2 和邮箱3. CAN 控制器在接收信息时,首先要将接收信息的标志符与相应接收邮箱的标志符进行比较,只有标志符相同的信息才能被接收. CAN 总线控制器的接收寄存器使得接收邮箱可以忽略更多的位来接收信息. 但是,如果当接收屏蔽使能位(AME) 为0 时,则局部接收屏蔽寄存器将失效. 只有配置为发送方式的邮箱2 和邮箱3 才可以接收自动应答远程帧. 当邮箱接收到远程帧后,接收节点将自动发送一个数据帧作为应答。
5 接口电路设计
由于DSP 本身内带CAN 总线模块,所以不需要专门的CAN 控制器,DSP 本身不具有CAN 收发器,需要外接CAN 收发器82C250 ,中间使用光电隔离器6N137. 如果距离很短,可以不使用光电隔离器. DSP与光电隔离器和CAN 收发器硬件连接图如图5 所示。
图5 DSP 与CAN 总线硬件连接图
6 电动汽车总成控制器CAN通讯的软件实现
电动汽车总成控制器是电动汽车的心脏,它需要频繁的接收和发送数据对电动汽车进行实时控制和检测. 发送信息采用查询方式,接收信息采用中断方式. 通过设定不同事件的不同优先级来确定信息的接收和发送顺序,同时增加紧急事件处理程序来提高控制器处理紧急事件的能力,保证车辆和人身安全. 紧急事件处理程序是当紧急事件发生时,如执行器件损坏,急刹车和急转弯等,通过暂时屏蔽低优先级事件,如电池电量检测,LCD 显示系统等,使控制器有足够的时间处理紧急事件,以提高控制器的实时控制能力和应急处理能力。 控制器软件流程图如图6 所示。
图6 控制器软件流程图
7 结 论
目前,现场总线在自动化领域中快速发展,CAN总线作为一种很有影响的现场总线,采用了许多新的技术和设计,使CAN 总线成为最有发展前途的现场总线之一。CAN 总线以其高实时性、高可靠性和高灵活性,在工业自动化控制中得到了越来越多的应用。本文应用DSP 控制器作为CAN 总线的微处理器,利用DSP 很强的数据处理能力和CAN 总线传输速率高、可靠性高的特点,对电动汽车内复杂的通讯系统提出解决方案. 实验证明,本系统不但解决了电动汽车通讯对实时性的要求,而且可靠性和稳定性都得到了提高。