计算机测量与控制.2005.13(9) ·988 Computer Measurement Control 设计与应用 文章编号:1671-4598(2005)09.0988.02 中图分类号:TP336 文献标识码:B 一种新型抗干扰32位串行编码及其实现 徐虎,冯金富 (空军工程大学工程学院,陕西西安710038) 摘要:针对航空系统电磁干扰严重,普通串行信号不能满足可靠性传输要求,详细介绍了某航空系统采用的32位串行码,此编码 抗干扰性强,可靠性高;并基于单片机设计了该编码的发送、接收电路,用来实现32位串行码与普通串行码之间的相互转换;实践证 明该系统运行稳定,可靠。 关键词:抗干扰;串行码;单片机 Implementation of a Ne w Anti-interference 32 Bits Serial Code Xu Hu,Feng Jinfu (Xi'an Air Force Engineering Collage,Xi'an 710038,China) Abstract:Because of the serious electromagnetic disturbances in aerial system,the ordinary serial code is not reliable.A new anti-im terference reliable 32 bits serial code system is described.The designing method of sending and receiving the code based on chip microcom puter complete convert between the 32 bits serial code and ordinary serial code.Result shows that the system works reliably. Key words:anti-interference;serial code;chip microcomputer 0引言 分量的积累问题,这将导致信号的失真与畸变,使传输的可靠 一般说来,航空系统中所装电子设备数量较多,布局紧 性降低。所以虽然在计算机网络技术中,NRZ编码受到人们 凑,供电复杂(直流电、高频交流电),电流大(几十甚至 的关注,成为主流编码技术,FDDI、100BASE·T及1O0VG 100多A),设备中还大量使用继电器,使电流瞬间通断,造 ,AnyLAN等高速网络中都采用了NRZ编码,但是在电磁干 成系统内部电磁干扰严重,普通数字信号不能够满足可靠传输 扰恶劣情况下,需要设计新的编码方式来达到高可靠性的要 的要求,本文介绍了一种新型32位串行码,对普通串行码进 求。 行调制后传输信息,使信号的抗干扰性能大大增加,能够在恶 可以采用改进的32位串行码来克服普通串行码的不足, 劣的电磁环境下可靠传输数据。此种新型抗干扰高可靠性编码 如图1·所示。首先,变不归零码为归零码,解决了数位难 不仅可用于航空领域,在某些电磁干扰严重的其它领域也有广 以分辨的问题,而且接收端可以利用编码自身携带的时钟信 阔的应用前景。本文详细介绍了该编码的技术参数,并用单片 息,保证与发送端同步;第二,变单极性码为双极性码,用+ 机实现了编码的发送和接收。 5V表示数据1,用,5V表示数据0,加大了1和0之间的电 132位串行码介绍 位差,有利于提高传输的可靠性,第三;采用外部屏蔽的双纹 线传递信号,两条线上信号幅值相同,相位相反,当a、b两 计算机技术中普遍采用的串行码是一种不归零NRZ(Non 种信号同时传输时,自身引起的周围空间磁场的变化刚好抵 -Return to Zero)编码四,用高电平表示1,用低电平表示0, 消,增加了抗干扰能力;第四,在连续发送的32位串行码之 并且在表示一个码元时,电压在同一时钟周期内无须回到零, 间,插入一定时钟周期的低电平,作为识别不同代字的标志。 如图1,1所示。NRZ编码是一种全宽码,即一位码元占一个 在实际应用中,1个代码字包含32个数位,其中前8位为 单位脉冲的宽度。全宽码的优点:一是每个脉冲宽度越大,发 地址位,指明信息所要送至的目的设备,9~31位是具体信 送信号的能量就越大,这对于提高接收端的信噪比,二是脉冲 息,第32位是奇偶校验位。 时间宽度与传输带宽成反比关系,即全宽码在信道上占用较窄 的频带,并且在频带中包含了码位的速度。NRZ编码 的主要缺点是:当出现连续0或1时,首先难以分辨 一位的结束和另一位的开始,这需要通过某种方法在 发送端和接收端提供同步或定时;其次是会产生直流 收稿日期:2005-01-12;修回日期:2005-02-07。 a OY- 基金项目:空军某新型飞机地面检测设备因产化项目 (0Z03470)。 作者简介:徐虎(1974·),男,湖北省宜昌市人,讲师, 硕士,主要从事飞机武器控制系统故障诊断方向的教学和研究 图1常用串行码与32位双极性串行码示意图 1994-2008 China Academic Journal Electronic Publishing House.All rights reserved.http://www.cnki.net
·988 · 计算机测量与控制. 20 05 . 13 ( 9) Computer Measurement & Control 设计与应用 收稿日期 :2005 - 01 - 12 ; 修回日期 :2005 - 02 - 07。 基金项目 :空军某新型飞机地面检测设备国产化项目 ( KJ Z03470) 。 作者简介 :徐虎(1974 - ) ,男 ,湖北省宜昌市人 ,讲师 , 硕士 ,主要从事飞机武器控制系统故障诊断方向的教学和研究。 文章编号 :1671 - 4598 (2005) 09 - 0988 - 02 中图分类号 : TP336 文献标识码 :B 一种新型抗干扰 32 位串行编码及其实现 徐 虎 , 冯金富 (空军工程大学 工程学院 , 陕西 西安 710038) 摘要 : 针对航空系统电磁干扰严重 , 普通串行信号不能满足可靠性传输要求 , 详细介绍了某航空系统采用的 32 位串行码 , 此编码 抗干扰性强 , 可靠性高 ; 并基于单片机设计了该编码的发送、接收电路 , 用来实现 32 位串行码与普通串行码之间的相互转换 ; 实践证 明该系统运行稳定 , 可靠。 关键词 : 抗干扰 ; 串行码 ; 单片机 Implementation of a New Anti - interference 32 Bits Serial Code Xu Hu , Feng Jinf u (Xi’an Air Force Engineering Collage , Xi’an 710038 , China) Abstract : Because of t he serious electromagnetic disturbances in aerial system , t he ordinary serial code is not reliable. A new anti - in2 terference reliable 32 bits serial code system is described. The designing met hod of sending and receiving t he code based on chip microcom2 puter complete convert between t he 32 bits serial code and ordinary serial code. Result shows t hat t he system works reliably. Key words : anti - interference ; serial code ; chip microcomputer 图 1 常用串行码与 32 位双极性串行码示意图 0 引言 一般说来 , 航空系统中所装电子设备数量较多 , 布局紧 凑 , 供电复杂 (直流电、高频交流电) , 电流大 (几十甚至 100 多 A) , 设备中还大量使用继电器 , 使电流瞬间通断 , 造 成系统内部电磁干扰严重 , 普通数字信号不能够满足可靠传输 的要求 , 本文介绍了一种新型 32 位串行码 , 对普通串行码进 行调制后传输信息 , 使信号的抗干扰性能大大增加 , 能够在恶 劣的电磁环境下可靠传输数据。此种新型抗干扰高可靠性编码 不仅可用于航空领域 , 在某些电磁干扰严重的其它领域也有广 阔的应用前景。本文详细介绍了该编码的技术参数 , 并用单片 机实现了编码的发送和接收。 1 32 位串行码介绍 计算机技术中普遍采用的串行码是一种不归零 NRZ (Non - Return to Zero) 编码[1 ] , 用高电平表示 1 , 用低电平表示 0 , 并且在表示一个码元时 , 电压在同一时钟周期内无须回到零 , 如图 1 - I 所示。NRZ 编码是一种全宽码 , 即一位码元占一个 单位脉冲的宽度。全宽码的优点 : 一是每个脉冲宽度越大 , 发 送信号的能量就越大 , 这对于提高接收端的信噪比 ; 二是脉冲 时间宽度与传输带宽成反比关系 , 即全宽码在信道上占用较窄 的频带 , 并且在频带中包含了码位的速度。NRZ 编码 的主要缺点是 : 当出现连续 0 或 1 时 , 首先难以分辨 一位的结束和另一位的开始 , 这需要通过某种方法在 发送端和接收端提供同步或定时 ; 其次是会产生直流 分量的积累问题 , 这将导致信号的失真与畸变 , 使传输的可靠 性降低。所以虽然在计算机网络技术中 , NRZ 编码受到人们 的关注 , 成为主流编码技术 , FDDI、100BASE - T 及 100V G - AnyLAN 等高速网络中都采用了 NRZ 编码 , 但是在电磁干 扰恶劣情况下 , 需要设计新的编码方式来达到高可靠性的要 求。 可以采用改进的 32 位串行码来克服普通串行码的不足 , 如图 1 - Ⅱ所示。首先 , 变不归零码为归零码 , 解决了数位难 以分辨的问题 , 而且接收端可以利用编码自身携带的时钟信 息 , 保证与发送端同步 ; 第二 , 变单极性码为双极性码 , 用 + 5V 表示数据 1 , 用 - 5V 表示数据 0 , 加大了 1 和 0 之间的电 位差 , 有利于提高传输的可靠性 ; 第三 ; 采用外部屏蔽的双绞 线传递信号 , 两条线上信号幅值相同 , 相位相反 , 当 a、b 两 种信号同时传输时 , 自身引起的周围空间磁场的变化刚好抵 消 , 增加了抗干扰能力 ; 第四 , 在连续发送的 32 位串行码之 间 , 插入一定时钟周期的低电平 , 作为识别不同代字的标志。 在实际应用中 , 1 个代码字包含 32 个数位 , 其中前 8 位为 地址位 , 指明信息所要送至的目的设备 , 9~31 位是具体信 息 , 第 32 位是奇偶校验位
第9期 徐虎,等:一种新型抗干扰32位串行编码及其实现 ·989· 主拉计算机量易感境 时几几几几几几 P2 CLK 41s165 45185 74LS165 OUT AT99C205 图3 32位码发送过程波形图 图232位码发送电路原理图 2编码的实现 行码信号(OUTA、OUTB)。电路中各点的信号被形如图3 2.1发送 所示。 在发送32位串行码时,选用AT89C2051单片机作为具 2.2接收 体收发电路的微控制器,采用24MHz晶体振荡器,原理电路 在接收32位串行码时,首先需要对接收信号进行解调, 图如图2所示。 使双极性归零码变为普通数字电路容易处理的单极性不归零 在发送电路中,单片机的功能比较简单,仅用一个输出口 码,原理电路图如图4所示,电路中各点的波形如图5所示。 发出时钟周期为20μs的脉冲,其中每32位间隔4个周期(80 在解调32位码信号过程中,首先使信号(NA、NB)分 μs)的低电平,供给74LS165作为移位脉冲。 别通过一个二极管和一个三极管至a、b点,此过程中信号被 74LS165是一种常用的并行输入/串行输出移位寄存器1。 削去负电平,而且被反向;信号a、b又经过一个与门 该器件能在一个信号的控制下并行置入一个字节的数据,然后 74LS08,得到的信号c就是我们从串行码信息中提取的时钟信 在移位脉冲的作用下逐位移出。此处用了4个74LS165,可以 号,由于每个上升沿正好在时钟周期的中间,所以此信号不仅 从并行输入口接收来自主控计算机数据总线的4个字节(32 可以送往单片机进行计数,而且可以作为74HC595的移位脉 位)数据,在单片机的32个脉冲作用下,从串行输出口Q、Q 冲。另外,信号a、b还经过一个触发器74LS74,形成需要的 移出波形高低电平刚好相反的两个信号,再分别与移位脉冲信 单极性归零码信号d,送往4个串联74HC595的输入端。 号经过一个与门74LS08,形成信号a、b,然后用运算放大器 74HC595是一种串行输入1并行输出的移位寄存器,在 LM374对信号进行调制,就得到我们所需要的双极性32位串 移位脉冲(信号©)的作用下,将单极性归零码(信号d),在 PL6 74 ATESC2051 SER 07 74H0595 74H595 74HC695 主整计算机数据总烧 图5 32位码接收过程被形图 图432位码接收原理图 (下转第1016页) C 1994-2008 China Academic Journal Electronic Publishing House.All rights reserved.http://www.cnki.net
第 9 期 徐虎 , 等 : 一种新型抗干扰 32 位串行编码及其实现 ·989 · 2 编码的实现 211 发送 在发送 32 位串行码时 , 选用 A T89C2051 单片机作为具 体收发电路的微控制器 , 采用 24M Hz 晶体振荡器 , 原理电路 图如图 2 所示。 在发送电路中 , 单片机的功能比较简单 , 仅用一个输出口 发出时钟周期为 20μs 的脉冲 , 其中每 32 位间隔 4 个周期 (80 μs) 的低电平 , 供给 74LS165 作为移位脉冲。 74LS165 是一种常用的并行输入/ 串行输出移位寄存器[2 ] 。 该器件能在一个信号的控制下并行置入一个字节的数据 , 然后 在移位脉冲的作用下逐位移出。此处用了 4 个 74LS165 , 可以 从并行输入口接收来自主控计算机数据总线的 4 个字节 (32 位) 数据 , 在单片机的 32 个脉冲作用下 , 从串行输出口 Q、Q 移出波形高低电平刚好相反的两个信号 , 再分别与移位脉冲信 号经过一个与门 74LS08 , 形成信号 a、b , 然后用运算放大器 LM374 对信号进行调制 , 就得到我们所需要的双极性 32 位串 行码信号 (OU TA、OU TB) 。电路中各点的信号波形如图 3 所示 。 212 接收 在接收 32 位串行码时 , 首先需要对接收信号进行解调 , 使双极性归零码变为普通数字电路容易处理的单极性不归零 码 , 原理电路图如图 4 所示 , 电路中各点的波形如图 5 所示。 在解调 32 位码信号过程中 , 首先使信号 ( INA、INB) 分 别通过一个二极管和一个三极管至 a、b 点 , 此过程中信号被 削去 负 电 平 , 而 且 被 反 向 ; 信 号 a、b 又 经 过 一 个 与 门 74LS08 , 得到的信号 c 就是我们从串行码信息中提取的时钟信 号 , 由于每个上升沿正好在时钟周期的中间 , 所以此信号不仅 可以送往单片机进行计数 , 而且可以作为 74 HC595 的移位脉 冲。另外 , 信号 a、b 还经过一个触发器 74LS74 , 形成需要的 单极性归零码信号 d , 送往 4 个串联 74 HC595 的输入端。 74 HC595 是一种串行输入 \ 并行输出的移位寄存器 , 在 移位脉冲 (信号 c) 的作用下 , 将单极性归零码 (信号 d) , 在
·1016 计算机测量与控制 第9期 显示、特征量的采集等。 错误的操作。 3关键性技术 通过容错性设计可最大限度降低人为因素对程序运行造成 3.1信号源的设计 的影响,并在所有程序模块设计完毕后进行详细测试,力争测 本系统对模拟转速源的精度要求比较高,要求稳定输出频 试到每一单元和分支,尽最大可能保证软件的准确性,从而提 率信号在110~120Hz范围内绝对稳定精度为0.03Hz。这对 高其可靠性。 数字逆变频率信号源来说,需要较高的D/A转换速率。我们 3.3.2参数的实时测量显示 采用控制CPU采用24MHz的主频,TI的LC7512具有100 如要实时显示测量参数,计算机就必须实时从检定模块或 ns的转换速率,在每个波形32等份的情况下满足了系统精度 检定装置采集测量参数,而计算机还要完成其他操作任务。因 要求。 此,如何分配计算机的时间就成了问题的关键。在LabWin- 3.2数据采集模块的设计 dows/CVI中,有个定时器对象,当定时器的时间一到,立即 本检测系统需要采集的电压和电流量比较多,各种信号变 执行其下面的回调函数。为此,在实际编程时,定时器的时间 送电路,有的输出量程小需要放大,有的有负压需要零位调 间隔要比数据采集时间长一些,以便计算机响应用户的操作。 整,示波器通道要求有较高的采样速率。为了防止信号干扰,4结束语 采用光电隔离电路进行设计。 该测试仪具有以下几个特点:(1)自动化程度高,操作简 3.3软件的设计 便,界面友好,检定流程规范;(2)可靠性与电磁兼容性: 系统的软件是整个校准系统的核心,是研制内容最多、最 (3)较强的容错性和安全性,(4)具有较强的开放性与通用 复杂的系统,因此软件的设计是非常关键的。 性。它的使用规范了计量工作,简便了性能测试与排故程序, 3.3.1软件可靠性设计 减轻了检测人员的劳动强度,提高了检测工作效率。 关于软件的可靠性一般从下面几个方面考虑:即一致性、 准确性、简单性和容错性,其中有关容错性的设计是至关重要 参考文献: 的。这里主要考虑系统工作过程中对于非法操作和误操作的再[]刘胜利,陈国顺。用VXⅪ总线技术组建电子装备通用测试系统 确认提示等措施(如对输入粗大误差的判断提示)。在运行过 卩].计算机自动测量与控制,2000,8(4):40-42 程中用户不应按的按键都进行了特别处理,在程序中采取控制 [2]查光东.基于PC104总线的交流信号采集方法U].航空计算技 改变其应用属性的方法,有的使其暂时失效,有的使其不响应 术,2004,34(1) (上接第989页) J4:JBC TFO,J5 内部移位寄存器中逐位移动:同时单片机用一个输入口接收信 AJMPJ4 号©,首先判断各个32位码之间的4个周期的低电平间隙,找 J5:CLR TR0,TO关闭 到第一位有效数据;然后对脉冲计数,当计数到达32时,发 给74HC595一个锁存信号,将其移位寄存器中的数据锁存到 锁存寄存器中,同时发给主控计算机一个信号,通知它此时可 3小结 以通过数据总线读取一个完整的32位串行码。 本文介绍了某航空系统中采用的双极性32位串行码,该 单片机汇编程序中判断间隙和脉冲计数的关键代码如 编码抗干扰性强,可靠性高,适用于各种电磁环境恶劣情况下 下31: 的信号传输;并用单片机技术实现了该编码的发送和接收,成 444*生 果用于某型飞机地面检测设备国产化项日中的“武器控制系统 J0:MOV TH0,#0E8H:时间间隔为12s 检查仪”的研制,实践证明,该电路信号波形良好,数据接收 MOV TLO,#0E8H 可靠性高,功能完全满足要求,性能水平与国外信号发送、 MOV TMOD,#02H;设定T0定时器工作方式2 接收原设备相当。 J1JNBP3.4,J1;检测下降沿 JB P3.4,J1 参考文献: SETB TR0;定时器T0启动 [1]蔡皖东,陈亚滨。计算机网络培训教程[M].西安:西安电子科 J2 JBC TF0,J3;如TF0为1,跳至J3 技大学出版社,2000. UMPJ2;循环等待 [2]何书森,何华斌.实用数字电路原理与设计速成[M],福州:福 J3:CLR TR0;定时器T0关闭 建科学技术出版社,2000. JBP3.4,J0;找到最后一个下降沿 [3】李强.单片机软件抗干扰编程技术的探讨[)】.计算机测量与控 JM:MOV TMOD,#26H;设定T0为脉冲计数方式 制,2003,11(4):299-302. MOV TH0,#0E0H,计数为32个 [4】王海军,孙所义,印刷版的可靠性设计)】.计算机测量与控制, MOV TLO,#0EOH 2002,10(12):820-821. SETB TR0,T0启动 1994-2008 China Academic Journal Electronic Publishing House.All rights reserved.http://www.cnki.net
·1016 · 计算机测量与控制 第 9 期 显示、特征量的采集等。 3 关键性技术 311 信号源的设计 本系统对模拟转速源的精度要求比较高 , 要求稳定输出频 率信号在 110~120 Hz 范围内绝对稳定精度为 0103 Hz。这对 数字逆变频率信号源来说 , 需要较高的 D/ A 转换速率。我们 采用控制 CPU 采用 24 M Hz 的主频 , TI 的 TLC7512 具有 100 ns 的转换速率 , 在每个波形 32 等份的情况下满足了系统精度 要求。 312 数据采集模块的设计 本检测系统需要采集的电压和电流量比较多 , 各种信号变 送电路 , 有的输出量程小需要放大 , 有的有负压需要零位调 整 , 示波器通道要求有较高的采样速率。为了防止信号干扰 , 采用光电隔离电路进行设计。 313 软件的设计 系统的软件是整个校准系统的核心 , 是研制内容最多、最 复杂的系统 , 因此软件的设计是非常关键的。 31311 软件可靠性设计 关于软件的可靠性一般从下面几个方面考虑 : 即一致性、 准确性、简单性和容错性 , 其中有关容错性的设计是至关重要 的。这里主要考虑系统工作过程中对于非法操作和误操作的再 确认提示等措施 (如对输入粗大误差的判断提示) 。在运行过 程中用户不应按的按键都进行了特别处理 , 在程序中采取控制 改变其应用属性的方法 , 有的使其暂时失效 , 有的使其不响应 错误的操作。 通过容错性设计可最大限度降低人为因素对程序运行造成 的影响 , 并在所有程序模块设计完毕后进行详细测试 , 力争测 试到每一单元和分支 , 尽最大可能保证软件的准确性 , 从而提 高其可靠性。 31312 参数的实时测量显示 如要实时显示测量参数 , 计算机就必须实时从检定模块或 检定装置采集测量参数 , 而计算机还要完成其他操作任务。因 此 , 如何分配计算机的时间就成了问题的关键。在 LabWin2 dows/ CVI 中 , 有个定时器对象 , 当定时器的时间一到 , 立即 执行其下面的回调函数。为此 , 在实际编程时 , 定时器的时间 间隔要比数据采集时间长一些 , 以便计算机响应用户的操作。 4 结束语 该测试仪具有以下几个特点 : (1) 自动化程度高 , 操作简 便 , 界面友好 , 检定流程规范 ; (2) 可靠性与电磁兼容性 ; (3) 较强的容错性和安全性 ; (4) 具有较强的开放性与通用 性。它的使用规范了计量工作 , 简便了性能测试与排故程序 , 减轻了检测人员的劳动强度 , 提高了检测工作效率。 参考文献 : [1 ] 刘胜利 , 陈国顺. 用 VXI 总线技术组建电子装备通用测试系统 [J ]. 计算机自动测量与控制 , 2000 , 8 (4) : 40 - 42. [2 ] 查光东. 基于 PC/ 104 总线的交流信号采集方法 [J ]. 航空计算技 术 , 2004 , 34 (1) . (上接第 989 页) 内部移位寄存器中逐位移动 ; 同时单片机用一个输入口接收信 号 c , 首先判断各个 32 位码之间的 4 个周期的低电平间隙 , 找 到第一位有效数据 ; 然后对脉冲计数 , 当计数到达 32 时 , 发 给 74 HC595 一个锁存信号 , 将其移位寄存器中的数据锁存到 锁存寄存器中 , 同时发给主控计算机一个信号 , 通知它此时可 以通过数据总线读取一个完整的 32 位串行码。 单片机汇编程序中判断间隙和脉冲计数的关键代码如 下[3 ] : ……. J0 : MOV TH0 , # 0E8 H ; 时间间隔为 12μs MOV TL0 , # 0E8 H MOV TMOD , # 02 H ; 设定 T0 定时器工作方式 2 J1 :J NB P3. 4 , J1 ; 检测下降沿 JB P3. 4 , J1 SETB TR0 ; 定时器 T0 启动 J2 :JBC TF0 , J3 ; 如 TF0 为 1 ,跳至 J3 AJ MP J2 ; 循环等待 J3 : CLR TR0 ; 定时器 T0 关闭 JB P3. 4 , J0 ; 找到最后一个下降沿 J M :MOV TMOD , # 26 H ; 设定 T0 为脉冲计数方式 MOV TH0 , # 0E0 H ; 计数为 32 个 MOV TL0 , # 0E0 H ; SETB TR0 ; T0 启动 J4 :JBC TF0 , J5 AJ MP J4 J5 : CLR TR0 ; T0 关闭 ……. 3 小结 本文介绍了某航空系统中采用的双极性 32 位串行码 , 该 编码抗干扰性强 , 可靠性高 , 适用于各种电磁环境恶劣情况下 的信号传输 ; 并用单片机技术实现了该编码的发送和接收 , 成 果用于某型飞机地面检测设备国产化项目中的“武器控制系统 检查仪”的研制 , 实践证明 , 该电路信号波形良好 , 数据接收 可靠性高[4 ] , 功能完全满足要求 , 性能水平与国外信号发送、 接收原设备相当。 参考文献 : [1 ] 蔡皖东 , 陈亚滨. 计算机网络培训教程 [ M ]. 西安 : 西安电子科 技大学出版社 , 2000. [2 ] 何书森 , 何华斌. 实用数字电路原理与设计速成 [ M ]. 福州 : 福 建科学技术出版社 , 2000. [3 ] 李强. 单片机软件抗干扰编程技术的探讨 [J ]. 计算机测量与控 制 , 2003 , 11 (4) :299 - 302. [4 ] 王海军 , 孙所义. 印刷版的可靠性设计 [J ]. 计算机测量与控制 , 2002 , 10 (12) :820 - 821