基于CPLD的电池管理系统双CAN控制器

preview
需积分: 0 0 下载量 135 浏览量 更新于2020-08-13 收藏 146KB PDF 举报
【基于CPLD的电池管理系统双CAN控制器】是一种在混合动力汽车中用于电池管理的关键技术。电池管理系统(BMS)是确保电池组安全、稳定、高效运行的核心组件,它负责监控电池状态,防止过充、过放,以及优化能量利用。在电池管理系统中,CAN(Controller Area Network)通信协议扮演着至关重要的角色,它允许不同模块之间交换信息,例如电池状态、充电状态以及控制指令。 双CAN控制器设计是为了解决在电池管理系统中需要同时处理大量数据和控制命令的问题。TMS320LF2407被选为标定用CAN控制器,因为它是一款增强型哈佛架构的微处理器,能够高速处理数据。而SJA1000则作为电动汽车上的CAN节点,用于接收和执行来自整车控制器的控制命令。 在硬件设计中,由于SJA1000的地址线和数据线复用,导致与TMS320LF2407之间的数据交换变得复杂。常规方法是采用电平转换双向缓冲驱动,但这会增加程序源代码和存储需求,影响实时性。因此,设计中引入了CPLD(Complex Programmable Logic Device)作为接口,CPLD以其高速、小体积和可编程性解决了这一问题。EPM7064 CPLD用于实现译码任务,通过软件设计控制SJA1000的输入信号,简化了读写操作,提高了系统的实时性能。 在软件设计方面,CAN控制器的收发程序由三部分组成:初始化、接收和发送。DSP的CAN收发程序相对简单,主要通过设置寄存器实现。SJA1000的程序设计更为复杂,因为其寄存器映射到DSP的I/O空间。初始化时,SJA1000进入复位模式,然后配置各种寄存器以设定工作模式。在发送和接收CAN报文时,数据需按照CAN协议格式组织,并通过CPLD控制的数据传输机制进行处理。 基于CPLD的双CAN控制器设计有效地解决了混合动力汽车电池管理系统中的通信挑战,实现了高效、可靠的CAN报文收发,确保了整个系统的稳定运行。这一技术的应用证明了CPLD在汽车电子领域的潜力,尤其是在复杂和实时性要求高的电池管理系统中。