为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

RS232_GPIB控制器的设计_黄君凯

2013-09-19 3页 pdf 99KB 21阅读

用户头像

is_606631

暂无简介

举报
RS232_GPIB控制器的设计_黄君凯 《电子技术应用》2006年第3期欢迎网上投稿 www.aetnet.cnwww.aetnet.com.cn MAX232 TX RX 计算机 串口 (COM) A T8 9C 51 控制信号 TE 数据总线 地址总线 时钟信号 中断信号 数据线 SN75160 N A T9 91 4 控制线 SN75161 串行 数据 图 1控制器硬件结构框图 G PI B 总 线 越来越多的测量仪器提供 GPIB(GeneralPurposeIn- terfaceBus)总线接口,通过该总线可以方...
RS232_GPIB控制器的设计_黄君凯
《电子技术应用》2006年第3期欢迎网上投稿 www.aetnet.cnwww.aetnet.com.cn MAX232 TX RX 计算机 串口 (COM) A T8 9C 51 控制信号 TE 数据总线 地址总线 时钟信号 中断信号 数据线 SN75160 N A T9 91 4 控制线 SN75161 串行 数据 图 1控制器硬件结构框图 G PI B 总 线 越来越多的测量仪器提供 GPIB(GeneralPurposeIn- terfaceBus)总线接口,通过该总线可以方便快捷地连接 带有 GPIB接口的仪器及计算机,组成一个 GPIB网络。 GPIB设备与计算机连接时,需要借助 GPIB接口板卡, 但这些 GPIB接口板卡价格昂贵,给仪器与计算机连接 带来不便。在大多数情况下计算机只连接一台 GPIB接 口仪器,并不需要这些功能复杂价格昂贵的 GPIB板卡。 面对单台仪器与计算机连接的功能需求,本文设计了一 种性价比突出的 RS232-GPIB控制器,该控制器利用计 算机最常用的 RS232接口,控制带有 GPIB接口的仪器, 在计算机与仪器之间建立数据传输的通道。同时,支持 SCPI(StandardCommandsforProgrammableInstrumentation) 指令集,只需在 Windows操作系统自带的工具软件超级 终端中输入 SCPI指令,便可方便地对仪器进行参数设置 和读取测试结果。 RS232-GPIB控制器的设计,旨在连接计算机和带 有 GPIB接口的测量仪器,并利用计算机的键盘和显示 器来操控仪器进行程控测量。本设计中计算机端接口为 RS232接口,使用这个串口作为通信工具,编程方便、连 接简单可靠,软件则采用 Windows操作系统自带的超级 终端。因此,可以很方便地完成计算机串口数据的接收 和发送,无需自行开发计算机端软件,节省了控制 器的开发时间。所设计控制器的核心是单片机,它 一端连接计算机 RS232串口,一端连接仪器 GPIB 接口,单片机接收来自计算机超级终端的 SCPI指 令,并转发给带有 GPIB接口的仪器执行。仪器执 行完成指令后将执行结果发送给控制器,控制器再 将所收到的数据通过 RS232串口传递给计算机,在 超级终端中显示。 1硬件设计 单片机是 RS232-GPIB控制器的核心,本设计 选用 ATEML公司的 AT89C51单片机。由于 89C51 应用领域广泛,拥有丰富的片上资源和总线式 I/O口, 支持高级语言编程,内部集成了符合 RS232数据规范的 异步串行控制单元。因此,使用 Tx和 Rx串行接口线与 外部串行传输数据,只需在单片机外部使用 MAX232芯 片进行电平转换,便可直接连接计算机的串行端口 (COM)。控制器的硬件结构如图 1所示,其中,GPIB接口 控制电路是控制器硬件设计的重点。 需要指出的是:使用智能化的 GPIB接口芯片,可以 大大简化 GPIB接口电路的设计。目前最常用的芯片有 两种,一种以美国国家仪器公司生产的 TNT4882芯片为 代表,将所有接口功能集成在芯片上,完全由硬件完成 接口功能,不需要其他辅助芯片,并且直接连接 GPIB总 线;另一种是以美国德州仪器公司生产的 TMS9914芯片 为代表,依靠软件编程来完成 GPIB接口功能,由接口芯 片 SN75160和 SN75161进行电平转换后连接 GPIB总 线。这二种芯片的比较如表 1所示。考虑到成本等因素, 本设计选用与 TMS9914芯片完全兼容的 NAT9914芯片 作为 GPIB总线接口芯片。NAT9914是一款的 GPIB 控制芯片,可以执行所有 GPIB接口功能,具有直接存储 器存取(DMA)功能,可编程时钟和波特率,采用 CMOS 驱动,并兼容 TTL电平,因此使用极为方便。同时,选用 RS232-GPIB控制器的设计 黄君凯,吴延军 (暨南大学 电子系,广东 广州 510632) 摘 要:描述了基于 RS232接口的 GPIB控制器的设计,利用单片机控制 GPIB接口芯片 NAT9914, 并通过 SCPI语句在 Windows操作系统自带的串口通信工具超级终端中,实现了计算机与 GPIB仪器 的通信与程控。 关键词:单片机 GPIB SCPI超级终端 集成电路应用 90 《电子技术应用》2006年第3期 本刊邮箱:eta@ncse.com.cn 芯片型号 工作电压(V) 功 能 特 点 TNT4882 5 讲者/听者/控制器 接口控制由硬件完成, 不需要辅助芯片 TMS9914 5 讲者/听者/控制器 接口控制由软件编程完成, 需要辅助芯片 表 1GPIB常用接口芯片 NAT9914初始化 进入NAT9914模式隔离GPIB总线 设置 NAT9914工作时钟频率 设置 GPIB总线延迟时间 TI 打开 NAT9914中断 设置 EOS结尾字符 设定 GPIB设备地址 将 NAT9914接入 GPIB总线 初始化完毕 图 2NAT9914芯片初始化 读取 ISR0寄存器 中断处理程序入口 ISR0的 BO位? 为零 ISR0的 BI位? ISR1的 GET位? 读取 ISR1寄存器 为零 ISR1的 DCAS位? 为零 中断处理程序退出 为零 发送数据处理 子程序 置位 接收数据处理 子程序 置位 接收 GET命令 处理子程序 置位 接收 DCAS命令 处理子程序 置位 图 3中断处理程序 SN75160作为数据转换器,SN75162作为握手线和控制 线转换器,与 NAT9914配套使用,连接 GPIB接口。 在图 1中,采用 89C51的 P0口连接 NAT9914的数 据接口,作为数据总线和 GPIB进行双向数据交换;P1 的 I/O口作为地址总线,对 NAT9914内部寄存器寻址。 NAT9914的中断输出连接在 89C51的外部中断接口上, 采用中断触发的方式管理 GPIB接口通信;NAT9914的 时钟信号一般采用独立时钟源。本设计中,考虑到控制 器的功能仅完成与单台 GPIB接口仪器之间的通信,时 钟频率的高低对 GPIB接口数据传输速度影响基本可以 忽略,因此直接使用 89C51的 ALE信号作为 NAT9914 时钟信号,这样可以充分利用 89C51的片上资源,简化 电路,降低硬件成本。 2软件设计 计算机端软件采用超级终端,用户在超级终端中键入 指令语句控制带有 GPIB接口的仪器。因 SCPI指令集提供 一个无缝的控制界面,使其在更换不同公司的同类 GPIB 设备时,不需要重新设定控制程序,可方便地和不同厂商 同类 GPIB设备的操作编程。因此,本设计选取对业界通 用的 SCPI指令集作为控制指令,以便 RS232-GPIB控制 器可以和绝大多数 GPIB接口仪器配合使用。 本设计中控制器软件采用 C51语言编写,编译后烧 录在 89C51单片机中运行。软件框架采用主程序加中断 调用方式,以提高功能模块的内聚性。软件功能分为 RS232串口通信程序和 GPIB接口通信程序两部分,分别 和两个中断相关:(1)串行通信中断。该中断负责 RS232 串口数据传输。(2)接收 NAT9914中断信号的外部中断。 该中断处理来自 GPIB接口数据通信的各种事件。主程 序在完成全部初始化后进入死循环状态,等待这两个中 断的发生。其中,RS232串口数据发送在主程序中执行, 而串口数据接收由串口中断处理程序完成。串口通信程 序较为简单,这里主要给出 GPIB通信程序结构。 NAT9914芯片开始工作之前需要对其进行初始化, 这部分代码作为主程序中初始化程序的一部分运行,包 括设置 ICR寄存器、选择时钟信号频率、设置 GPIB延迟 时间 T1、定义通信结束字符 EOS、设置 GPIB设备地址 (规定地址必须在 0~30之间,如果写入更大的地址,则 设备仍看作 30)。初始化完成后将 NAT9914接通 GPIB 总线。初始化流程如图 2所示。 GPIB控制部分的代码以中断方式运行,当 NAT9914 触发 89C51芯片的外部中断时,单片机中止正常工作, 将现场数据压入堆栈保护,并调用外部中断处理函数, 响应 NAT9914芯片的中断申请,其中断处理程序流程如 图 3所示。引起 NAT9914向单片机发出中断信号的事件 主要有四种:发送数据事件、接收数据事件、接收 GET 命令事件和接收 DCAS命令事件。中断频繁时会影响主 程序运行效率,但考虑到所设计的转换器功能单一,主 程序基本处于空转状态,四种事件的处理都在中断程序 中完成,因此,对主程序运行影响不大。GPIB接收数据 集成电路应用 91 《电子技术应用》2006年第3期欢迎网上投稿 www.aetnet.cnwww.aetnet.com.cn 图 6超级终端运行界面 COMMAND:> ID? GPIB:> IDTEK/TDS210,CF:91.1CT,FV:v1.09TDS2CM:CMV:v1.01 COMMAND:>CH1? GPIB:>CH1:PRO10;SCA1.0E0;POS-3.04E0;COUPDC;BANOFF COMMAND:>DATA? GPIB:> :DAT:ENCRIB;DESTREFA;SOUCH1;STAR1;STOP2500;WID1 COMMAND:>LANGENGL COMMAND:>LANGJAPA COMMAND:>ID? GPIB:>IDTEK/TDS210,CF:91.1CT,FV:v1.09TDS2CM:CMV:v1.01 和发送数据流程如图 4和图 5所示。 每次 GPIB接口数据接收中,NAT9914接收到第一 个字节数据后,即置位寄存器 ISR0中的 BI位,触发单 片机外部中断,单片机进入外部中断处理程序后,读取 ISR0寄存器,判断 NAT9914触发中断的原因是接收数 据事件后,调用接收数据子程序的执行,开始接收来自 GPIB仪器的数据。 在主程序中,NAT9914发送完第一个字节数据后, 即置位寄存器 ISR0中的 BO位,触发单片机外部中断。 单片机进入外部中断处理程序后,根据 BO位判断事件 类型为发送数据事件,则调用 GPIB数据发送程序,将缓 冲区中剩余的数据依次发送到 GPIB总线上。 3 运行情况及结果 本文设计的 RS232-GPIB控制器已成功用于计算机 和泰克 TDS210型示波器的 GPIB总线连接中。图 6是计 算机超级终端显示界面的部分截图,其中 COMMAND:> 为计算机键盘 SCPI命令输入提示符,GPIB:>为 GPIB连 接设备的反馈信息输出提示符,表示后面的信息来自 GPIB设备(即泰克 TDS210型示波器)。 首先输入的是查询命令,该类命令以‘?’结尾,当示 波器收到查询命令后,会立即反馈相关查询信息。ID?命 令,查询该示波器的品牌和型号信息,示波器回复相关 信息显示在超级终端上;CH1?命令,查询示波器 1号通 道的设置信息;DATA?命令,查询示波器当前使用通道 信息以及采样点数等信息。 接着输入控制命令,示波器收到该命令后,执行相 应的操作,但并不将执行结果反馈回来。如:LANGEN- GL命令,表示将示波器语言界面改为英文界面;LANG JAPA命令,表示将修改界面为日语界面。 参考文献 1NAT9914ReferenceManual.America,NationalInstruments Corporation,1995 2AndrewThomsonDesigningaGPIBDeviceUsingtheNAT9914. America,NationalInstrumentsCorporation,1998 3TNT4882TMProgrammerReferenceManual.America,National InstrumentsCorporation,1995 4袁海英.基于以太网的 GPIB控制器的设计和实现.测控 技术,2004;(3) 5王一鸣.GPIB芯片 TNT4882在多路程控电源中的应用. 单片机与嵌入式系统,2003;(6) 6刘 景,贾伯年.MCS-51单片机与微机通用并行接口 GPIB通讯的实现[J].微计算机信息,1996;(4) 7王崇杰.把打印口换成 GPIB-488接口.电子技术应用, 1996;(8) 8王毅敏,高勇章.用 GPIB接口实现通用计数器的 PC机程 控.电测与仪器,1995;(3) 9王向周,白志大.μPD7210智能 GPIB接口芯片及其接口驱 动程序的 C语言编程[J].微型机与应用,1994;(6) 10吴 昊,固亚平.USB-GPIB控制器设计.测控技术,2004; (3) 11陈章龙,韩 光.Motorola单片机接口技术手册.上海:复旦 大学出版社,1993 12方彦军,孙 健.智能仪器技术及其应用.北京:化学工业 出版社,2004 (收稿日期:2005-06-22) 数据接收子程序 从 DIR中读出数据 ISR0中 END位? 读取 ISR0寄存器 ISR0中 BI位? 子程序退出 置位 为零 为零 解析收到的数据 并处理 置位 循环 接收 图 4GPIB接收数据流程 数据发送子程序 ISR0中 BO位? 向 CDOR中写数据 检查刚写入的数据 退出发送子程序 是否为结尾字? Y N 为零 图 5GPIB发送数据流程 置位 集成电路应用 92
/
本文档为【RS232_GPIB控制器的设计_黄君凯】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索