数字继电保护系统中CAN总线通信的实现
式位FSRM=0)。
根据如图3所示的内部连接图中时钟和同步信号流程分析,McBSP内部时钟信号(Internal CLKX、Internal CLKR)、帧同步信号(Internal FSX、Internal FSR)与MCP2510的时钟信号、片选信号同步产生与停止。McBSP内部发送帧同步信号Internal FSX是从低电平跳到高电平,而与之相连的MCP2510片选信号是高电平跳到低电平有效,相位相反,故McBSP内部寄存器的发送帧同步信号极性位FSXP=1,而McBSP内部帧同步信号Internal FSR与Internal FSX必须一致,故Internal FSR也必须和MCP2510片选信号反相,接收帧同步信号极性位FSRP=1。
图3 DSP McBSP 内部逻辑图
McBSP在内部发送时钟Internal CLKX的上升沿发送数据,而在内部接收时钟Internal CLKR的下降沿接收数据。反之,MCP2510在外部时钟CLK的上升沿接收数据,在外部时钟CLK的下降沿发送数据。根据前面对时钟与帧同步信号的分析可知:Internal CLKX、Internal CLKR与CLK为同一时钟,要保证可靠收发数据,必须配置发送时钟极性位CLKXP=1(Internal CLKX 与 CLKX反相)和接收时钟极性位CLKRP=1(Internal CLKR 与 CLKR反相)。这样,一方在上升沿发送,另一方在下降沿接收,通信可靠;否则双方在同一时钟的同一边沿收发数据,不能保证可靠通信。
3 通信软件流程设计
DSP通过McBSP与MCP2510的SPI接口传送数据。MCP2510的发送寄存器作为发送缓冲区的映射寄存器,DSP通过访问发送寄存器将数据传送到发送缓冲区。MCP2510有6个过滤器,CAN总线上通过接收过滤器过滤的数据首先被放到接收缓冲区中。接收寄存器作为接受缓冲区的映射寄存器,DSP通过访问接收寄存器来接受缓冲区中的数据。
图4 CAN发送子程序框图
DSP与MCP2510之间的通信过程分两步:① 按照以上分析得出的结论对McBSP的控制寄存器配置,发送过程为:将数据写入McBSP的发送寄存器DXR,然后通过发送移位寄存器XSR将数据经引脚BDX移出发送,接收过程为:通过McBSP引脚BDR接收的数据移入接收移位寄存器RSR,并复制这些数据到接收缓冲寄存器RBR,然后再复制到接受寄存器DRR,最后由DSP读入。② McBSP与MCP2510之间的通信按照McBSP内部配置好的时钟、帧同步信号交换数据。
为了提高通信效率,DSP发送采取主动发送方式,由DSP的HD口(配置为IO口)和MCP2510的TXRTS端相连,以选择发送缓冲单元,发送流程如图4所示;而接收采取中断方式,一旦MCP2510接收缓冲器满,则发中断信号给DSP,通知DSP读取数据,接收流程如图5所示。
图5 CAN接收中断子程序框图
4 结语
本文针对CAN总线短字节通信实时性好、可靠性高的特点,分析了CAN总线在数字保护系统中的应用可行性,给出了DSP的McBSP与CAN控制器接口的硬件配置方案和软件设计流程。在数字保护系统中实际通信试验所得到的数据证明CAN通信方案高效可靠,能够满足数字继电保护对实时通信的要求,充分发挥了CAN总线的优点。
本文作者创新点:针对CAN总线的特点论述了数字继电保护中CAN总线应用的可行性,详细分析了TMS320VC54X DSP的高速、双向、多通道带缓冲串行接口McBSP的内部时钟和同步信号流程,由此得出McBSP与CAN控制器接口的主从方式选择,时钟信号、帧同步信号的产生,数据收发的沿边选择,时序配合等寄存器关键位的配置。
总线 通信 实现 CAN 系统 继电 保护 数字 相关文章:
- PLC、FCS、DCS三大控制系统区别(07-07)
- 为什么要使用CAN总线?(05-31)
- 基于CAN总线的智能家居安防系统设计(10-11)
- 如果CAN总线中节点ID相同会怎样?(08-31)
- 使用QDR-IV设计高性能网络系统之二(06-08)
- CANOpen协议如何保证通讯不丢帧?(06-08)