精简ISA总线扩展应用实例
- 格式:doc
- 大小:434.55 KB
- 文档页数:8
精简ISA扩展总线应用英创公司的嵌入式网络模块系列产品均具有精简ISA 扩展总线,通常包括若干地址总线、8 位数据总线、读写控制线、片选控制线以及中断请求线。
英创公司所提供的评估开发底板将这些信号线制定了一个接口标准,采用双排20 芯IDC 插针,交错排列,用户可用该扩展总线进行硬件扩展。
片选线CS1出厂默认选择地址段为300H—37FH,例如,当(A6A5A4A3A2A1A0)=(0000101’b),CS1 加5 条地址线的译码输出端口地址为305H,以下是扩展总线接口的定义:1、总线时序图,以及和C 语言、汇编指令之间的关系为了便于用户理解精简ISA 总线接口如何进行编程,本文简单介绍C 语言中的指令、用户操作的函数与总线的时序之间的关系。
各个不同模块的CS1#片选地址范围不同,详见相关技术手册,下面以ETR232i 的使用为例进行讲解,在此CS1#对应的片选地址范围为300h——37Fh,其中A0——A6 的译码为0ah。
C 语言端口输出函数:outportb (0x30a, ub1 );//把ub1 字节送到0x30a 寄存器对应的汇编指令为:mov dx , 0x30a mov al , byte ptr ub1;byte ptr ub1 为变量ub1 对应的存储器out dx , al 对应的总线写时序图为(本文中的总线周期均以ETR232i 模块为例):C 语言端口输入函数:char ub1 = inportb (0x30a ); //把0x30a 地址寄存器的内容读入变量ub1 对应的汇编指令为:mov dx , 0x30a in al , dx mov byte ptr ub1, al ; byte ptr ub1 为变量ub1 对应的存储器tips:感谢大家的阅读,本文由我司收集整编。
仅供参阅!。
了解计算机扩展槽的类型和用途计算机扩展槽是计算机主板上的一个重要组成部分,它为计算机提供了扩展功能和升级硬件的能力。
在本文中,我们将详细介绍计算机扩展槽的类型和用途,以帮助读者更好地了解和应用计算机扩展槽。
一、ISA扩展槽ISA(Industry Standard Architecture)扩展槽是早期IBM PC兼容机广泛采用的一种扩展槽类型。
ISA扩展槽通常具有16位宽度,提供了传统的串行端口、并行端口、声卡、显卡等外设的接口。
ISA扩展槽的用途非常广泛。
首先,它可以用于添加各种不同类型的IO卡,如串口卡、并口卡、网卡等,以满足用户对于接口扩展的需求。
其次,ISA扩展槽可以用于添加显卡,提升计算机的图形处理能力。
此外,ISA扩展槽还支持声卡的添加,使计算机具备了音频输出功能。
然而,随着技术的进步和新一代计算机的发展,ISA扩展槽逐渐被PCI扩展槽所替代。
由于ISA扩展槽的数据传输速率较低,已经无法满足逐渐增长的计算机性能需求。
二、PCI扩展槽PCI(Peripheral Component Interconnect)扩展槽是一种高速、低成本、通用的扩展槽类型,成为计算机主板标配。
PCI扩展槽具有32位或64位宽度,传输速率高达133MB/s。
PCI扩展槽具有广泛的用途。
首先,它可以用于添加各种不同类型的IO卡,比如网卡、声卡、RAID卡等。
其次,PCI扩展槽还可以用于添加显卡,提升计算机的图形处理能力。
此外,PCI扩展槽还可以扩展存储控制器、视频采集卡等高性能外设。
需要注意的是,PCI扩展槽具有一定的兼容性。
PCI插槽支持PCI、PCI-X和PCI Express等多种规范的设备接口。
这使得用户可以兼容使用不同规范的PCI设备,实现更广泛的应用需求。
三、AGP扩展槽AGP(Accelerated Graphics Port)扩展槽是专为提升图形处理速度而设计的扩展槽类型。
AGP扩展槽通常具有32位宽度,传输速率高达266MB/s。
感谢您购买英创信息技术有限公司的产品:ETR232i嵌入式网络模块。
ETR232i是一款以R1610C为核心、以网络数据通讯为特色的嵌入式PC模块,其外形尺寸仅为74mm×53mm;配有Flash、串口、以太网接口、GPIO、精简ISA总线、实时时钟、LCD接口、矩阵键盘接口等板载资源;采用BC3.1作为开发调试工具;支持RS232/RS485数据通讯、常规TCP/IP应用、GPRS/CDMA远程数据通讯、NAT路由、无线网关、FTP服务器、Web服务器等多种应用;可用于通讯管理、工业控制、GPRS/CDMA 数据终端、仪器仪表等众多领域。
本手册详细列举了ETR232i的硬件配置、管脚定义及相关的技术指标供用户使用时备查。
此外,英创公司针对应用软件的开发编写有《ETR232i嵌入式网络模块编程手册》;针对评估底板的使用编写有《ETR232i嵌入式网络模块开发评估底板手册》。
这三个手册都包含在英创为用户提供的产品开发光盘里面,用户也可以登录英创公司的网站下载阅读。
用户还可以访问英创公司网站或直接与英创公司联系以获得ETR232i的其他相关资料。
英创信息技术有限公司联系方式如下:地址:成都市高新区高朋大道5号博士创业园B座402#邮编:610041联系电话:028-******** 85140028 028-******** 028-********传真:************网址:电子邮件:********************.cn目录1、主要技术指标 (3)2、外接管脚描述 (4)2.1ETR232I的CN1信号定义 (4)2.2ETR232I的CN2信号定义 (5)3、外形尺寸 (8)1、主要技术指标z RISC结构微处理器R1610C,96MHz主频,186指令集兼容z 640K常规内存(768K 可选),支持DOS标准应用z板载Flash文件系统,共512KB,应用程序可用空间326KBz 10/100Mbps快速以太网接口(100BASE-TX)z3个标准串口, COM1:RS232; COM2:TTL(9线); COM3:RS232/TTL z无需编程,可支持大多数LCD显示模块z8位通用数字IO(GPIO)z精简ISA扩展总线接口,主要支持I/O类型外设z可扩展高位地址线,以支持存储器类型外设z2个独立的外部中断请求输入z PC兼容的实时时钟RTCz直接支持M-System公司的DOC2000系列电子盘芯片或512KB Flash芯片z BC3.1集成开发环境,Turbo Debugger源码调试(交叉调试环境)z支持各种基于TCP/IP的网络通信应用,如以太网、GPRS、Web Server等z支持GSM07.10多路转换协议,保证GPRS数据通讯与AT指令并发操作z供电电压:5V±5%,工作电流:330mA,工作温度:-10℃—+65℃z模块尺寸:74mm×53mm,2个36芯双排IDC插针(0.1″间距)2、外接管脚描述ETR232i的外接管脚由两个标准0.1” 间距36芯双排插针CN1和CN2组成。
感谢您购买英创信息技术有限公司的产品:EM9161工控主板主板。
EM9161是一款面向工业自动化领域的高性价比嵌入式主板,其内核CPU为工业级品质的AT91SAM9261S,模块已预装正版Window CE5.0实时多任务操作系统,用户可直接使用Microsoft提供的著名免费软件开发工具eVC(+SP4)或微软的其他开发工具,在EM9161上直接开发应用程序。
英创公司针对EM9161提供了完整的接口低层驱动以及丰富的应用程序范例,用户可在此基础上方便、快速地开发出各种工控产品。
EM9161G是EM9161的增强型产品,其运行速度更快,各管脚功能与EM9161完全相同。
EM9161主要特点:●标准的Windows图形界面:EM9161带有工业标准的TFT彩色LCD及触摸屏接口,为客户提供高性能的人机界面。
●丰富的标准接口资源:作为一款高性能的嵌入式主板产品,EM9161带有多种标准接口,以满足不同应用需求。
这些接口包括:(1)以太网接口,支持标准WinSock以及基于WinSock的各类API;(2)4个标准异步串口;(3)2路USB HOST接口;(4)USB Device接口,支持ActiveSync方式对内部文件操作以及程序调试;(5)MicroSD卡接口,直接支持SD卡;(6)I2C总线;(7)32位GPIO;(8)CAN总线接口(可选);(9)精简ISA扩展总线。
●强大的应用开发工具:EM9161预装了微软的Windows CE操作系统,Windows CE是当前市场上最流行的实时多任务操作系统之一,微软针对CE的应用开发推出一系列完善的开发工具,eVC就是其中的代表,eVC是基于Visual C/C++发展的嵌入式版本,且可免费获取。
英创公司为EM9161的所有接口编写符合CE标准的驱动程序,因此用户可直接调用标准Windows API来操作各个通讯接口。
此外用户可利用微软工具链中所提供的远程维护工具或ActiveSync来对EM9161运行的程序进行调试,以及后续的产品维护。
一、ISA插槽:基于ISA总线的扩展插槽ISA插槽ISA插槽是基于ISA总线(Industrial Standard Architecture,工业标准结构总线)的扩展插槽,其颜色一般为黑色,比PCI接口插槽要长些,位于主板的最下端。
其工作频率为8MHz左右,为16位插槽,最大传输率16MB/sec,可插接显卡,声卡,网卡以及所谓的多功能接口卡等扩展插卡。
其缺点是CPU资源占用太高,数据传输带宽太小,是已经被淘汰的插槽接口。
目前还能在许多老主板上看到ISA插槽,现在新出品的主板上已经几乎看不到ISA插槽的身影了,但也有例外,某些品牌的845E 主板甚至875P主板上都还带有ISA插槽,估计是为了满足某些特殊用户的需求。
最早的PC总线是IBM公司1981年在PC/XT 电脑采用的系统总线,它基于8b it的8088 处理器,被称为PC总线或者PC/XT总线。
在1984年的时候,IBM 推出基于16-bit Intel 80286处理器的PC/AT 电脑,系统总线也相应地扩展为16bit,并被称呼为PC/AT 总线。
而为了开发与IBM PC 兼容的外围设备,行业内便逐渐确立了以IBM PC 总线规范为基础的ISA(工业标准架构:Industry Standard Architect ure )总线。
ISA 是8/16bit 的系统总线,最大传输速率仅为8MB/s ,但允许多个CPU 共享系统资源。
由于兼容性好,它在上个世纪80年代是最广泛采用的系统总线,不过它的弱点也是显而易见的,比如传输速率过低、CPU占用率高、占用硬件中断资源等。
后来在PC‘98 规范中,就开始放弃了ISA 总线,而Intel 从i810 芯片组开始,也不再提供对ISA 接口的支持。
使用286和386SX以下CPU的电脑似乎和8/16bit ISA 总线还能够相处融洽,但当出现了32-bit 外部总线的386DX处理器之后,总线的宽度就已经成为了严重的瓶颈,并影响到处理器性能的发挥。
用增强并口EPP协议扩展计算机的ISA接口用增强并口EPP协议扩展计算机的ISA接口摘要:提出了用EPP协议和CPLD扩展笔记本电脑的ISA接口的方法,给出了详细的技术解决方案。
扩展的ISA接口可以达到1310KB/s的双向通讯速度,与ISA本身的速度相当。
用户可以通过扩展的ISA接口直接使用市场上的基于ISA的接口卡。
关键词:ISA标准并口增强并口复杂的可编程逻辑器件利用微机开发便携式的数据采集、控制系统一直是微机应用系统开发者十分关心的课题。
特别在是基于笔记本电脑的数据采集和控制系统中,这一点显得尤为重要。
传统的数据采集和控制系统是针对台式机或者工控机设计的,一般都做成了标准的插卡,如A/D卡、D/A卡、RS232扩展卡等等,用户根据自己的实际需要选取合适的插卡,安装在自己的计算机中,再编写所需要的程序。
但是在基于笔记本电脑的应用系统中,由于其没有扩展槽,如果用户自己不再配一个扩展箱,就不能配置现成的插卡。
扩展箱的主要功能是扩展笔记本电脑的各种外围接口,即把笔记本电脑的功能扩展为与一个台式机相同的功能。
它需要单独的电源供应,体积比笔记本电脑本身大,又比笔记本重的多,价格在人民币7000~10000元左右。
如果能够找到一种便捷的方法,为笔记本电脑提供一个标准的总线接口,如ISA接口,那么现在市场上大部分的插卡都可以用在笔记本电脑上,不仅为用户节约了一个扩展箱投资,而且还为用户提供了更加广阔的选择余地。
本文提出了解决该问题的一个完整的技术方案。
1EPP并口最初的计算机并口只是为打印机设计的,数据只是单向传输。
IBM公司引进了PS/2设计后,并口开始支持双向数据传输,但是PS/2实际上并没有成为一个为业界广泛认可的双向并口模式。
1992年,由Intel、Xicom和Zenith公司共同制定了EPP1.7标准。
以后IEEE又发展了IEEE1284的EPP标准。
实际上EPP的标准共有三个,即EPP1.7、EPP1.9和IEEE1284,这些标准并不完全兼容,特别是EPP1.7和IEEE1284之间,不过这些对用户的使用并没有太大的影响。
内部总线、系统总线及外部总线举例一、内部总线1.I2C总线I2C(Inter-IC)总线10多年前由Philips公司推出,是近年来在微电子通信控制领域广泛采用的一种新型总线标准。
它是同步通信的一种特殊形式,具有接口线少,控制方式简化,器件封装形式小,通信速率较高等优点。
在主从通信中,可以有多个I2C总线器件同时接到I2C总线上,通过地址来识别通信对象。
2.SPI总线串行外围设备接口SPI(serialperipheral interface)总线技术是Motorola 公司推出的一种同步串行接口。
Motorola公司生产的绝大多数MCU(微控制器)都配有SPI硬件接口,如68系列MCU。
SPI总线是一种三线同步总线,因其硬件功能很强,所以,与SPI有关的软件就相当简单,使CPU有更多的时间处理其他事务。
3.SCI总线串行通信接口SCI(serialcommunication interface)也是由Motorola公司推出的。
它是一种通用异步通信接口UART,与MCS-51的异步通信功能基本相同。
二、系统总线1.ISA总线ISA(industrial standard architecture)总线标准是IBM公司1984年为推出PC/AT机而建立的系统总线标准,所以也叫AT总线。
它是对XT总线的扩展,以适应8/16位数据总线要求。
它在80286至80486时代应用非常广泛,以至于现在奔腾机中还保留有ISA总线插槽。
ISA总线有98只引脚。
2.EISA总线EISA总线是1988年由Compaq等9家公司联合推出的总线标准。
它是在ISA 总线的基础上使用双层插座,在原来ISA总线的98条信号线上又增加了98条信号线,也就是在两条ISA信号线之间添加一条EISA信号线。
在实用中,EISA总线完全兼容ISA总线信号。
3.VESA总线VESA(video electronics standard association)总线是 1992年由60家附件卡制造商联合推出的一种局部总线,简称为VL(VESA local bus)总线。
1、精简ISA总线GPIO扩展原理在工业领域,GPIO的应用非常广泛,英利嵌入式Linux工控板上自带有16路GPIO。
然而在实际应用中,经常需要多于16路的GPIO作为控制或者数据信号使用,这时候可以通过英利精简ISA总线进行GPIO扩展。
采用最普遍的逻辑芯片74HCT138、74HCT245和74HCT273即可以扩展出满足需求数量的GPIO。
此外,由于上述芯片的成本极其低廉,单片采购价只有几角钱,因此在满足功能需求的同时,也有效地控制了产品成本。
采用精简ISA总线进行GPIO扩展的方法是:使用74HCT138对片选控制信号CS1#、读信号RD#、写信号WE#以及地址线SA0-SA2进行地址译码,产生不同地址偏移量的片选信号,应用程序通过对不同地址的读写操作来控制相应的GPIO(GPIO通过74HCT245或者74HCT273连接到数据线SD0-SD7)。
2、DIN扩展示例(输入不需要锁存)数字输入DIN的扩展原理图如下所示:如图所示,地址译码产生了8个读片选信号,每一个信号通过控制一片74HCT245可以操作8路GP IO,这样,一次译码之后可以扩展出64路DIN。
本图中只使用了RD0#和RD1#两个片选信号,客户如有需要可以使用RD2#-RD7#继续进行扩展。
3、DOUT扩展示例(输出需要锁存)数字输出DOUT的扩展原理图如下所示:如图所示,地址译码产生了8个写片选信号,每一个信号通过控制一片74HCT273可以操作8路GP IO,这样,一次译码之后可以扩展出64路DOUT。
本图中只使用了WE0#和WE1#两个片选信号,www.l 客户如有需要可以使用WE2#-WE7#继续进行扩展。
综上所述,通过一次地址译码能够扩展出64路输入、64路输出一共128路GPIO,可以满足绝大多数工业控制领域的需求。
而这128路GPIO扩展所需的器件成本只有十几元,相对于工控整机产品而言,几乎可以忽略不计。
数据采集 电 子 测 量 技 术 EL ECTRONIC M EASUREM EN T TEC HNOLO GY 第31卷第6期2008年6月 基于ISA总线的数据采集卡的设计及应用贺小亮1 李艾华1 王帆胜2(1.第二炮兵工程学院502教研室 西安 710025;2.中国人民解放军第6916工厂 廊坊 065000)摘 要:本文介绍了基于ISA总线的数据采集卡的硬件电路和软件设计。
针对传统数据采集卡中电压测量电路的零点校正和满刻度校正是用滑动变阻器来实现的,设计了一种新的采用D/A转换芯片、存储器和集成运算放大器的电路,代替了传统的滑动变阻器校正方法,实现了自动校正,提高了调整精度。
采用新的校正电路的另一个优点是可以采用各种非线性校准技术,对电压测量电路的非线性进行自动校准。
关键词:ISA总线;数据采集;自动校正中图分类号:TP18 文献标识码:ADesign and application of the data acquisition card based on ISA busHe XiaoLiang1 Li Aihua1 Wang Fansheng2(1.t he Second Artillery Engineering College,Xiπan710025;2.t he6916t h Plant of PL A,Langfang065000)Abstract:This paper presents the hardware circuit and software design of data acquisition card based on ISA ing the D/A convert chip,memorizer and integrated OP,the new circuit is designed instead of the traditional emendation with slip rheostat.The result shows that this design can achieve the auto2emendation with high precision,and auto2 calibrate the nonlinear with calibration of nonlinear technology in the voltage measurement circuit.K eyw ords:ISA bus;data acquisition;auto calibrating0 引 言目前,工业系统总线具有代表性的有ISA总线、PXI 总线和PCI总线,其中ISA总线因其产生最早、应用接口简单仍在许多对传输速度要求不是很高的场合被使用。
精简ISA总线扩展应用实例ARM的嵌入式主板系列产品为了支持客户的各种应用扩展,所有的ARM9系列和X86系列的嵌入式主板均带有精简ISA扩展总线。
ISA总线是PC机最经典的扩展总线(在嵌入式领域,通常以PC104总线的形式出现),在工业控制领域有着广泛的应用,以及深厚的应用基础。
所谓精简ISA总线就是在保持通用ISA总线时序不变的前提下,仅保留常用的总线信号,以最大限度的减少总线总的信号数量,以适应模块的小型化。
ARM的精简ISA总线包括8位数据总线、5位地址总线(可扩展到13位)、片选控制线、读写控制线以及中断请求线。
ARM所提供的评估开发底板将这些信号线制定了一个接口标准,采用双排20芯IDC插针,用户可利用精简ISA总线进行系统功能的扩展。
在ARM的精简ISA总线中,设置了2条独特的片选控制信号CS0#和CS1#,这样就省去了大量的高位地址总线。
CS0#和CS1#为低电平有效的脉冲信号。
在x86 系列的嵌入式产品中,CS0#片选信号的地址区域为0x200–0x21F,CS1#片选信号的地址区域为0x300 – 0x31F。
在ARM9系列的嵌入式产品中,客户就不用关心精简ISA总线的绝对地址,只要选定一个片选信号及基于这个片选的地址偏移量即可。
如在X86系统下选用了CS1作片选信号,对0x301进行操作,则相对于ARM系统,可使用CS1#、地址偏移量为1的端口。
ARM9系列板卡的CS0#、CS1#所对应的地址区域范围有所不同。
EM9000有13条地址线,每位片选可访问8K的地址空间。
EM9160、EM9161的每位片选可访问32 个地址空间。
EM9260、EM9360的CS0#可访问到8K的地址空间,CS1#可访问到1K的地址空间。
以下是ARM所提供的精简ISA扩展总线接口的信号定义:信号名称及简要描述精简ISA信号名称及简要描述PIN# PIN#RESET#,复位输出,低有效 1 2 SA0,地址总线SD0,数据总线,LSB 3 4 SA1,地址总线SD1,数据总线 5 6 SA2,地址总线SD2,数据总线7 8 SA3,地址总线SD3,数据总线9 10 SA4,地址总线SD4,数据总线11 12 WE#,写信号控制线,低有效SD5,数据总线13 14 RD#,读信号控制线,低有效SD6,数据总线15 16 CS1#,I/O片选线,低有效SD7,数据总线,MSB 17 18 VCC,电源输出IRQ,中断请求,上升沿有效19 20 GND,公共地为了便于用户理解精简ISA总线接口如何进行编程,本节以x86指令和ARM系统为例,简单介绍基于ARM嵌入式主板的精简ISA的应用。
由于x86、EM9000、EM9x6x三种系统的ISA总线读写操作函数不一样,所以在具体使用时,应当参考相应的'*.h'文件。
以下是基于ARM的嵌入式主板的精简ISA总线操作指令表,以便查询:系统ISA读ISA写x86系列inport( ) 或inportb( ) outport( ) 或outportb( )EM9000 EM9000_READ( ) EM9000_WRITE( )EM9x6x系列ISA_ReadUchar( ) ISA_WriteUchar( )X86系统使用DOS操作系统,其指令也是标准的C函数,所以操作ISA时使用的时绝对地址。
ARM 嵌入式主板使用的WINCE操作系统,存在地址映射问题,同时使用户更加方便对ISA的使用,所以对ISA 操作的过程被封装成一个操作函数后再提供给用户,在对ISA操作时不需要给出绝对地址,但是需要指明所使用的片选信号及基于当前片选信号的偏移地址。
下面的读操作也是相同的。
ISA总线的写操作:C语言ISA总线写操作函数:outportb ( 0x301, ub1 ); // 将ub1的数据写入0x301地址或寄存器EM9000 ISA总线写操作函数:#define CS1# 1 // ARM系统的CS1片选信号的定义,以下不再说明EM9000_WRITE ( CS1# , 0x1 , ub1 ); // 将ub1的数据写入CS1片选信号使能的1偏移地址EM9x6x ISA总线写操作函数:ISA_WriteUchar ( CS1#, 0x1 , ub1); // 将ub1的数据写入CS1片选信号使能的1偏移地址对应的总线写时序图为(本文中的总线周期示意图以ARM系列模块为例):ISA总线的读操作:C语言ISA总线读操作函数:UCHAR ub1 = inportb ( 0x301 ); // 将0x301地址或寄存器的数据读入ub1EM9000 ISA总线读操作函数:UCHAR ub1 = EM9000_READ ( CS1# , 0x1 ); // 将CS1片选信号使能的1偏移地址的数据读入ub1EM9x6x ISA总线读操作函数:ISA_ReadUchar ( CS1#, 0x1 , &ub1); // 将CS1片选信号使能的1偏移地址的数据读入ub1对应的总线时序关系为:如果应用程序要读写一个16-bit的数据,即一个字时,在x86系统中,可以使用:unsigned int ui1 = inport(0x301);// 读16位数据outport(0x301, ui1);// 写16位数据利用C函数一次性完成操作,在ISA总线上会自动生成两个8位数据的读写周期,分别访问低位字节和高位字节。
在AD、DA的访问中经常会碰到这样的情形。
对ARM9系统,应用只能通过两次调用总线读写函数分别处理16位数据的低位字节和高位字节,如用EM9000 ISA读写操作为例:UCHAR ub1 = EM9000_READ ( CS1# , 0x1 ); // 获得低位字节。
UCHAR ub2 = EM9000_READ ( CS1# , 0x2 ); // 获得高位字节。
ui1 =(ub2 << 8)| ub1;// 高低位字节合成16位数据如果是写操作,则使用同样的方式:EM9000_WRITE ( CS1# , 0x1 , (ub1&0xff) ); // 写低字节数据EM9000_WRITE ( CS1# , 0x2 , (ub1>>8) ); // 写高字节数据在使用精简ISA总线进行扩展时,为了使总线的信号传输更加可靠,应在总线上的所有信号线加上RC网络以达到最佳的信号传输,同时,在高速的数据总线上,可以使用HCT245作一次驱动。
如下图所示:扩展应用1、用精简ISA进行数据I/O扩展用户如果使用的I/O较多,ARM提供的嵌入式主板上的数据I/O又不够使用要求,则用户可以使用精简ISA总线来进行扩展。
仅使用3片简单的74逻辑器件,就可方便扩展出8路输入8路输出。
ARM的ETA716扩展模块就是按照这种方式来实现的。
接口译码电路用一片74HCT139做完成。
在X86系统下,应用程序执行读操作时:unsigned char ub1 = inportb ( 0x300 );// 把外部状态读取并存放到ub1中在EM9000系统下,应用程序执行读操作:UCHAR ub1 = EM9000_READ (CS1# , 0x0);74HCT245被译码信号RD300H#选通,外部的输入状态INPUT0 – INPUT7将呈现在数据总线SD0 –SD7上,CPU将在RD300H#的上升沿时刻把总线上的数据锁存到ub1。
类似的,当应用程序执行写操作时:X86系统下写:outportb ( 0x300 , ub1 ); // 把ub1数据输出送到0x300端口在EM9000系统下:EM9000_WRITE (CS1# , 0x0 , ub1);把ub1的数据送到ISA数据总线上,译码信号WE300H#变低有效,并在其上升沿时刻把总线上的数据锁存到74HCT273的8个寄存器中,74HCT273的8个寄存器的输出OUTPUT0 – OUTPUT7将保持不变,直至有新数据写入。
当系统复位或上电启动时,低有效的复位信号RESET#将保证把74HCT273的输出清零。
2、用精简ISA总线进行A/D采集扩展(应用模块:ETA197)用户还可以通过精简ISA总线来扩展具有通用并行接口的A/D转换器,以实现简单的数据采集。
以下是通过ISA总线连接MAX197的信号接法,由于MAX197只有12位数据宽度,这里使用SA0地址线来作为高、低字节数据的选择,正好形成了两个连续的地址,方便函数的操作。
对MAX197进行AD转换的基本步骤为:X86系统下:1、写控制字节,启动AD转换:outportb(0x300, CtrlByte);2、延时15us读取转换数据:unsigned int ub1 = inport(0x300);// ub1为读入的16位数据或EM9000系统下:1、写控制字节,启动AD转换:EM9000_WRITE(CS1# , 0x0 , CtrlByte );2、延时15us3、读取转换数据:ub1 = EM9000_READ(CS1# , 0x0 );ub1 = ub1 << 8 ;ub1 = ub1 | (EM9000_READ(CS1# , 0x0 ) & 0xff );对于不同的系统,请参见相应的ETA197测试程序。
3、用精简ISA总线进行串口扩展(应用模块:ETA502)同样的,用户也可以使用精简ISA总线来扩展串口,如使用16C550芯片等。
一片16C550需要占用8个I/O端口地址,所以,要使用到三条地址线,且这三条地址线最好是连续的地址线,以方便应用程序的开发与控制。
要注意的是,16C550的复位是高电平复位,而精简ISA总线上的复位信号是低信号复位有效,所以在使用时,要将ISA总线上的复位信号进行反向,再连接到16C550的复位上。
如果要控制MODEM,则需要将16C550输出的信号经过RS232电平信号转换芯片的转换,再接一个DB9的接头,则构成了一个标准的RS232通讯接口。
除了以上的应用以外,用户还可以利用ARM的精简ISA总线,方便地完成其它多种功能模块的扩展,如10M/100M以太网口、CAN总线接口、USB主控模块、24位通用数字IO等等,ARM也相应地提供了应用模块ETA719、ETA718、ETA701、ETA608、ETA724等供客户参考。