论文部分内容阅读
摘 要:本文基于Z85C30芯片,研制了一种适用于CRH2型动车组HDLC总线装置,可用于从列车总线上接收并发送数据。本文详细介绍了该装置的软硬件设计。
关键词:HDLC;Z85C30;动车组
中图分类号:TP273.5
CRH2型动车组的车辆信息控制系统通过基于HDLC的车辆总线方式来传送信息。该方式能充分保证车辆信息控制系统通信的高可靠性和强实时性。本文针对CRH2型动车组,设计了一种HDLC总线装置,采用ZiLOG公司的串行通信控制器Z85C30芯片进行协议转换,实现与其它设备交换数据。
1 HDLC协议
HDLC协议是一种通用的数据链路层协议,广泛应用于设备与设备间的数据传输。因能在同步网上传输数据,数据链路传输速率较高,采用CRC校验机制,传输准确性也大为提高。HDLC协议采用一个特殊的标志字符“01111110”作为帧标志,实现数据帧的同步。如果传输的数据内容里包含了标志字符,则须采用易于用硬件实现的“0比特插入法”,来保证标志字符的唯一性。
2 Z85C30芯片介绍
Z85C30是一种串行通信控制芯片,具有A、B两路数据通道,可以搭配8位或16位单片机。该芯片能够完成串行到并行、并行到串行的转换,还能够处理异步格式、面向字節或比特的同步规程等。
Z85C30芯片主要性能如下:(1)同步速率:单片机设置为16MHz时钟时,传输速率可以达4Mb/s;(2)异步性能:每个字符可设定为5、6、7或8位,支持奇或偶校验;(3)字节同步性能:支持内、外同步,自动CRC产生和测试;(4)HDLC性能:“0”的自动插入和删除;报文间标志的自动插入;可选NRZ、曼彻斯特等多种编/解码方式;带数字锁相环。
Z85C30芯片引脚如图1所示。
图1 芯片功能图
其中,D0~D7为数据地址总线管脚,用于传送数据和指令。RD(———)、WR(———)为读、写信号管脚。CE(———)为片选信号管脚。A/B(————)为通道选择信号管脚,该管脚为高电平表示选择A通道,为低电平表示选择B通道。D/C(————)为数据命令选择信号管脚。该管脚为高电平表示数据传送,为低电平表示命令传送。INT(————)为中断请求信号管脚。INTACK(————————)为中断响应信号管脚。IEI为中断允许输入管脚。IEO为中断允许输出管脚。TxD、RxD为串行总线数据管脚。TRxC(——————)、RTxC(——————)为发送和接收时钟管脚。
3 硬件设计
本装置的主处理器选择高性能的AT89C51微处理器,外围芯片设计采用CPLD芯片来产生逻辑控制信号,采用Z85C30芯片做串行通信控制。主处理器及外围接口芯片的接口原理设计如图2所示。
图2 接口设计原理图
地址信号线通过CPLD译码后,产生Z85C30芯片的选择信号,同时也产生用于对串行通信进行控制的通道选择信号和数据命令选择信号。通过TxDA、RxDA、TxDB、RxDB四个芯片管脚,可以外接2路HDLC总线。
4 软件设计
对Z85C30芯片而言,当通过软件将D/C(————)管脚设置为高电平时,单片机就能直接读取接收缓冲区的数据。软件设计过程中,在读写Z85C30芯片的寄存器时需注意,读寄存器(WR0和RR0寄存器除外)时需要先进行一次写操作,再进行一次读操作。写寄存器(WR0和RR0寄存器除外)时同样需要进行两次连续的写操作。编写软件时,首先要对Z85C30芯片进行寄存器初始化,即对各寄存器依据所选择模式赋初始值。
完成初始化后,就可以打开中断,开始数据的接收和发送。
发送时,Z85C30将要发送的信息与发送标志字符、地址场、控制场等信息封装成帧后放入缓冲区后,自动发送。接收时,将装置设置为搜寻模式,就能自动搜寻同步标识。当检测到标识“01111110”时,就会认为下一个字节为地址场字节。对除了标志字符和异常结束标识外的其它数据字段,当Z85C30芯片发现有连续的5个“1”出现,且其后一个比特为“0”,会自动删除“0”,这样就能把接收到的数据按照HDLC协议,还原为原始发送数据。
5 结束语
本文介绍了一种动车组用HDLC总线装置的设计,详述了硬件接口设计和软件编程要点。装置目前在CRH2型动车组上进行了样车装车,能完成稳定可靠的数据传输。
参考文献:
[1]Zilog Inc.SCC/ESCC User’s Manual,2001.
作者简介:李宁(1980.02-),男,山东烟台人,高级工程师,博士,研究方向:试验技术、测试技术;张志强(1969.09-),男,黑龙江齐齐哈尔人,高级工程师,研究方向:试验技术、测试技术;贺竹林(1981.11-),男,山东日照人,工程师,研究方向:网络一致性;熊颉(1973.12-),男,湖南岳阳人,教授级高级工程师,研究方向:测试装备及技术;夏应贵(1974.07-),男,湖南常德人,高级工程师,研究方向:测试装备及技术。
作者单位:南车青岛四方机车车辆股份有限公司,山东青岛 266111;株洲南车时代电气股份有限公司,湖南株洲 412001
关键词:HDLC;Z85C30;动车组
中图分类号:TP273.5
CRH2型动车组的车辆信息控制系统通过基于HDLC的车辆总线方式来传送信息。该方式能充分保证车辆信息控制系统通信的高可靠性和强实时性。本文针对CRH2型动车组,设计了一种HDLC总线装置,采用ZiLOG公司的串行通信控制器Z85C30芯片进行协议转换,实现与其它设备交换数据。
1 HDLC协议
HDLC协议是一种通用的数据链路层协议,广泛应用于设备与设备间的数据传输。因能在同步网上传输数据,数据链路传输速率较高,采用CRC校验机制,传输准确性也大为提高。HDLC协议采用一个特殊的标志字符“01111110”作为帧标志,实现数据帧的同步。如果传输的数据内容里包含了标志字符,则须采用易于用硬件实现的“0比特插入法”,来保证标志字符的唯一性。
2 Z85C30芯片介绍
Z85C30是一种串行通信控制芯片,具有A、B两路数据通道,可以搭配8位或16位单片机。该芯片能够完成串行到并行、并行到串行的转换,还能够处理异步格式、面向字節或比特的同步规程等。
Z85C30芯片主要性能如下:(1)同步速率:单片机设置为16MHz时钟时,传输速率可以达4Mb/s;(2)异步性能:每个字符可设定为5、6、7或8位,支持奇或偶校验;(3)字节同步性能:支持内、外同步,自动CRC产生和测试;(4)HDLC性能:“0”的自动插入和删除;报文间标志的自动插入;可选NRZ、曼彻斯特等多种编/解码方式;带数字锁相环。
Z85C30芯片引脚如图1所示。
图1 芯片功能图
其中,D0~D7为数据地址总线管脚,用于传送数据和指令。RD(———)、WR(———)为读、写信号管脚。CE(———)为片选信号管脚。A/B(————)为通道选择信号管脚,该管脚为高电平表示选择A通道,为低电平表示选择B通道。D/C(————)为数据命令选择信号管脚。该管脚为高电平表示数据传送,为低电平表示命令传送。INT(————)为中断请求信号管脚。INTACK(————————)为中断响应信号管脚。IEI为中断允许输入管脚。IEO为中断允许输出管脚。TxD、RxD为串行总线数据管脚。TRxC(——————)、RTxC(——————)为发送和接收时钟管脚。
3 硬件设计
本装置的主处理器选择高性能的AT89C51微处理器,外围芯片设计采用CPLD芯片来产生逻辑控制信号,采用Z85C30芯片做串行通信控制。主处理器及外围接口芯片的接口原理设计如图2所示。
图2 接口设计原理图
地址信号线通过CPLD译码后,产生Z85C30芯片的选择信号,同时也产生用于对串行通信进行控制的通道选择信号和数据命令选择信号。通过TxDA、RxDA、TxDB、RxDB四个芯片管脚,可以外接2路HDLC总线。
4 软件设计
对Z85C30芯片而言,当通过软件将D/C(————)管脚设置为高电平时,单片机就能直接读取接收缓冲区的数据。软件设计过程中,在读写Z85C30芯片的寄存器时需注意,读寄存器(WR0和RR0寄存器除外)时需要先进行一次写操作,再进行一次读操作。写寄存器(WR0和RR0寄存器除外)时同样需要进行两次连续的写操作。编写软件时,首先要对Z85C30芯片进行寄存器初始化,即对各寄存器依据所选择模式赋初始值。
完成初始化后,就可以打开中断,开始数据的接收和发送。
发送时,Z85C30将要发送的信息与发送标志字符、地址场、控制场等信息封装成帧后放入缓冲区后,自动发送。接收时,将装置设置为搜寻模式,就能自动搜寻同步标识。当检测到标识“01111110”时,就会认为下一个字节为地址场字节。对除了标志字符和异常结束标识外的其它数据字段,当Z85C30芯片发现有连续的5个“1”出现,且其后一个比特为“0”,会自动删除“0”,这样就能把接收到的数据按照HDLC协议,还原为原始发送数据。
5 结束语
本文介绍了一种动车组用HDLC总线装置的设计,详述了硬件接口设计和软件编程要点。装置目前在CRH2型动车组上进行了样车装车,能完成稳定可靠的数据传输。
参考文献:
[1]Zilog Inc.SCC/ESCC User’s Manual,2001.
作者简介:李宁(1980.02-),男,山东烟台人,高级工程师,博士,研究方向:试验技术、测试技术;张志强(1969.09-),男,黑龙江齐齐哈尔人,高级工程师,研究方向:试验技术、测试技术;贺竹林(1981.11-),男,山东日照人,工程师,研究方向:网络一致性;熊颉(1973.12-),男,湖南岳阳人,教授级高级工程师,研究方向:测试装备及技术;夏应贵(1974.07-),男,湖南常德人,高级工程师,研究方向:测试装备及技术。
作者单位:南车青岛四方机车车辆股份有限公司,山东青岛 266111;株洲南车时代电气股份有限公司,湖南株洲 412001