主板i o接口的挡板能做AD检测吗

每日登录:+1西币&+1积分
&下次自动登录
绑定第三方账号登录 & & &
扫描二维码登录支持中心移动端
获取动态密码
售前文档售后文档热门视频系列热门版区售后服务概述自助服务帮助信息
You are here:
840d内装plc如何访问I\O接口
热点活动:
840d内装plc如何访问I\O接口 - 已解决问题
setp7在安装了toolbox后,不能直接使用I\O编程,是不是可以使用共享数据块编程?但我不知道共享数据块如何与plc的I\O口对应。例如i\o口的地址是i3.2,对应的共享数据块是哪一位?谢谢大侠指教!
产品版区:
悬赏西币:5 | 解决时间: 09:25:53 | 提问者:& - 新生&nbsp&nbsp第1级
问题ID:141415
楼主的问题具有一定的代表性,为什么不能使用I/0编程需要视情况而定。1)需要通过SETP7&上载&S7300站点。通过查看硬件组态配置,查看I/O模块的编址起始地址一般情况下为IB32&开始2)其它编址被系统所占用,不同区域有不同的含义,需要通过相应的接口配置而定。3)具体对应关系可以查看:《840D&简明调试手册》
中级技术员&nbsp&nbsp第6级&
以下网友赞了您的问题:
xue lang,画乡工控人
填写您的评论...
提问者对于答案的评价:可以参考
更多相关问题
本版精华问答
等待您来回答
作者/最新回复
最后回复时间
可以直接使用硬件组态好的I/O地址区。对I/O地址系统没有现成的隐射关系,如果用户需要这样的隐射关系,用户需要自己编程。
- 高级顾问&nbsp&nbsp第14级
& 16:31:48
那是你安装toolbox后,有一个840D的基础程序块库
- 中级工程师&nbsp&nbsp第10级
& 12:26:34
上一页1下一页&
扫描打开手机版
20秒帮我们优化支持中心!
欢迎您访问支持中心!
丰富的视频,全方位的文档,大量的网友交流精华……
为了更好的完善这些内容,我们诚邀您在浏览结束后,花20秒左右的时间,完成一个用户在线调查!
感谢您的支持!
欢迎您来到找答案
在“找答案”,已有超过7万个被解决的技术问题供您参考!
西门子技术专家亲自把关!常规的,简单的问题,在这里您都可以找到答案!
遇到了问题,就来“找答案”提问。
点击搜索框右侧的提问按钮,只需2步就能成功提交问题!分分钟就有无数大侠前来帮你。
在“找答案”每天都有大量的新问题。
别犹豫,只需要点击问题下方的“我要回答”就能参与。答题不光有积分相送,也会给您积攒大侠人气。
“找答案”定期开展各种有奖活动期待您的参与。
更有机会参加西门子高端用户峰会。领略西门子的博大精深!您所在位置: &
&nbsp&&nbsp&nbsp&&nbsp
7章I_O口扩展.ppt57页
本文档一共被下载:
次 ,本文档已强制全文免费阅读,若需下载请自行甄别文档质量。
文档加载中...广告还剩秒
需要金币:100 &&
7章I_O口扩展.ppt
你可能关注的文档:
··········
··········
TIMERIN:定时器/计数器的计数脉冲输入端。 TIMEROT:定时器/计数器。 2.
内部逻辑结构 8155的内部逻辑结构如图7.17所示。由图可以看出,8155由三部分组成,即:存储单元为256字节的静态RAM;3个可编程的I/O,其中2个口(A口和B口)为8位口,1个口(C口)为6位口;1个14位的定时器/计数器 图7.17
8155的内部逻辑结构 由以上可知8155有A口、B口、C口和定时器/计数器低8位以及定时器/计数器高8位五个端口,另外8155内部还有一个命令/状态寄存器,所以8155内部共有6各端口。对它们只需要使用即可实现编址,如表7-5所示。
8155的端口地址编码 AD7
命令/状态寄存器
定时器/计数器低8位
定时器/计数器高8位
8155的命令/状态字 1.
8155的命令字 由以上内容可知,8155的A口有输入和输出两种工作方式,B口也有输入和输出两种工作方式,而C口有输入方式(ALT1),输出方式(ALT2),A口控制端口方式(ALT3)以及A口 和B口控制端口方式(ALT4)四种工作方式。这些端口的工作方式是由8155内部的命令寄存器(命令字)来控制的。命令字除了规定端口的工作方式还规定了定时器/计数器的工作方式。命令字只能进行写操作。其格式如图7.18所示。 图7.18
8155的命令字 当A口或者B口以中断方式进行数据传送时,所需要的联络信号由C口提供,其中为A口提供,为B口提供。各联络信号的定义如表7-6所示。
联络信号 输出
对A口和B口控制(ALT4)
对A口控制(ALT3)
C口 联络信号共有三个,其中:
正在加载中,请稍后...单片机I/O口的结构的详解
我的图书馆
单片机I/O口的结构的详解
IO接口&1.什么是源型&漏型?什么是上拉电阻?下拉电阻?什么是&线驱动输出&集电极开路输出,推挽式输出?&&&&&&我们先来说说集电极开路输出的结构。集电极开路输出的结构如图1所示,右边的那个三极管集电极什么都不接,所以叫做集电极开路(左边的三极管为反相之用,使输入为“0”时,输出也为“0”)。对于图1,当左端的输入为“0”时,前面的三极管截止(即集电极c跟发射极e之间相当于断开),所以5v电源通过1k电阻加到右边的三极管上,右边的三极管导通(即相当于一个开关闭合);当左端的输入为“1”时,前面的三极管导通,而后面的三极管截止(相当于开关断开)。我们将图1简化成图2的样子。图2中的开关受软件控制,“1”时断开,“0”时闭合。很明显可以看出,当开关闭合时,输出直接接地,所以输出电平为0。而当开关断开时,则输出端悬空了,即高阻态。这时电平状态未知,如果后面一个电阻负载(即使很轻的负载)到地,那么输出端的电平就被这个负载拉到低电平了,所以这个电路是不能输出高电平的。再看图三。图三中那个1k的电阻即是上拉电阻。如果开关闭合,则有电流从1k电阻及开关上流过,但由于开关闭和时电阻为0(方便我们的讨论,实际情况中开关电阻不为0,另外对于三极管还存在饱和压降),所以在开关上的电压为0,即输出电平为0。如果开关断开,则由于开关电阻为无穷大(同上,不考虑实际中的漏电流),所以流过的电流为0,因此在1k电阻上的压降也为0,所以输出端的电压就是5v了,这样就能输出高电平了。但是这个输出的内阻是比较大的(即1kω),如果接一个电阻为r的负载,通过分压计算,就可以算得最后的输出电压为5*r/(r+1000)伏,即5/(1+1000/r)伏。所以,如果要达到一定的电压的话,r就不能太小。如果r真的太小,而导致输出电压不够的话,那我们只有通过减小那个1k的上拉电阻来增加驱动能力。但是,上拉电阻又不能取得太小,因为当开关闭合时,将产生电流,由于开关能流过的电流是有限的,因此限制了上拉电阻的取值,另外还需要考虑到,当输出低电平时,负载可能还会给提供一部分电流从开关流过,因此要综合这些电流考虑来选择合适的上拉电阻。如果我们将一个读数据用的输入端接在输出端,这样就是一个io口了(51的io口就是这样的结构,其中p0口内部不带上拉,而其它三个口带内部上拉),当我们要使用输入功能时,只要将输出口设置为1即可,这样就相当于那个开关断开,而对于p0口来说,就是高阻态了。对于漏极开路(od)输出,跟集电极开路输出是十分类似的。将上面的三极管换成场效应管即可。这样集电极就变成了漏极,oc就变成了od,原理分析是一样的。&另一种输出结构是推挽输出。推挽输出的结构就是把上面的上拉电阻也换成一个开关,当要输出高电平时,上面的开关通,下面的开关断;而要输出低电平时,则刚好相反。比起oc或者od来说,这样的推挽结构高、低电平驱动能力都很强。如果两个输出不同电平的输出口接在一起的话,就会产生很大的电流,有可能将输出口烧坏。而上面说的oc或od输出则不会有这样的情况,因为上拉电阻提供的电流比较小。如果是推挽输出的要设置为高阻态时,则两个开关必须同时断开(或者在输出口上使用一个传输门),这样可作为输入状态,avr单片机的一些io口就是这种结构。2.AVR单片机IO口的结构分析AVR的IO是真正双向IO结构,由于大部分网友都是从标准51转过来的,受标准51的准双向IO和布尔操作概念影响,没能掌握AVR的IO操作,所以有必要撰文说明一下,其实采用真正双向IO结构的新型MCU很多,常用的有&增强型51,PIC,AVR等。先简单的回顾一下标准51的准双向IO结构这种准双向IO结构的特点是1&输出结构类似&OC门,输出低电平时,内部NMOS导通,驱动能力较强(800uA);输出高电平靠内部上拉电阻,驱动能力弱(60uA)。2&永远有内部电阻上拉(P0口除外),高电平输出电流能力很弱,所以即使IO口长时间短路到地也不会损坏IO口(同理,IO口低电平输出能力较强,作低电平输出时不能长时间短路到VCC)3&作输入时,因为OC门有"线与"特性,必须把IO口设为高电平(所以按键多为共地接法)4&作输出时,输出低电平可以推动LED(也是很弱的),输出高电平通常需要外接缓冲电路(所以LED多为共阳接法)5&软件模拟&OC结构的总线反而比较方便-----例如&IIC总线*&P0口比较特殊,做外部总线时,是推挽输出,做普通IO时没有内部上拉电阻,所以P0口做按键输入需要外接上拉电阻。*&OC门:三极管的叫集电极开路,场效应管的叫漏极开路,简称开漏输出。具备"线与"能力,有0得0。*&为什么设计成输出时高电平弱,低电平强----是考虑了当年流行的TTL器件输入特性 &&&&相信我们大多数人都接触过51单片机,51单片机的I/O口是准双向I/O口。其实这种说法是不严谨的,我们知道,51单片机有4个I/O口,分别是P0、P1、P2、P3,这4个I/O口的结构并不完全一致,其中P0口是标准的双向I/O口,而P1、P2、P3则是准双向I/O口。&&&&&&关于准双向I/O口和双向I/O口的区别请看另一篇文章“准双向I/O口和标准双向I/O口的区别”&&&&&&AVR单片机的I/O口是标准的双向I/O口,它的IO结构就就比51的I/O口复杂多了,单是控制端口的寄存器就有3个&PORTx(数据寄存器)、DDRx(数据方向寄存器)、PINx(端口输入引脚);另外还有一个SFIOR(特殊功能I/O寄存器),这个寄存器中的PUD位控制全部I/O口的上拉电阻是允许还是被禁止。&&&&&&&&下图是AVR单片机通用I/O口结构示意图:&&&&&从图中可以看出,每组I/O口配备三个8位寄存器,它们分别是数据方向寄存器DDRx,数据寄存器PORTx,和输入引脚寄存器PINx(x表示端口序号)。I/O口的工作方式和表现特征由这3个I/O口寄存器控制。&&&&数据方向寄存器DDRx用于控制I/O口的输入输出方向,即控制I/O口的工作方式为输出方式还是输入方式。当DDRx=1时,I/O口处于输出工作方式。此时数据寄存器PORTx中的数据通过一个推挽电路输出到外部引脚,如下图。AVR的输出采用推挽电路提高了I/O口的输出能力,当PORTx=1时,I/O引脚呈现高电平,同时可提供输出20mA的电流;而当PORTx=0时,I/O引脚呈现低电平,同时可吸纳20mA电流。因此,AVR的I/O在输出方式下提供了比较大的驱动能力,可以直接驱动LED等小功率外围器件。&&&&&&当DDRx=0时,I/O处于输入工作方式。此时引脚寄存器PINx中的数据就是外部引脚的实际电平,通过读I/O指令可将物理引脚的真实数据读入MCU。此外,当I/O口定义为输入时(DDRx=0),通过PORTx的控制,可使用或不使用内部的上拉电阻,如下图:&&&&&AVR单片机通用I/O端口的主要特点为:双向可独立位控的I/O口ATmega16的PA、PB、PC、PD四个端口都是8位双向I/O口,每一位引脚都可以单独的进行定义,相互不受影响。如用户可以在定义PA口第0、2、3、4、5、6位用于输入的同时定义第1、7位用于输出,互不影响。Push-Pull大电流驱动(最大40mA)可控制的引脚内部上拉电阻每一位引脚内部都有独立的,可通过编程设置的,设定为上拉有效或无效的内部上拉电阻。当I/O口被用于输入状态,且内部上拉电阻被激活(有效)时,如果外部引脚被拉低,则构成电流源输出电流(uA量级)。DDRx可控的方向寄存器。AVR的I/O端口结构同其它类型单片机的明显区别是,AVR采用3个寄存器来控制I/O端口。一般单片机的I/O仅有数据寄存器和控制寄存器,而AVR还多了一个方向控制器,用于控制I/O的输入输出方向。由于输入寄存器PINx实际不是一个寄存器,而是一个可选通的三态缓冲器,外部引脚通过该三态缓冲器与MCU的内部总线连接,因此,读PINx时是读取外部引脚上的真实和实际逻辑值,实现了外部信号的同步输入。这种结构的I/O端口,具备了真正的读-修改-写(Read-Modify-Write)特性。AVR单片机通用I/O口设计注意事项:&&&&数据寄存器PORTx和数据方向寄存器DDRx为读/&写寄存器,而端口输入引脚PINx为只读寄存器。&&&&&但是需要特别注意的是,对PINx&寄存器某一位写入逻辑"1“&将造成数据寄存器相应位的数据发生"0“&与“1“&的交替变化。当寄存器MCUCR&的上拉电阻禁止位PUD置位时所有端口引脚的上拉电阻都被禁止。&&&&&&在&高阻态和输出高电平&两种状态之间进行切换时,上拉电阻使能或输出低电平这两种模式必然会有一个发生。编写程序时要注意两者的顺序。&&&&&通常,上拉电阻使能是完全可以接受的,因为高阻状态下强高电平输出还是上拉输出都是可以接受的。&&&&&如果使用情况不是这样,可以通过置位SFIOR&寄存器的PUD&来禁止所有端口的上拉电阻。在上拉输入和输出低电平之间切换也有同样的问题。用户必须选择高阻态或输出高电平作为中间步骤。不论如何配置DDxn,都可以通过读取PINxn&寄存器来获得引脚电平PINxn寄存器的各个位与其前面的锁存器组成了一个同步器。这样就可以避免在内部时钟状态发生改变的短时间范围内由于引脚电平变化而造成的信号不稳定。其缺点是引入了延迟。AVR&IO具备多种IO模式:&&&1&高阻态&,多用于高阻模拟信号输入,例如ADC数模转换器输入,模拟比较器输入&&&2&弱上拉状态(Rup=20K~50K),输入用。为低电平信号输入作了优化,省去外部上拉电阻,例如按键输入,低电平中断触发信号输入&&&3&推挽强输出状态,驱动能力特强(&20mA),可直接推动LED,而且高低驱动能力对称.使用注意事项:&&&&&&写用PORTx,读取用PINx&&&&&&&实验时,尽量不要把管脚直接接到GND/VCC,当设定不当,IO口将会输出/灌入&80mA(Vcc=5V)的大电流,导致器件损坏。&&&作输入时:&&&&&&&&1、通常要使能内部上拉电阻,悬空(高阻态)将会很容易受干扰。(表面看好像是51的抗干扰能力强,是因为51永远有内部电阻上拉,)&&&&&&&&2、尽量不要让输入悬空或模拟输入电平接近VCC/2,将会消耗太多的电流,特别是低功耗应用场合------CMOS电路的特点&&&&&&&&3、如果先前I/O口为输出状态,设置为输入状态后,必须等待1个时钟周期后才能正确的读到外部引脚PINx的值。&&&&&&&&4、功能模块(中断,定时器)的输入可以是低电平触发,也可以是上升沿触发或下降沿触发。&&&&&&&&5、用于高阻模拟信号输入,切记不要使能内部上拉电阻,影响精确度。例如ADC数模转换器输入,模拟比较器输入&&&&&&&&&&作输出时:&&&&&&&&采用必要的限流措施,例如驱动LED要串入限流电阻&&&复位时:&&&&&&&&复位时内部上拉电阻将被禁用。如果应用中(例如电机控制)需要严格的电平控制,请使用外接电阻固定电平&&&休眠时:&&&&&&&&作输出的,依然维持状态不变&&&&&&&&作输入的,一般无效,但如果使能了第二功能(中断使能),其输入功能有效。例如&外部中断的唤醒功能。AVR的C语言IO操作:&&&&&&&&&AVR的C语言基于ANSI&C,没有像51那样扩展了位操作(布尔操作),虽然汇编指令里面有SBI/CBI/SBIC/SBIS指令,&&&&&&&&&所以需要采用&位逻辑运算来实现,这是必须要掌握的。&&&&&&&&&IO口和功能寄存器的操作方法一样,但对于部分功能寄存器的读写有特殊要求,请参看手册。&&&&&&&&&不必考虑代码效率的问题,如果可能,GCCAVR会自动优化为SBI/CBI/SBIC/SBIS指令,跟汇编的效率是一样的。&&&&&&&&&&&&例如&iom16.h&里面定义了&#define&PA7&7&&&&&&&&&&&(这标准头文件定义了MCU的所有官方定义(包括寄存器,位,中断入口等),但管脚的第二功能没有定义)&&&&&&&&&想PA7为1&&&&&&&&&&&&PORTA|=(1&&PA7);&&&&&&&&&&&&&&&&&&&&想PA7为0&&&&&&&&&&&&PORTA&=~(1&&PA7);&&&&&&&&&想PA7取反&&&&&&&&&&&PORTA^=(1&&PA7);&&&&&&&&&想检测PA7是否为1&&&&if&(PINA&(1&&PA7))&{&};&&&&&&&&&想检测PA7是否为0&&&&if&!(PINA&(1&&PA7))&{&};&&&&&&&&*&&&&&&为左移运算符,不懂的就要好好复习C语言基础了。注意IO操作的顺序:&&&&&&&//上电默认DDRx=0x00,PORTx=0x00&输入,无上拉电阻&&&&&&&假设PA口驱动LED的负极,低电平灯亮初始化方法1:&&&&&&PORTA=0xFF;&&&&//内部上拉,高电平&&&&&&DDRA=0xFF;&&&&&//输出高电平---------灯一直是灭的初始化方法2:&&&&&&DDRA=0xFF;&&&&&//输出低电平--------灯被错误点亮了&&&&&&PORTA=0xFF;&&&&//输出高电平--------马上被熄灭了,时间很短(1个指令不到uS时间),灯闪了一下,眼睛无法察觉&&&&&&但要是这个IO口是控制炸药包的点火信号呢?工控场合要考虑可靠性的问题&&&&& 模拟OC结构的IIC总线的技巧:&&&&&&&&&&虽然AVR大多带有硬件IIC接口,但也有需要使用软件模拟IIC的情况&&&&&&&&&&可以通过使用外部上拉电阻+控制DDRx的方法来实现OC结构的IIC总线。&&&&&&&&&&IIC的速度跟上拉电阻有关,内部的上拉电阻阻值较大(Rup=20K~50K),只能用于低速的场合&&&&&&&&&&#define&SDA&&&&&0&&&&//PC0&&&&&&&&&&#define&SCL&&&&&1&&&&//PC1&&&&&&&&&&(程序初始化设定&SDA和SCL都是&PORT=0,DDR=0)&&&&&&&&&&#define&SDA_0()&&&DDRA|=(1&&SDA)&&&&//输出低电平&&&&&&&&&&#define&SDA_1()&&&DDRA&=~(1&&SDA)&&&//输入,外部电阻上拉为高电平&&&&&&&&&&#define&SCL_0()&&&DDRA|=(1&&SCL)&&&&//输出低电平&&&&&&&&&&#define&SCL_1()&&&DDRA&=~(1&&SCL)&&&//输入,外部电阻上拉为高电平&&&&&&&&&&使用上面的SDA_0()/SDA_1()/SCL_0()/SCL_1()宏即可,直观,而且效率跟汇编是一样的&3.PIC单片机端口的概述PIC单片机的IO口,特别是第二功能的AD口,当端口被配置为AD模拟输入时,误以为端口用作普通的IO口时,去读取相应的端口,然而读进来的数据不确定。(例如:用万用表测量该管脚的电压为4.0V,但是读进来的数据始终为低电平),这是由于PIC单片机的IO口有一个弱上拉(用MOS&管的开关代替),当端口被配置为AD模拟输入时,弱上拉disable,则单片机的IO口呈现为高阻状态。(可参照PIC单片机的DATASHEET)&在数字电路中不用的输入脚都要接固定电平,通过1k电阻接高电平或接地。&1.&电阻作用:&l&接电组就是为了防止输入端悬空&l&减弱外部电流对芯片产生的干扰&l&保护cmos内的保护二极管,一般电流不大于10ma&l&上拉和下拉、限流&l&1.&改变电平的电位,常用在ttl-cmos匹配&2.&在引脚悬空时有确定的状态&3.增加高电平输出时的驱动能力。&4、为oc门提供电流&l&那要看输出口驱动的是什么器件,如果该器件需要高电压的话,而输出口的输出电压又不够,就需要加上拉电阻。&l&如果有上拉电阻那它的端口在默认值为高电平你要控制它必须用低电平才能控制如三态门电路三极管的集电极,或二极管正极去控制把上拉电阻的电流拉下来成为低电平。反之,&l&尤其用在接口电路中,为了得到确定的电平,一般采用这种方法,以保证正确的电路状态,以免发生意外,比如,在电机控制中,逆变桥上下桥臂不能直通,如果它们都用同一个单片机来驱动,必须设置初始状态.防止直通!&2、定义:&l&上拉就是将不确定的信号通过一个电阻嵌位在高电平!电阻同时起限流作用!下拉同理!&l&上拉是对器件注入电流,下拉是输出电流&l&弱强只是上拉电阻的阻值不同,没有什么严格区分&l&对于非集电极(或漏极)开路输出型电路(如普通门电路)提升电流和电压的能力是有限的,上拉电阻的功能主要是为集电极开路输出型电路输出电流通道。&3、为什么要使用拉电阻:&l&一般作单键触发使用时,如果ic本身没有内接电阻,为了使单键维持在不被触发的状态或是触发后回到原状态,必须在ic外部另接一电阻。&l&数字电路有三种状态:高电平、低电平、和高阻状态,有些应用场合不希望出现高阻状态,可以通过上拉电阻或下拉电阻的方式使处于稳定状态,具体视设计要求而定!&l&一般说的是i/o端口,有的可以设置,有的不可以设置,有的是内置,有的是需要外接,i/o端口的输出类似与一个三极管的c,当c接通过一个电阻和电源连接在一起的时候,该电阻成为上c拉电阻,也就是说,如果该端口正常时为高电平,c通过一个电阻和地连接在一起的时候,该电阻称为下拉电阻,使该端口平时为低电平,作用吗:&比如:当一个接有上拉电阻的端口设为输如状态时,他的常态就为高电平,用于检测低电平的输入。&l&上拉电阻是用来解决总线驱动能力不足时提供电流的。一般说法是拉电流,下拉电阻是用来吸收电流的,也就是你同学说的灌电流&线驱动(差动输出)线驱动器是一个源电流输出器件。在导通状态时,线驱动器输出为电源(vcc);在关断状态时,输出悬空。因此,线驱动器需要一个灌电流输入接口。下面表格中给出了一个简单的线驱动器的原理图。差动输出(欧姆龙称为线性驱动输出)线性驱动输出就是根据rs-422a的数据输送回路。可通过双股搅合线电缆进行长距离输送&集电极开路集电极开路电路是灌电流输出器件。在关断状态时,集电极开路输出连到地;在导通状态时,集电极开路输出悬空。因此,集电极开路输出需要一个源电流输入接口。下面表格中给出了一个简单的集电极开路输出电路的原理图。&推挽式推挽式输出结合了线驱动与集电极开路输出,在关断状态时,推挽式输出接地;在导通状态时,推挽式输出连到电源(vcc)。推挽输出(欧姆龙称为互补输出)输出回路有2种,即npn与pnp2种晶体管输出。根据输出信号h或l,2种晶体管输出互相交叉进行on或off动作,使用时,正电源,0v分别为吸合,拉下互补输出是输出电流流出或流入2种动作,特征是信号的上升、下降速度快,可进行导线的长距离延长。可与开路集电极输入机器(npn/pnp)连接,另外还可以连接到电压输入机器上。但是为了能更好的发挥未来的性能,一般推荐在电压输入机器上使用电压输入的编码器。
发表评论:
TA的最新馆藏[转]&[转]&[转]&[转]&[转]&[转]&第1章 80x86微处理器体系结构
微处理器、微型计算机和微型计算机系统三者之间有什么不同?
CPU在内部结构上由哪几部分组成?各部分具备哪些主要功能?
CPU在内部结构上设计为两个独立的功能部件:执行部件EU和总线接口部件BIU。EU负责全部指令的执行,向BIU提供数据和所需访问的内存或I/O端口的地址,并对通用寄存器、标志寄存器和指令操作数进行管理。BIU是CPU同存储器和I/O设备之间的接口部件,负责CPU与存储器和I/O端口传送信息。
8086状态标志和控制标志分别有哪些?程序中如何利用这些标志? 6位状态标志为:
⑴ 符号标志SF:若运算结果的最高位为1。则SF=1,否则为0。
⑵ 零标志ZF:若运算结果为零,则ZF=1,否则ZF=0。
⑶ 奇偶标志PF:若指令的执行结果低8位中&1&的个数为偶数,则PF=1,否则为0。 ⑷ 进位标志CF:当执行一个加法运算使最高位(字节操作的D7或字操作的D15)产生进位,或执行减法运算使最高位产生借位时,则CF=1,否则CF=0。
⑸ 辅助进位标志AF:当执行加法运算时,D3位向D4有进位,或作减法运算时,D3位向D4有借位,则AF=1,否则为0。
⑹ 溢出标志OF:在算术运算中,当补码运算结果超出了带符号数的表达范围,即字节运算的结果超出-128~+127,或者字运算结果超出-32768~+32767时,OF=1,否则为0。 3位控制标志为:
⑴ 方向标志DF:这是处理串操作指令中信息方向的标志。若DF=1,则串操作指令按自动减址操作,即串操作从高地址向低地址方向进行处理;若DF=0,则使串操作指令按自动增量修改地址指针,即串操作从低地址向高地址方向进行处理。
⑵ 中断允许标志IF:该标志用于对可屏蔽中断进行控制,若IF=0,则CPU拒绝外部INTR中断请求,本标志对内部中断和不可屏蔽中断不起作用。
⑶ 跟踪标志TF:若设置TF=1,则CPU按单步方式执行指令,以调试程序。
简述8086主要控制信号M/IO,WR,RD,ALE,INTR,INTA ,NMI的意义。 M/IO为高电平时,是存储器周期;M/IO为低电平时,是I/O周期。 WR:写作中在T2~T3周期为低电平
RD:读操作中在T2~T3周期为低电平
ALE:地址锁存允许信号(输出),这是8086CPU在总线周期的第一个时钟周期内发出的正脉冲信号,其下降沿用来把地址/数据总线(AD15~AD0)以及地址/状态总线(A19/S6~A16/S3)中的地址信息锁存入地址锁存器中。
INTR:可屏蔽中断请求信号。在每条指令的最后一个时钟周期,8086CPU将采样该引脚信号,若INTR为高电平, 且8086CPU的IF为&1&,则8086CPU将执行一个中断响应时序,控制转移到相应的中断服务程序。如果IF=&0&,则8086不响应该中断请求,继续执行下一条指令。即INTR信号可由软件复位CPU内部的IF位而加以屏蔽。
INTA:为中断响应信号(输出、三态),当8086CPU响应来自INTR引脚的可屏蔽中断请求时,在中断响应周期内,INTA变为低电平。
NMI:不可屏蔽中断请求信号(输入)。 当NMI从低电平变为高电平时,该信号有效,8086CPU在完成当前指令后,转移到不可屏蔽中断服务程序。
中断响应过程中,发两个INTA信号,分别起什么作用?
8086CPU在响应中断时CPU执行两个中断响应周期INTA,在第一个中断响应周期INTA负脉冲作为对中断请求设备的响应;第二个中断响应周期INTA负脉冲,通知中断请求设备把中
断类型码送到数据/地址总线的低8位AD7~AD0
根据8086存储器读、写时序图,回答如下问题
(1)地址信号在哪段时间内有效?
(2)读操作与写操作的区别?
(3)存储器读、写时序同I/O读、写时序的区别?
(1)地址信号A0~A19在T1周期有效。
(2)读操作与写操作的主要区别为:
① DT/ 控制信号在读周期中为低电平,在写周期中为高电平。
② 在读周期中 控制信号在T2~T3周期为低电平(有效电平), 信 号始终为高电平(无效电平);在写周期中 控制信号在T2~T3周期为低电平(有效电平), 信号始终为高电平(无效电平)。
③ 在读周期中,数据信息一般出现在T2周期以后,双重总线AD0~AD15上 的地址信号有效和数据信息有效之间有一段高阻态,因为AD0~AD15上的 数据必须在存储芯片(或I/O接口电路)的存取时间后才能出现。而在写 周期中数据信息在双重总线上是紧跟在地址总线有效之后立即由CPU送上 两者之间无一段高阻态。
(3)存储器操作同I/O操作的区别是:
简述8086的最小方式和最大方式。
8086微处理器有两种工作方式。最小方式是当MN/MX 引脚接高电平时,对内存储器和I/O接口所需的控制信号都由CPU直接提供的单处理器方式。而最大方式则是当MN/MX引脚接地时,对内存储器和I/O接口所需的控制信号要由专用的总线控制器8288提供的多处理器(或协处理器)方式。
第3章 微型计算机接口技术概述
接口电路的作用是什么?I/O接口应具备哪些功能?
所谓接口(Interface)就是微处理器CPU与外设的连接电路,是CPU与外界进行信息交换的中转站。具有如下功能: (1)数据缓冲功能;(2)接受和执行CPU命令的功能;(3)信号转换功能;(4)设备选择功能(即可寻址);(5)中断管理功能;(6)数据宽度变换功能;(7)可编程功能;(8)可复位(Reset)
计算机与外设交换信息有几种方式?各有什么特点?
传送控制方式一般有四种,即程序控制方式、中断方式、DMA方式和处理机方式。
1. 程序控制方式通常又分为无条件传送和条件传送两种方式。
无条件传送方式所需的条件就是:CPU与外设能准确同步。无条件传送方式一般只需要数据端口。
查询方式是先检查后传送,采用查询方式的接口一般需要两个端口,即数据端口和状态端口。
2.中断方式具有实时性。适于CPU任务较忙,I/O设备速度不太高的系统中,尤其是实时控制和紧急事件的处理。
3.DMA方式把I/O操作过程中外设与内存交换信息的控制交给了DMA控制器,实质上是在硬件控制下完成数据传输,大大提高了传输速率,这对大批量数据高速传送特别有用。
4.处理机方式专用I/O处理器能够直接存取系统主存储器,当CPU需要进行I/O操作时,就在内存中建立一个信息块,将所需要的操作和有关参数按规定列入,然后通知I/O处理器来读取。专用I/O处理器读得操作控制信息后,自动完成全部I/O操作。
什么是I/O端口,CPU如何访问I/O端口?
通常把I/O接口电路中能被CPU直接访问的寄存器或某些特定的器件称之为端口。I/O端口是CPU与I/O设备直接通信的地址。CPU可以通过这些端口发送命令、读取状态和传送数据。在统一编址方式中,可以将I/O端口看作是内存单元来访问。独立编址方式中,处理器有专门的I/O指令访问I/O端口。
I/O寻址方式有几种?在地址译码电路中设AEN=0,这有何意义?
00~FFH范围内的端口,用端口直接寻址。端口地址大于255(FFH)的端口用DX间址,此时DX中内容是端口地址,称为端口间接寻址。
AEN参加译码,只有当AEN=0时,即不是DMA操作时,译码才有效;当AEN=1时,即DMA操作时,译码无效。从而避免了在DMA周期,由DMA控制器对这些外部设备进行读/写操作。
总结各种地址译码电路的优缺点。
若接口电路中需要多个端口地址时,则采用译码器译码比较方便。门电路译码是一种最简单最基本的端口地址译码方法。如果用户要求端口地址能适应不同的地址分配场合,或为系统以后扩充留有余地,则可以使用可选端口地址译码。
I/O端口地址译码一般原则是什么?
端口地址译码信号同IOR或IOW结合起来一同控制对I/O端口的读或写操作。
图3.6中,通过DIP开关设定Q7~Q0为B,写出当Y0=0时,读写端口地址。当Q7 ~Q0 为B,Y7=0呢?
当DIP开关设定Q7~Q0为B, Y0=0时,端口地址是380H。开关设定Q7~Q0为B,Y1=0时 ,端口地址是387H。
图3.5所示PC机系统板上的地址译码电路有何特点?写出PC机系统板上,的端口地址范围。
8259端口地址范围:20H~21H
8253端口地址范围: 40H~43H
8255端口地址范围:60H~63H
8237端口地址范围:00H~0FH
PC机可访问的I/O端口有1024个,为什么?
因为PC机I/O端口地址译码使用10根地址线A0~A9,所以PC机可访问的I/O端口有1024个(000H~3FFH)。
图3.8所示电路,若地址线A9~A2为B,所选单元存储数据为0H,则74LS138译码器输出地址有效地址范围是什么?若地址线A9~A2为B,所选单元存储数据为6H呢?
若地址线A9~A2为B,所选单元存储的数据为06H,则74LS138译码器 ,有效地址范围是328H~32BH
I/O端口寻址方式分两种,一种是存储器映射方式,即把 统一编址,所以这种编址方式也称之为统一编址方式;另一种是I/O映射方式,即把 分别进行独立编址,也称之为独立编址。
(1)端口地址与存储器地址;(2)I/O端口地址与存储器地址。
统一编址和独立编址的优缺点各是什么?
统一编址不设专门的I/O指令,内存指令均可用于外设,能提供极大的方便;但I/O端口占用了内存地址,就相对减少了内存可用范围。
独立编址中内存地址和I/O端口地址相对独立,易于辨认内存和I/O端口的指令;但用于I/O端口的指令功能较弱,在I/O操作中必须通过CPU寄存器进行中转才能完成。
程序查询I/O的流程总是按 ( )次序完成一个字符的传输。
A)读状态端口,写数据端口,读控制端口
B)写数据端口,读状态端口,写控制端口
C)读状态端口,读/写数据端口
D)随I/O接口具体要求而定
CPU对DMA控制器提出的总线请求响应要比中断请求响应快,其原因是 ( )。
A)只需完成访问内存操作
B)只需释放总线控制权
C)无须保留断点现场
D)有硬件控制器
PC系列微机系统支持的端口数目是 个,其端口地址空间是从 ,其有效的译码地址是 这 根地址线。
(1)1024;(2)000~3FFH;(3)A0~A9;(3)10。
在设计I/O设备接口卡时,选用I/O端口地址应注意些什么?
(1)被系统配置占用了的端口地址一律不能使用;
(2)未被系统占用的地址用户都可以使用,但对计算机厂家申明保留的地址不要使用;
(3)用户可使用300H~31FH,这是PC系列微机留作实验卡用的。
I/O端口地址译码电路除了要受A0~A9这10根地址线所限定的地址范围之外,还要考虑下面的一些控制信号,请举两例:
(1)利用IOR、IOW信号控制对端口的读写。
(2)用OCS16信号控制是8位还是16位的I/O端口。
(3)用SBHE(或BHE)信号控制端口奇偶地址。
(4)用AEN信号控制非DMA传送。
按照I/O地址译码电路采用的元器件来分,可分为 译码、 译码和 译码;按译码电路的形式来看,又可分为 译码和 译码。
门电路;译码器;PLD;固定式;可选式。
用门电路进行端口地址译码是一种最以简单最基本的端口地址译码方法。AEN参加译码,它对端口地址译码进行控制,只有当AEN= 时,即 时译码才有效,反之使译码无效。从而避免了在DMA周期,由DMA控制器对这些I/O端口地址的非DMA传送方式的外部设备进行读/写操作。
3-8译码器74LS138是最常用的译码电路之一,它的3个输入控制端是G1、G2A、G2B,只有当G1=1,G2A=G2B=0时,才允许对输入端A、B、C进行译码。(请判断这段话的正}

我要回帖

更多关于 主板i o接口的挡板 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信