CPLD驱动的双CAN电池管理系统控制器设计与实现

0 下载量 61 浏览量 更新于2024-08-30 收藏 175KB PDF 举报
本文主要探讨了基于CPLD的电池管理系统双CAN控制器的设计。随着电动汽车的发展,对电池管理系统的实时性和通信效率提出了更高的要求,双CAN通信协议被选中以满足这种需求。设计的核心组件包括CPLD(复杂可编程逻辑器件)、TMS320LF2407 DSP微处理器和SJA1000 CAN收发器。 首先,硬件设计上,TMS320LF2407是一款高性能微处理器,采用哈佛架构,支持高速工作,但其地址线和数据线的分离特性使得与SJA1000这类复用信号的接口设计变得复杂。传统的解决方案是通过电平转换双向缓冲驱动,但这会增加程序代码量和占用存储资源,影响电池管理系统实时性。为解决这个问题,文章采用了CPLD作为核心逻辑控制器,它具有速度快、体积小、驱动能力强和在线编程的优点,能够有效地简化地址和数据的传输,并减少程序复杂度。 CPLD的逻辑设计中,EPM7064 CPLD被选用来完成SJA1000信号的逻辑控制。CPLD的输入信号包括来自DSP的地址、I/O空间选通和读写信号。其中,地址线A13既是SJA1000的地址选择线也是数据线,而A14和A15则用于片选。CPLD通过精心设计的译码电路,确保地址锁存和数据/地址读写的正确执行。 软件方面,双CAN控制器的程序设计分为两部分:一是TMS320LF2407的CAN收发程序,负责处理CAN协议栈的逻辑,如帧的构建、错误检测和纠正等;二是SJA1000的CAN收发程序,实际执行CAN帧的物理传输。通过CPLD的介入,程序的优化使得系统能更高效地管理电池信息,提高了电池管理系统的实时性和可靠性。 总结,本文设计的基于CPLD的双CAN控制器解决了TMS320LF2407与SJA1000接口的复杂性问题,通过CPLD的逻辑控制实现了高效、简洁的通信,为电池管理系统提供了关键的通信基础设施,对于电动汽车和其他依赖电池性能的应用具有重要意义。