新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 适用于变电站的CAN现场总线通信适配卡的设计

适用于变电站的CAN现场总线通信适配卡的设计

作者: 时间:2013-01-18 来源:网络 收藏

3、通讯适配卡的结构
这里研制的适配卡由ISA接口、双口RAM、微控制器89C52、通 信控制器SJA1000、CAN收发器82C250、数据缓存器、地址译码与控制逻辑和中 断信号控制逻辑等部分组成。其硬件结构框图如图1所示。

3.1双口RAM及控制电路
PC机与CAN控制器之间要进行数据的传送,必须在PC机和适配卡上的微处理器 之间建立双向的数据通道[5]。这里采用共用外部数据存储器的方法。集成双口R AM是一种性能优良的快速通信器件,适用于多CPU分布式系统及高速数字系统中,它 有两路完全独立的端口,每个端口都有完整的地址和数据控制线,这里采用IDT7006双 口RAM。对于双口RAM的应用,一个很重要的问题就是必须避免两个端口的争用,两 边同时读/写同一地址单元。但只要遵循一定的通信规则,使用合理的控制逻辑电路是可以 避免争用现象的。这里采用可编程逻辑器件EPM7128S来实现。EPN171285是一种典 型的EPLD器件,采用了先进的CMOS EEPROM技术,内含2 500个逻辑门和128个宏单 元,可以在PCB板上直接对芯片进行编程。在该适配卡中,EPM7128S主要完成数据 总线的驱动、中断信号处理以及共享存储器和数据缓冲器的地址译码。

适配卡上的双口RAM使用内存映像的方式直接映射到主机内存空间,实现适配卡与主机 的数据交换[6]。内存映象法是将适配卡的数据存储地址配置于PC机的主存储 器的高端,PC机可以采用写主存储器的方式将数据直接写在适配卡的数据存储器中, PC机不访问适配卡的微控制器时就可以读写数据存储器的数据。

3.2微控制器电路
微控制器采用ATMEL公司的89C52,它与MCS51系列完全兼容,带有8k字 节的系统可编程Flash和256B的片内RAM。它主要承担节点与PC机之间的数 据通信和协调管理工作。

当89C52与CAN总线通信时,通常由于总线上所挂的节点有多个,所以需要在适配卡 上设计一个数据缓冲器,用于暂存由节点上发来的数据。考虑到需要测控的节点较多 ,所以选用容量较大的缓冲器,这里选用DS1245。它是DALLAS公司生产的全静态非 易失性保护RAM,容量为128kbit,在芯片内部有锂电池和掉电保护电路,可防止因 适配卡掉电引起的测量数据丢失。

由于适配卡的工作环境干扰很严重,使得电路调试比较复杂且故障率也较高,本卡设计了三 种复位方式[7]。一种为上电复位方式,即在PC机通电时,同时对适配卡也进 行复位;第二种为在调试时出现故障,使用手动复位键进行复位;第三种方式为软件复位, 这种方法是使用初始化模块中的软件指令对适配卡进行复位。

3.3通信控制器
CAN通信控制器采用PHILIPS公司的SJA1000,它是一种独立的CAN控制器, 主要应用于移动目标和一般的工业环境中的区域控制。在本适配卡中SJA1000主要完成 具体的报文发送和报文接收。SJA1000的基本特点有:

(1)具有扩展的64字节接受缓冲器,先进先出(FIFO);

(2)支持CAN2.0A和CAN2.0B协议;

(3)支持11位和29位的标识码;

(4)通信速率可达1Mbps;

(5)24MHz时钟频率;

(6)可与不同的微处理器接口;

(7)可编程的CAN输出驱动器配置;可工作于BasicCAN和PeliCAN两种状态。

CAN控制器的内部采用模块结构,由七个部分组成:接口管理逻辑(IML)用于解释 来自CPU的命令,控制CAN寄存器的寻址,向主控制器提供中断信息和状态信息;发 送缓冲器(TXB)是CPU与BSP之间的接口,缓冲器可以存储有13个字节的一条 完整的报文;接收缓冲器(RXB)是接收滤波器和CPU之间的接口,用于存储从CAN总线上接收并被确认的信息;验收滤波器(ACF),用于对接收到的标识码进行验收 ,以决定是否接收下这条报文;位流处理器(BSP)是一个在发送缓冲器、RXFIFO和CAN总线之间控制数据流的队列发生器,它还执行总线上的错误检测、仲裁、填充和 错误处理;位时序逻辑(BTL),用于监视串行的CAN总线和位时序;错误管理逻辑 (EML),用于限制传输层模块的错误。

3.4辅助电路
CAN控制器SJA1000并不能直接与总线相连,还要通过总线驱动器才能接于总线上。 本适配卡采用82C250总线驱动器,为了增强CAN总线节点的抗干扰能力,SJA1000 的TX0和TX1通过高速光耦6N137后与82C250相连,使得总线上的各节点 具有很好的电气隔离。



评论


相关推荐

技术专区

关闭