一种基于PC104的测试仪器

   2023-06-15 互联网2890
核心提示:PC104是嵌入式PC的机械标准,他秉承了IBMPC开放式总线结构的优点,与IBMPC完全兼容,他具备嵌入式控制的特殊要求:体积小、高可

PC104是嵌入式PC的机械标准,他秉承了IBMPC开放式总线结构的优点,与IBMPC完全兼容,他具备嵌入式控制的特殊要求:体积小、高可靠性、长寿命、编程调试方便,所以在测试领域基于PC104的智能仪器得到了广泛应用。

该仪器用来测量某种安全机构的参数(如多开关触片接触电阻、触片间绝缘电阻等)以及完成相应的控制功能,所选用的是386机型,配有2 Mb在板RAM,4 Mb电子硬盘,用C语言编程。本文阐述了该测试仪器的组成,PC104扩展I/O接口的译码电路和西文DOS下编辑中文菜单的简单方法。

1 仪器工作原理

EL屏以中文菜单形式显示操作内容,用户通过小键盘进行操作选择,PC104通过扩展I/O控制继电器阵列选通相应的测量通路,被测量经过放大器变成电压输入信号,输入信号经A/D变换变成数字量,进入PC104处理后,去EL屏显示或经过微打打印输出。PC104通过输入相应的状态信号完成控制功能,由于是对多开关测量,所以要采用总线结构,每一个测量对象分别接到总线上,经过共同的放大器调整后进入A/D。

2 扩展I/O接口的译码电路

PC104与IBM PC完全兼容,所以他采用I/O独立编址方式,存储地址和I/O接口地址可以重叠,用不同的指令进行读写操作。当执行I/O指令时,只能对选中的口地址进行读写操作,这就需要进行口地址译码。PC104中使用A0~A9地址位来表示I/O口地址,既有1 024个口地址,A9=0表示为系统板上I/O口地址,A9=1表示为扩充插槽接口卡上的I/O口地址。用户要制作接口电路卡时,其口地址要保证A9=1,既口地址为200H~3FFH,这些口地址中有的保留,有的已经被占用,所以设计接口卡时,不能同时有和别的卡相同的地址。在IBM PC中I/O端口操作和DMA操作使用相同的地址线,数据线和读写控制信号(和)。区别这两种操作的信号是AEN,在DMA操作周期时,AEN高电平有效,而在I/O端口操作时,AEN无效为低电平。因此在I/O端口的译码与读写控制电路中应该使用AEN信号 ,只有AEN为低时,才对地址进行译码,然后由、控制读写,或者地址译码只对地址线进行,而将AEN与,结合起来去控制端口的读写,当AEN为高电平时,,的有效并不产生端口译码或读写操作 ,这样就可以避免误操作。

下面以扩展3片8255为例来具体介绍外部译码电路的设计,地址范围为300H~30BH。

3 利用PC104显示中文菜单

在中文DOS下运行C程序,必须将汉字库装入内存,这样对大的应用程序可能造成无法加载,为此介绍一下在西文DOS下显示汉字的方法。

汉字的显示就是利用汉字自身的字模,然后用画图的方法将汉字在图形方式下画出来。因为汉字的区位码已知,经过变换就可找出汉字字模在字库中的偏移地址,读出该汉字的字模,就可以显示汉字。在西文DOS下显示汉字有几种方法:建立小型字库,建立一个小型文件,定义静止结构数组等。由于中文菜单显示所用的汉字不多,所以采用定义静态数组的方法较合适,这种方法显示汉字既快速又实用。先编一个小程序将每一个要用的汉字字模以十进制的形式显示出来,将查到的汉字字模赋于数组,在显示中文菜单时利用数组值将汉字画出来。下面以显示16*16点阵汉字“自”字模为例来说明。

“自”的区号为55,位号为52,所以相对字库的偏移量为[BF](94*(55-1)+(52-1))*32=164 064。

用下面的程序就可以读出“自”的字模。

参考文献

[1]于英民,孙全,莫玮.计算机接口技术[M].北京:电子工业出版社,1996

[2]王士元.C高级实用程序设计[M].北京:清华大学出版社,1997


 
举报收藏 0打赏 0评论 0
 
更多>同类资讯
推荐图文
推荐资讯
点击排行
网站首页  |  关于我们  |  联系方式  |  使用协议  |  版权隐私  |  隐私政策  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  RSS订阅