版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
微型计算机系统8086微处理器的工作模式及引脚特性
28086微型计算机系统的总线时序
4半导体存储器的分类18086微处理器的结构
18086微型计算机系统
3微处理器结构8086CPU16位微处理器8086CPU具有
20条地址线,可直接寻址
1MB容量的内存空间,在访问I/O端口时,使用地址线
16条
,最多可寻址
64K个I/O端口。有16根数据线8086内部结构有两个功能模块:模块之一:总线接口单元BIU,主要完成计算物理地址、从内存中取指令、实现指令规定的读/写存储器或外部设备等信息传输类操作。模块之二:执行单元EU,主要负责指令译码、执行和数据运算,包括计算有效地址8086/8088CPU的内部结构分为哪两大模块,各自的主要功能是什么?答:总线接口部件〔BIU〕功能:根据执行单元EU的请求完成CPU与存储器或IO设备之间的数据传送。执行部件〔EU〕,作用:从指令对列中取出指令,对指令进行译码,发出相应的传送数据或算术的控制信号接受由总线接口部件传送来的数据或把数据传送到总线接口部件进行算术运算。8086指令队列的作用是什么?
答:作用是:在执行指令的同时从内存中取了一条指令或下几条指令,取来的指令放在指令队列中这样它就不需要象以往的计算机那样让CPU轮番进行取指和执行的工作,从而提高CPU的利用率。EUBIU指令队列8086CPU内部存放器有哪几种?各自的特点和作用是什么?8086CPU有14个16位存放器和8个8位存放器,可分为:数据存放器;指针和变址存放器;段存放器;指令指针存放器;标志存放器。
图2-58086/8088CPU的寄存器结构数据存放器主要用来存放操作数或中间结果,以减少访问存储器的次数。有:4个16位的存放器:AX、BX、CX、DX;8个8位的存放器:AH、AL、BH、BL、CH、CL、DH、DL;可以存放偏移地址:BXBPSIDI其中BX放数据段的地址BP放堆栈段的地址简要解释以下名词的意义:存储器,堆栈,IP,SP,BP,段存放器,状态标志,控制标志
存储器:是计算机系统中的记忆元件,用于存储指令和数据。堆栈:在存储器中开辟的一个区域,用来存放需要暂时保存的数据。其操作特点是先进后出。IP:指令指针存放器,用来存放将要执行的下一条指令在现行代码段中的偏移地址。SP:堆栈指针存放器,用于指向当前栈顶单元。BP:基址指针,间接寻址中用于存放基址,隐含段地址为SS。段存放器:用于存放逻辑段的段地址。状态标志:SF、ZF、OF、AF、PF和CF,反映运算结果的状态特征。控制标志:IF、DF和TF,对可屏蔽中断、字符串操作指针变换方向和单步运行起控制作用。为了实现寻址1MB存储器空间,8086CPU将1MB的存储空间分成假设干个逻辑段进行管理,4个16位的段存放器来存放每一个逻辑段的段起始地址。堆栈段存放器〔SS〕=2400H,堆栈指针〔SP〕=1200H,计算该堆栈栈顶的实际地址,并画出堆栈示意图。〔SS〕=2400H,〔SP〕=1200H
;PA=〔SS〕×10H+〔SP〕=2400H×10H+1200H=25200H。标志存放器FRFR是一个16位的存放器。9个位用作标志位:状态标志位有6个,记录程序中运行结果的状态信息,是根据指令的运行结果由CPU自动设置的。这些状态信息通常作为后续转移指令的转移控制条件,所以也称为条件码。控制标志位有3个,可以编程设置,用于控制处理器执行指令的方式。控制标志设置之后,可对后面的操作产生控制作用。未标明的位在8086中不用。OF111512DF10IF9TF8SF7ZF65AF43PF21CF0例8086的标志存放器分为6个状态标志位和3个控制标志位,它们各自的含义和作用是什么
OF111512DF10IF9TF8SF7ZF65AF43PF21CF0要完成下述运算或控制,用什么标志位判别?其值是什么?〔1〕比较两数是否相等〔2〕两数运算后结果是正数还是负数〔3〕两数相加后是否溢出〔4〕采用偶校验方式,判定是否要补1〔5〕两数相减后比较大小〔6〕中断信号能否允许答:〔1〕ZF,两数相减,假设ZF=1,那么相等。〔2〕SF,SF=1那么为负,否那么为正〔3〕对有符号数:OF,OF=1为溢出;对无符号数:CF,CF=1为溢出〔4〕PF,PF=1,不补1〔5〕对有符号数:无溢出时〔OF=0〕,如ZF=1,那么两数相等;如ZF=0且SF=0,那么被减数大;如ZF=0且SF=1,那么减数大;有溢出时〔OF=1〕,如SF=1,那么被减数大;如F=0,那么减数大;对无符号数:如ZF=1,那么两数相等;如CF=0,那么被减数大;如CF=1,那么减数大〔6〕IF,IF=1,允许中断存储器组织与段存放器存放器是微处理器内部暂存数据的存储单元,以名称表示存储器那么是微处理器外部存放程序及其数据的空间主存需要利用地址区别数据的存储格式D7D0字节D15D0字D31D0双字D7D000006H78H00005H56H00004H12H00003H34H00002H00001H00000H低地址存储单元及其存储内容每个存储单元都有一个编号;被称为存储器地址每个存储单元存放一个字节的内容0002H单元存放有一个数据34H表达为 [0002H]=34H多字节数据存放方式图中2号“字〞单元的内容为:[0002H]=1234H2号“双字〞单元的内容为:[0002H]=78561234H8086的存储器空间最大可以为多少?怎样用16位存放器实现对20位地址的寻址?完成逻辑地址到物理地址转换的部件是什么?答:8086的存储器空间最大可以为220〔1MB〕;8086计算机引入了分段管理机制,当CPU寻址某个存储单元时,先将段存放器内的内容左移4位,然后加上指令中提供的16位偏移地址形成20位物理地址。物理地址:指存储器中存储单元的实际地址编码,是一种绝对地址,是CPU访问存储器的实际寻址地址,对于8086系统,地址范围为00000H~FFFFFH。逻辑地址:由段基址和偏移地址组成,均为无符号的16位二进制数,程序设计时采用逻辑地址,可由逻辑地址变换为物理地址,物理地址=段基址×16+偏移地址。偏移地址:是某一存储单元距离所在逻辑段的开始地址的字节个数。有效地址:是指令中计算出的要访问的存储单元的偏移地址。物理地址计算公式:物理地址=段地址×10H+有效地址〔或偏移地址〕简要解释以下名词的意义:物理地址,逻辑地址:8086系统中的存储器分为几个逻辑段?各段之间的关系如何?每个段存放器的作用是什么8086CPU将1MB的存储空间分成逻辑段来进行管理:最多可分成64K个段;每个逻辑段最大为64KB。各段的起始位置由程序员指出,可以彼此别离,也可以首尾相连、重叠或局部重叠。4个16位的段存放器用来存放每一个逻辑段的“段基地址〞〔段起始地址地高16位〕:CS中为代码段的起始地址;DS中为数据段的起始地址;SS中为堆栈段的起始地址;ES中为附加段的起始地址。段存放器装入如下数据,写出每段的起始和结束地址。〔1〕1000H〔2〕1234H〔3〕2300H〔4〕E000H〔5〕AB00H答:〔1〕10000H~1FFFFH〔2〕12340H~2233FH〔3〕23000H~32FFFH〔4〕E0000H~EFFFFH〔5〕AB000H~BAFFFH10550H250A0H2EF00H8FF00HCSSSCSDSES解:
各段分布及段首址见右图所示。操作数的物理地址为:250AH×10H+0204H=252A4HCS=1055H,DS=250AH,ES=2EF0H,SS=8FF0H,DS段有一操作数,其偏移地址=0204H,1)画出各段在内存中的分布2)指出各段首地址3)该操作数的物理地址=?例段存放器CS=1200H,指令指针存放器IP=FF00H,此时,指令的物理地址为多少?指向这一物理地址的CS值和IP值是唯一的吗?答:指令的物理地址为21F00H;CS值和IP值不是唯一的,例如:CS=2100H,IP=0F00H。假设当前SS=3500H,SP=0800H,说明堆栈段在存储器中的物理地址,假设此时入栈10个字节,SP内容是什么?假设再出栈6个字节,SP为什么值?答:物理地址:35000H~35800H。入栈10个字节后SP为7F6H。再出栈6个字节后SP为7FCH。
8086CPU重新启动后,从何处开始执行指令?答:重新启动后,CS=FFFFH,IP=0000H,故从物理地址为FFFF0H的位置开始执行指令。
8086系统中存储器采用什么结构?用什么信号来选中存储体?答:8086系统中,存储器采用分体结构,1MB的存储空间分成两个存储体:偶地址存储体和奇地址存储体,各为512KB。使用A0
和BHE来区分两个存储体。当A0=0时,选中偶地址存储体,与数据总线低8位相连,从低8位数据总线读/写一个字节。当BHE=0时,选中奇地址存储体,与数据总线高8位相连,从高8位数据总线读/写一个字节。当A0=0,BHE=0时,同时选中两个存储体,读/写一个字。3.38086微型计算机系统微型计算机的结构示意图存储器I/O接口输入设备I/O接口数据总线DB控制总线CB地址总线AB输出设备CPU什么是微机的总线,分为哪三组?答:是传递信息的一组公用导线。分三组:地址总线,数据总线,控制总线8086微处理器的工作模式及引脚特性8086的工作模式8086CPU具有两种不同的工作模式来适应不同的应用场合:最小模式系统的控制总线就直接由CPU的控制线供给最大模式:8086通过一个总线控制器8288来形成各种总线周期,控制信号由8288供给。8086的工作模式由硬件设计决定:引脚连电源〔+5V〕,那么8086处在最小模式;引脚接地,那么8086处在最大模式。MN
/MXMN/MX说明8086系统中“最小模式〞和“最大模式〞两种工作方式的主要区别是什么?答:为了便于组成不同规模的系统,在8086芯片中设计了两种工作模式,即最小模式和最大模式。最小模式用于单机系统,系统中所需要的控制信号全部由8086直接提供;最大模式用于多处理机系统,系统中所需要的控制信号由总线控制器8288提供。
8086系统中为什么要用地址锁存器?8282地址锁存器与CPU如何连接?答:为了减少引脚的数量,8086CPU的地址引脚和数据引脚分时复用,为了保证在总线操作周期中地址信号能有效而稳定的输出,必须使用地址锁存器。由于8086有20条地址线,故需使用三片8282,其中OE接地,STB与CPU的ALE相连,前两片8282的DI0~DI7分别与CPU的AD0~AD15相连,第三片8282的DI0~DI3分别与CPU的AD16~AD19相连,DI4与CPU的BHE相连。INTR、INTA、NMI、ALE、HOLD、HLDA引脚的名称各是什么?答:INTR是可屏蔽请求信号,INTA中断响应信号,NMI是不可屏蔽中断请求信号,ALE是地址锁存允许信号,HOLD总线请求信号,HLDA总线请求响应信号。
CPU执行指令时涉及三种周期:时钟周期总线周期指令周期3.3.48086微型计算机系统的总线时序8086微型计算机系统的总线时序总线周期把CPU通过总线进行某种操作的过程称为总线周期〔BusCycle〕,表示从M或I/O端口存取一个数据所需的时间。根据总线操作功能的不同,分为:存储器读周期、存储器写周期I/O读周期、I/O写周期一个根本的总线周期由4个时钟周期组成〔T1、T2、T3、T4〕。附加的时钟周期等待状态Tw指令周期总线周期……总线周期时钟周期时钟周期时钟周期时钟周期…………一个根本的总线周期
什么叫总线周期?在CPU读/写总线周期中,数据在哪个机器状态出现在数据总线上?答:CPU完成一次存储器访问或I/O端口操作所需要的时间称为一个总线周期,由几个T状态组成。在读/写总线周期中,数据在T2~T4状态出现在数据总线上。中断响应周期时序一般外部设备的中断是通过INTR引脚向CPU发出中断请求的,这个可屏蔽中断请求信号的有效电平〔高电平〕,必须维持到CPU响应中断为止。假设标志IF=1,表示CPU允许中断,此时CPU在执行完当前指令后响应中断,其中断响应周期时序如以下图所示。第4章8086寻址方式与指令系统概述1
8086寻址方式2
8086指令系统3808的七种根本的数据寻址方式(1)立即寻址;(2)存放器寻址;(3)直接寻址;(4)存放器间接寻址;(5)存放器相对寻址;(6)基址变址寻址;(7)相对基址变址寻址。存储器寻址方式分别说明以下指令的源操作数和目的操作数各采用什么寻址方式。〔1〕MOVAX,2408H〔2〕MOVCL,0FFH〔3〕MOVBX,[SI]〔4〕MOV5[BX],BL〔5〕MOV[BP+100H],AX〔6〕MOV[BX+DI],’$’〔7〕MOVDX,ES:[BX+SI]〔8〕MOVVAL[BP+DI],DX〔9〕INAL,05H〔10〕MOVDS,AX答:〔1〕立即数,存放器〔2〕立即数,存放器〔3〕存放器间接,存放器〔4〕存放器,存放器相对〔5〕存放器,存放器相对〔6〕立即数,基址变址〔7〕基址变址,存放器〔8〕存放器,相对基址变址〔9〕直接端口寻址,存放器〔10〕存放器,存放器设DS=1000H,ES=2000H,SS=3500H,SI=00A0H,DI=0024H,BX=0100H,BP=0200H,数据段中变量名为VAL的偏移地址值为0030H,试说明以下源操作数字段的寻址方式是什么?物理地址值是多少?〔1〕MOVAX,[100H]〔2〕MOVAX,VAL〔3〕MOVAX,[BX]〔4〕MOVAX,ES:[BX]〔5〕MOVAX,[SI]〔6〕MOVAX,[BX+10H]〔7〕MOVAX,[BP]〔8〕MOVAX,VAL[BP][SI]〔9〕MOVAX,VAL[BX][DI]〔10〕MOVAX,[BP][DI]答:〔1〕直接,10100H〔2〕直接,10030H〔3〕存放器间接,10100H〔4〕存放器间接,20210H〔5〕存放器间接,100A0H〔6〕存放器相对,10110H〔7〕存放器间接,35200H〔8〕相对基址变址,352D0H〔9〕相对基址变址,10154H〔10〕基址变址,35224H4.38086指令系统8086指令系统包括六大类指令〔87条〕:数据传送指令算术运算指令逻辑运算和移位指令串操作指令控制转移指令处理器控制指令指出以下指令中哪些是错误的,错在什么地方。〔1〕MOVDL,AX〔2〕MOV8650H,AX〔3〕MOVDS,0200H〔4〕MOV[BX],[1200H]〔5〕MOVIP,0FFH〔6〕MOV[BX+SI+3],IP〔7〕MOVAX,[BX][BP]〔8〕MOVAL,ES:[BP]〔9〕MOVDL,[SI][DI]〔10〕MOVAX,OFFSET0A20H〔11〕MOVAL,OFFSETTABLE〔12〕XCHGAL,50H〔13〕INBL,05H〔14〕OUTAL,0FFEH答:〔1〕长度不匹配〔2〕立即数不能做目的操作数〔3〕段存放器不能用立即数赋值〔4〕两个内存单元不能直接传送数据〔5〕IP不能用指令直接修改〔6〕指令中不能出现IP〔7〕BX/BP应与SI/DI搭配〔8〕正确〔9〕SI/DI应与BX/BP搭配〔10〕OFFSET后应跟内存单元〔11〕偏移地址为16位,AL长度不够〔12〕立即数不能用于XCHG〔13〕IN必须用AL/AX〔14〕操作数顺序反向;地址应为8位指令指令对错P745PUSHPOPCMPTESTXLATLEALOOPXORCBWJMP〔段间、段内〕JCC〔段内〕SHLSHRSALSARMOVSBMOVSW(STDCLDDF1,0)REPMOVSBP758、9、10汇编语言程序设计伪指令——指示汇编、链接程序如何进行汇编和链接,影响目标代码生成,本身不产生目标代码。——有符号定义语句、数据定义语句、程序结构语句、模块链接语句、有关宏的语句、条件汇编语句等。等值语句
格式:符号名EQU表达式变量定义语句DB变量为字节数据类型DW变量为字数据类型,存放时低对低高对高。DD变量为双字数据类型,存放时低对低高对高。1〕为数据项分配存储单元,用变量名作为该存储单元的名称。例:XDB 25H 〔2〕预留内存单元,但不赋值,以存放运算结果.例:ADB?〔3〕定义一个数组例:W_TABLEDW1122H,3344HB_TABLEDB1,2,4,9,16当表中的操作数相同时,可用重复操作符DUP来缩写:格式:重复次数DUP(操作数)例:ALL_ZERODB0,0,0,0,0,0ALL_ZERODB6DUP〔0〕〔4〕定义字符串〔只能用DB定义〕例:MESSAGEDB ‘HELLO’每个字符的值为它的ASCII码值,所以用DB来定义。3.指定地址伪指令ORG分析操作符〔SEG、OFFSET、TYPE、SIZE、LENGTH〕P895例如:MY_DATASEGMENTORG100HMYDATDW1,2,$+4MY_DATAENDS
框架一:
DATA SEGMENT ;定义数据段
VAL1DB12H,8EH ;定义变量
……
DATA ENDS
;数据段结束
CODE SEGMENT ;定义代码段 ASSUMEDS:DATA,CS:CODE ;段属性说明 START:MOVAX,DATA ;初始化DS
MOVDS,AX
…… ;填写代码
MOVAX,4C00H ;返回DOS INT21H CODEENDS ;代码段结束 ENDSTART ;源程序结束DOS功能调用方法〔输入、输出〕〔1〕单字符输入(01H功能)入口参数无功能号AH=01H类型号21H出口参数AL=键入字符的ASCII码〔2〕显示单字符(02H、功能)入口参数DL=要显示字符的ASCII码功能号AH=02H类型号21H出口参数无实现功能显示指定字符,光标随动。对存储单元操作BUFDB1,2,….MOVSI,OFFSETBUFMOVAX,[SI]比较、转移比较大小CMPAX,BX转移JCCCC代表条件无符号数A,B,E,N有符号数G,L,E,NCMPAX,BXJANEXT(标号〕满足条件转移到标号行MOVAX,1不满足条件执行NEXT:MOVAX,0满足条件执行〔AX大于BX)循环MOVCX,100LOOPLOP1算法最大、最小统计正、负数统计数字、字符个数大、小写转换例5-2例5-12例5-4存储器存储器分类内存:是内部存储器的简称,又称主存。内存直接与CPU相联接,是计算机的组成局部。外存:即外部存储器,也称辅存。外存不直接与CPU相联接,而是通过I/O接口与CPU联接,其主要特点是大容量。按存取方式分类随机存储器RAM(RandomAccessMemory)只读存储器ROM〔Read-OnlyMemory〕串行访问存储器(SerialAccessStorage)随机存取存储器RAM特点:RAM的读写次数无限。如果断开RAM的电源,其内容将全部丧失。RAM的分类:静态RAM〔SRAM,StaticRAM〕动态RAM〔DRAM,DynamicRAM〕(要定时刷新〕只读存储器ROMEPROM——存放系统〔监控〕程序,无需在线修改的参数(如BIOS)。E2PROM——数据、参数等有掉电保护要求的数据。RAM有几种,各有什么特点?ROM有几种,各有什么特点?答:RAM有两种,SRAM(静态RAM),它采用触发器电路构成一个二进制位信息的存储单元,这种触发器一般由6个晶体管组成,它读出采用单边读出的原理,写入采用双边写入原理;DRAM〔动态RAM〕,它集成度高,内部存储单元按矩阵形式排列成存储体,通常采用行,列地址复合选择寻址法。ROM有5种,固定掩摸编程ROM,可编程PROM,紫外光檫除可编程EPROM,电可檫除的可编程EPROM,闪速存储器。假设用4K*1位的RAM芯片组成8K*8为的存储器,需要多少芯片?A19—A0地址线中哪些参与片内寻址,哪些用做芯片组的片选信号?答:需要16片芯片;其中A11-A0参与片内寻址;A12做芯片组的片选信号。假设系统分别使用512K*8、1K*4、16K*8、64K*1的RAM,各需要多少条地址线进行寻址,各需要多少条数据线?答:512K*8需要19条地址线,8条数据线。1K*4需要10条地址线,4条数据线。16K*8需要14条地址线,8条数据线。64K*1需要16条地址线,1条数据线。某微机系统的RAM容量为8K*8,假设首地址为4800H,那么最后一个单元的地址是多少?答:最后一个单元的地址是:4800H+213-18086系统的存储器接口存储器与系统之间的连接主要包括:数据线的连接地址线的连接控制信号的连接。控制信号一般包括读、写、片选等信号。数据线16位微机系统中存储器与系统的联接〔8位存储体〕8086系统的分为奇存储体、偶存储体:地址线片内地址片内地址线数量由储存器芯片型号〔容量〕决定如27128的容量为16K,储存器芯片内的地址为14位。8086系统片内地址线与CPU的地址线的连接由于8086系统采用奇、偶存储体结构,A0作为偶存储体的片选信号,所以与CPU的地址线的连接从A1开始,如27128的A0---A13对应A1---A14片外地址CPU的地址线与的片内地址线相连后剩余的高位地址线,片外地址线经译码电路后与存储体的片选信号线相连。译码电路如62256容量32K〔A0-A14〕接A1-A15片外地址A16-A19如要求RAM的地址范围从80000H-8FFFFFH那么片外地址为1000〔A19-A16〕如采用3-8译码器电路如下:当A19-A16为1000时Y0为低电平CS有效控制信号最大模式MEMW、MEMR最小模式IO/M〔接片选〕WRRD注:MEMW=IO/M+WRMEMR=IO/M+RD根本输入输出接口什么是接口?其作用是什么连接外部设备与微型计算机的接口电路。作用:〔1〕解决CPU与外设工作速度不匹配的问题;〔2〕解决CPU与外设工作时序配合问题;〔3〕实现信息格式转换;〔4〕解决信息类型与信号电平匹配的问题。输入/输出接口电路有哪些存放器,各自的作用是什么?通常有数据输入、数据输出、控制和状态存放器等。在CPU与外部设备之间进行数据传输时,各类信息写入接口中相应的存放器,或从相应存放器读出。CPU从数据输入存放器和状态存放器中读出数据和状态,但不能向其中写内容;CPU往数据输出存放器和控制存放器中写数据和控制信息,但不能从其中读内容。什么叫端口,I/O端口有哪两种编址方式,各自的优缺点是什么端口指输入/输出接口中的存放器统一编址方式是将I/O端口与内存单元统一起来进行编号,即包括在1MB的存储器空间中,看作存储器单元,每个端口占用一个存储单元地址。该方式主要优点是不需要专门的I/O指令,对I/O端口操作的指令类型多;缺点是端口要占用局部存储器的地址空间,不容易区分是访问存储器还是外部设备。独立编址的端口单独构成I/O地址空间,不占用存储器地址。优点是地址空间独立,控制电路和地址译码电路简单,采用专用的I/O指令,使得端口操作的指令在形式上与存储器操作指令有明显区别,程序容易阅读;缺点是指令类别少,一般只能进行传送操作。CPU与输入输出设备之间传送的信息由哪几类?相应的端口称为什么端口?【解答】CPU与输入/输出设备交换的信息有3类:数据信息、状态信息和控制信息。数据信息相应的端口称为数据端口;状态信息相应的端口称为状态端口;控制信息相应的端口称为控制端口。CPU和外设之间的数据传送方式有哪几种?无条件传送方式通常用在哪些场合?【解答】CPU和外设之间的数据传送方式通常有四种:无条件传送方式、查询传送方式、中断传送方式、DMA传送方式和I/O处理机方式。开关、LED等在一个微型计算机系统中,确定采用何种方式进行数据传送的依据是什么?无条件传送方式主要用于对简单外设进行操作,或者外设的定时是固定的或的场合。条件传送方式主要用于不能保证输入设备总是准备好了数据或者输出设备已经处在可以接收数据的状态。中断控制方式主要用于需要提高CPU利用率和进行实时数据处理的情况。DMA控制方式主要用于快速完成大批的数据交换任务。在实际工作中,具体采用哪种方式要根据实际工作环境与需要结合各种方式的特点进行选择。INAL,DXDX指定的端口存放器的内容送ALOUTDX,ALAL的内容送DX指定的端口存放器中断常见的中断源有哪几类?CPU响应中断的条件是什么?常见的中断源有:一般的输入/输出设备请求中断;实时时钟请求中断;故障源;数据通道中断和软件中断。CPU响应中断的条件:假设为非屏蔽中断请求,那么CPU执行完现行指令后,就立即响应中断。CPU假设要响应可屏蔽中断请求,必须满足以下三个条件:①无总线请求;②CPU允许中断;③CPU执行完现行指令。简述微机系统的中断处理过程。【解答】〔1〕中断请求:外设需要进行中断处理时,向CPU提出中断请求。〔2〕中断响应:CPU执行完现行指令后,就立即响应非屏蔽中断请求。可屏蔽中断请求,CPU假设要响应必须满足三个条件。〔3〕中断处理:保护现场、开中断、中断效劳。〔4〕中断返回:CPU执行IRET中断返回指令时,自动把断点地址从堆栈中弹出到CS和IP中,原来的标志存放器内容弹回Flags,恢复到原来的断点继续执行程序。8086的中断分哪两大类?各自有什么特点?中断向量和中断向量表的含义是什么?8086一共可处理多少级中断?【解答】8086的中断分为外部中断和内部中断两种:外部中断由外部硬件产生,由CPU外部中断请求信号触发,分为非屏蔽中断NMI和可屏蔽中断INTR。内部中断是为了处理程序运行过程中发生的一些意外情况或调试程序而提供的中断。8086的中断系统能够处理256个不同的中断,每一个中断安排一个编号,范围为0~255,称为中断类型。每种中断类型对应的中断效劳程序的入口地址称为中断向量。把系统中所有的中断向量按中断类型从小到大的顺序放到存储器的特定区域,该区域称为中断向量表。每个中断向量在中断向量表中占用4字节,CPU响应中断后通过将中断类型×4得到中断向量在中断向量表中的首地址。设置中断向量的方法:1、将中断效劳程序的入口地址直接写入中断向量表中的相应单元MOVAX,0000HMOVDS,AXMOVSI,中断类型号*4MOVAX,中断效劳程序偏移地址MOV[SI],AXMOVAX,中断效劳程序段地址MOV[SI+2],AX2、二是利用DOS功能调用完成中断向量的设置
中断向量设置(DOS功能调用INT21H)
功能号:AH=25H
入口参数:AL=中断类型号,
DS:DX=中断向量(段地址:偏移地址)
获取中断向量(DOS功能调用INT21H)
功能号:AH=35H
入口参数:AL=中断类型号出口参数:ES:BX=中断向量(段地址:偏移地址)
例如,设某中断的中断类型号n为40H,中断效劳子程序的入口地址为INT-P,调用25H号功能装入中断向量的程序段如下:CLI;IF=0,关中断MOVAL,40H;中断类型号40H送ALMOVDX,SEGINT-P
;中断效劳子程序的段基址送DSMOVDS,DXMOVDX,OFFSETINT-P;中断效劳子程序的偏移地址送DX
MOVAH,25H
;25H功能调用INT21HSTI;IF=1,开中断…
INT-P:…;中断效劳子程序
…
IRET;中断返回简述8086的中断类型,非屏蔽中断和可屏蔽中断有哪些不同之处?CPU通过什么响应条件来处理这两种不同的中断?【解答】8086的中断系统能够处理256个不同的中断源,并为每一个中断安排一个编号,范围为0~255,称为中断类型。硬件中断分为非屏蔽中断和可屏蔽中断,非屏蔽中断不受中断允许标志位IF的影响,在IF=0关中断的情况下,CPU也能在当前指令执行完毕后就响应NMI上的中断请求。可屏蔽中断:CPU将根据中断允许标志位IF的状态决定是否响应。如果IF=0,表示CPU关中断;如果IF=1,表示CPU开中断,CPU执行完现行指令后会转入中断响应周期。对应于中断类型码为18H的中断效劳程序存放在0020H:6314H开始的内存区域中,求对应于18H类型码的中断向量存放位置和内容。偏移地址EA=18H×4=60H,18H中断向量在中断向量表中的入口地址为00000H+60H=00060H。中断效劳程序存放在0020H:6314H开始的内存区域中,所以〔00060H〕=0020H,〔00061H〕=6314H。8259A的主要功能有:〔1〕每一片8259A可管理8级优先权中断源,通过8259A的级联,可扩充至管理64级优先权的中断源。〔2〕对任何一级中断源都可单独进行编程实现屏蔽或开放。〔3〕能向CPU提供可编程的中断类型号。这个功能使原来没有能力提供中断类型码的8255A、8253、8251A等可编程接口芯片,借助8259A同样可以采用中断I/O方式来进行管理。〔4〕能通过编程实现不同的工作方式。当有一条或假设干条中断请求线〔IR7~IR0〕变为高电平,那么中断请求存放器IRR的相应位置位。假设中断请求线中至少有一条是中断允许的〔中断屏蔽存放器相应位开放,且请求中断的级别高于当前正在效劳的中断或未处于中断效劳程序中〕,那么8259A通过INT引脚向CPU的INTR引脚发出中断请求信号。CPU在当前指令执行完后,假设检测到中断请求信号,且处于开中断状态〔IF=1〕那么会暂停执行下一条指令,进入中断响应总线周期,发送两个INTA信号给8259A作为响应。10.3.38259A中断处理过程8259A在接受到来自CPU的第一个INTA信号后,使中断源中优先级最高的ISR位置位,而相应的IRR位被复位。在该周期中,8259A不向数据总线送任何内容。在第二个INTA脉冲期间,8259A向CPU发出中断类型号〔8位的二进制数,其中高位T7~T3是8259A初始化时设置的,而低3位是8259A自动插入的〕,CPU获得后,将此向量乘以4,在中断向量表中找到相应的中断效劳程序入口地址。10.3.38259A中断处理过程中断响应周期结束后,CPU就转而执行中断效劳程序。采用AEOI方式时,在第二个脉冲INTA结束时,ISR位被复位。否那么,在中断效劳程序中,应在IRET指令参加相应的EOI指令,使ISR的相应位复位。10.3.38259A中断处理过程在一个8259A芯片有如下几个内部存放器:InterruptMaskRegister(IMR)InterruptRequestRegister(IRR)InSeviceRegister(ISR)8259A结束中断处理的方式有:〔1〕一般EOI方式:只有在当前结束的中断总是尚未处理完的级别最高的中断时,才能使用这种结束方式。〔2〕指定EOI方式:适合于在任何情况下使用。〔3〕自动EOI方式:只有在一些以预定速率发生中断,且不会发生同级中断互相打断或低级中断打断高级中断的情况下,才使用自动EOI方式。常用可编程接口技术及应用可编程计数器/定时器8253
1、每片有3个独立的16位计数通道。
2、每个计数器可按二进制或十进制来计数,时钟脉冲下降沿使计数器进行减1操作
3、每个计数器可编程设定6种工作方式之一。3
个引脚说明:
CLK时钟输入信号在计数过程中,此引脚上每输入一个时钟信号〔下
降沿〕,计数器的计数值减12)GATE门控输入信号
控制计数器工作,可分成电平控制和上升沿控制两种类型。
3)OUT计数器输出信号
当一次计数过程结束〔计数值减为0〕,OUT引脚上将产生一个输出信号
8253有几个计数通道,每条计数通道有哪些信号线,其作用是什么?答:8253有三个计数通道,每个计数通道有3条信号线:CLK:计数输入用于输入定时基准脉冲或计数脉冲.OUT:输出信号以相应的电平指示计数的完成或输出脉冲的波型.GATA:选通输入用于启动或禁止计数器的操作,以使计数器和计数输入信号同步。A1A0端口000计数器0001计数器1010计数器2011控制寄存器1××未选中试分析8253的6种工作方式的特点和功能。各方式下的时钟信号CLK和门控信号GATE分别起什么作用?时钟信号CLK的作用:在8253进行定时或计数工作时,每输入1个时钟脉冲信号CLK,便使计数值减18253
的工作方式
六种工作方式:1.方式0——计数结束中断2.方式1——硬件可重复触发的单稳态触发器3.方式2——分频器4.方式3——方波发生器
5.方式4——软件触发延时选通脉冲发生器
6.方式5——硬件触发延时选通脉冲发生器
1.方式0〔单脉冲发生器〕计数器只计一遍。控制字写入后,OUT端为低,当计数初值写入后,计数器开始减1计数,当计数值回0时,OUT输出端变为高电平。GATE信号为高电平2.方式1〔可重触发单稳态方式〕当写入控制字后,输出端OUT变为高电平,并保持高电平状态。然后写入计数初值,只有在GATE信号的上升沿之后的下一个CLK脉冲的下降沿,才将计数初值存放器内容装入减1计数存放器,同时OUT端变为低电平。然后计数器开始减1计数,当计数值减到0时,OUT端变为高电平。门控信号GATE上升沿触发方式2〔周期脉冲发生器〕可产生周期性的负脉冲信号,负脉冲宽度为一个时钟周期。方式3〔方波发生器〕GATE为高方式4〔软件触发的选通信号发生器〕GATE为高电平方式5〔硬件触发的选通信号发生器〕产生单个负脉冲信号GATE信号的上升沿控制字存放器
当地址信号A1A0= 11时,访问控制字存放器。控制字存放器从数据总线上接收CPU送来的控制字,并由控制字的D7、D6两位的编码决定控制字写入哪个通道的控制存放器中去。由存放在每个通道内的控制存放器的内容决定该通道的工作方式,选择计数器是按二进制还是数,并确定每个计数器初值的写入顺序。8253控制字8253控制字格式8253的初始化编程1.写入控制字1〕确定工作方式根据输出OUT确定产生高电平、中断信号方式0周期信号方式2、方式3周期性方波方式32〕确定8253端口地址A1A0=00-------计数器001-------计数器110-------计数器211-------控制口计数初值〔TC〕用途:计数、定时、分频计算公式为:t=TC/f,其中t为定时时间,TC为计数初值,f为输入时钟频率。如:1〕分频:输入频率为1MHZ通过8253输出频率1000HZTC=1MHZ/1000HZ(方式2、3〕2〕计数:计100个TC=100〔方式0〕3〕定时:TC=t*f=定时时间(t)/输入时钟周期
确定方式控制字注意:1〕计数初值大小对控制字的影响2〕初值最大不能超过16位表示范围用OUT指令写入控制字Movdx,控制端口地址Moval,控制字Outdx,al2.写入计数初值
计数初值写入对应的计数器端口地址当计数初值大于255时分高、低8位两次写入如果在方式控制字中的BCD位为1,那么写入的计数初值应为BCD数。例如:计数初值为50,采用BCD码计数,那么指令中的50必须写为50H。MOVDX,计数器端口地址MOVAX,初值〔十进制数表示〕〔二进制运算〕MOVDX,AL;写低8位MOVAL,AHMOVDX,AL;写高8位确定门控信号GATE方式0、2、3、4GATE为高方式1、5GATE为上升沿一、初始化某系统中8253芯片的地址为0FFF0H~0FFF6H,定义通道0,CLK0=2MHZ要求:输出OUT0为1KHZ的方波;定义通道1工作在方式0,其CLK1输入外部计数事件,每计满1000个,向CPU发出中断请求。〔1〕在图中画出8253使用到的CLK、OUT、GATE的连线并标明符号;〔2〕编写相应8253初始化程序段。.二、分频可编程定时/计数器8253的CLK0上接有5MHz外部计数器时钟如下图。指定该8253的接口地址为0400H--0404H,说明要用此8253产生周期为200ms的对称方波,应当如何去做?并画出相应的联线示意图,编写初始化程序。D0~D7CLK0RDGATE0WEOUT0A0A1CLK1GATE1OUT18253CLK2CSGATE2OUT2.5MHz时钟设计一个简单计件系统,一个脉冲代表一个事件,比方交通道路检测系统中通过检测点的车辆,工业控制系统中流水线上已加工好的工件。要求在计件过程中,当完成10000个工件记录后,系统发出1KHz信号推动喇叭发音通知用户。如以下图所示8253的计数器0用来统计工件数,8253的计数器1产生1KHz信号推动喇叭发音。设8253的端口地址为20H~23H。1〕编写初始化程序及应用程序。
8253的端口地址为40H~46H,CLK1=CLK2=1MHz,按以下要求编程:1〕假设使OUT1输出500HZ的方波,OUT2的输出50Hz的方波,分别确定8253计数器CNT1、CNT2的初值及方式控制字;2〕用OUT2的输出控制500HZ方波交替输出给扬声器,即OUT2=1时电路输出500HZ的方波,OUT2=0时电路输出低电平,试画出控制电路图;硬件如图,某报警实验系统的手动报警局部的接口电路如下图,要求开关K拨到A系统报警:扬声器发出频率为20KHz的声音〔即为20KHz的方波〕,并使七段数码显示“3〞;开关K断开解除报警:关闭扬声器,七段数码管暗。设8253的输入时钟频率为2MHz,8253的地址为40H~43H,8255A的地址为60H~63H。试编写:1、8253的初始化程序〔3分〕2、8255A的初始化程序〔2分〕3、报警系统的控制局部的程序〔根据题目要求〕〔5分〕
如图为某系统中的使用接口电路,其中8253的3个通道和控制存放器的地址为40H、41H、42H和43H,8255的B口地址为61H,试编写一段程序,利用8255配合,使扬声器发出20Hz的声音。〔假设8255初始化工作已完成〕
8253在IBMPC机中的应用。IBMPC机系统板上8253的接口电路如图,3个计数器的时钟输入频率为。系统分配给8253的端口地址为40H~43H。计数器0为方式3,先写低字节,后写高字节,二进制计数,计数初值为0。输出端OUT0接至中断控制器8259A的IR0,OUT0输出的脉冲周期约为55ms〔65536÷1193200〕,即计数器0每隔55ms产生一次中断请求。计数器1为方式2,只写低字节,二进制计数,计数初值为18。输出端OUT1接至DMA控制器8237A通道0的DMA请求DREQ0,作为定时〔µs〕刷新动态存储器的启动信号。IBMPC机BIOS对计数器0的初始化程序:
MOVAL,00110110BOUT43H,ALMOVAL,0OUT40H,ALOUT40H,ALIBMPC机BIOS对计数器1的初始化程序:
MOVAL,01010100BOUT43H,ALMOVAL,12HOUT41H,AL
BIOS中BEEP子程序,功能为使计数器2输出方波到扬声器。计数器2工作于方式3,先写低字节,后写高字节,二进制计数,计数初值为0533H。GATE2由8255A的PB0控制,当GATE2为高电平时,OUT2输出频率为896HZ的方波,经功率放大器和滤波后驱动扬声器发声。MOVAL,10110110BOUT43H,ALMOVAX,0533HOUT42H,ALMOVAL,AHOUT42H,ALIN61H,ALMOVAH,ALORAL,03HOUT61H,ALMOVBX,100;延时
MOVCX,0G7:LOOPG7DECBXJNZG7MOVAL,AHOUT61H,ALRET可编程并行接口芯片8255A端口A有3种工作方式(方式0、方式1、方式2)对外8根引脚PA7~PA0端口B
有2种工作方式:方式0、方式1对外8根引脚PB7~PB0端口C对外引脚PC0~PC73.8255的端口地址.片内译码电路(引脚A1、A0)A1A0=00-------PA〔可读/写〕01-------PB〔可读/写〕10-------PC〔可读/写〕11-------控制口〔可写〕1.方式0〔根本输入输出方式〕
工作在方式0的端口,为单向传送端口,输入或输出
作为输入口相当于普通的三态门作为输出口相当于普通的锁存器
CPU可利用工作在方式0的端口,直接对端口进行读写操作,实现CPU与外设间的数据传送。2.方式1〔选通输入输出方式〕A口工作在方式1时,C口的某3根引脚作为A口的联络信号。B口工作在方式1时,C口的某3根引脚作为B口的联络信号。工作在方式1的端口,为单向传送端口。在方式1下,C口作为A口、B口联络信号的引脚,其动作关系在芯片设计和制造时已固定,
不由用户自己安排,也不能编程改变。3.方式2〔双向传送方式〕端口工作在方式2时,C口的某5根引脚作为端口的联络信号
8255A只有A口可以工作在方式2下。与方式0和方式1不同的是:工作在方式2的端口,为双向传送端口,既可输入又可输出。8255A控制字〔写控制口〕1.方式选择控制字
例假设8255A控制端口的地址为203h,编程设置控制
使A口方式0输出;B口方式0输入10001/0011/0D7D6D5D4D3D2D1D0特征位A口方式0A口输出PC7~PC4I/OB口方式0B口输入PC3~PC0I/O由于对
C口无要求,控制C口的相应位D4,D0可为任意值,假设取0所以,方式控制字为1000
0010B,即82H设置控制字的程序段如下:
MOVDX,203h;置DX为控制口地址
MOVAL,82h;置控制字于AL中
OUTDX,AL;将控制字写入控制口例假设8255A控制端口的地址为203h,编程设置控制字,使A口方式0输出;B口方式0输入2.端口C置位/复位控制字
PA口可工作于方式0、方式1、方式2;
PB口可工作于方式0、方式1;
PC口只能工作于方式08255A的A口、B口、C口有哪几种工作方式,其特点是什么?C口有哪些使用特点?答:8255A的A口可以工作在3种工作方式的任何一种,B口只能工作在方式0或方式1,C口那么常常配合端口A和端口B工作,为这两个端口的输入/输出传输提供控制信号和状态信号。8255A的功能是什么,有哪几个控制字,各位的意义是什么?答:8255A是一种通用的可编程程序并行I/O接口芯片.它有两个控制字,一个是方式选择控制字,它的作用是实现对8255A的各个端口的选择。一个是对C口进行置位或复位控制字.它的作用是能实现对端口C的每一位进行控制。方式0无交互用8255A控制一组红、绿、黄灯,如以下图所示。要求用K1、K2的闭合与断开来控制红、绿、黄三灯的点亮,对应关系如下表所示。设8255A的端口地址范围为60H~66H。要求〔1〕写出8255初始化程序,初始化时无关项置0〔2〕根据题目要求编写控制局部的程序
电路图如以下图所示。图中数码管为共阳极类型,数码管的阴极a,b,c,d,e,f,g,Dp依次接至8255的PA0,PA1,…,PA7。答复以下问题:(1)假设要数码管的a段发光,那么应从8255的PA0输出高电平还是低电平?(2)假设要数码管显示数字0,那么应从8255的PA口送出字形码为多少?(3)写出8255的PA口和PC口的地址。(4)根据电路图及下表要求,编写完整的根据从开关读入的编码在数码管上显示相应数字的程序〔包括在数据段中定义字形码的内容〕。键盘如图,利用8255的PA口、PB口外接16个键,其中PB0列上的键号为0-7,而PB1列上的键号为0-F。PC口上外接一个共阴极LED显示器。要求利用查询法完成:假设按下0-7号键任一个使LED显示0,假设按下8-F号键任一个使LED显示8。写出实现上述功能的程序段,包括8255初始化〔8255的端口地址为20H~23H〕。8255A的A口接有四个开关,且每一开关接一上拉电阻。B口为输出端,经一8路反相驱动器,接有一个发光二极管(LED)组成的七段数码管,连接电路如下图。试编一程序,要求数码管显示开关所拨通的二进制编码对应的16进制数字(字符)。要求〔1〕指出8255各端口的地址〔2〕写出8255初始化程序〔3〕根据题目要求编写控制局部的程序方式0交互查询方式打印机接口如下图,图中的8255A的A口作为输出打印数据口,工作于方式0,PC7引脚作为打印机的数据选通信号STB,由它产生一个负脉冲,将数据线D7-D0上的数据送入打印机,PC2引脚接收打印机的忙状态信号,当打印机在打印某字符时,忙状态信号BUSY为1,此时,CPU不能向8255A输出数据,要等待BUSY信号为低电平无效时,CPU才能再次输出数据到8255A。现要求打印的字符存于缓冲区BUF中,共有500个字符,设8255A的端口地址为80H-83H。利用查询BUSY信号,编写CPU与打印机之间数据交换的程序段〔包括8255A初始化〕8088CPUPA0..PA7PC7PC2D0.打.印D7
机STBBUSY某应用系统以8255A作为接口,采集一组开关S7~S0的状态,然后通过一组发光二极管LED7~LED0显示开关状态,(Si闭合,那么对应LEDi亮,Si断开,那么对应的LEDi灭〕电路连接如以下图,8255A、B两组均工作在方式0。写出8255四个端口的地址。写出8255工作方式控制字。写出实现给定功能的汇编语言程序。151LED7LED0S7S0PB7PB0PA7PA08255AD7~D0D7~D0WR#RD#IOW#IOR#Y0#G1G2A#G2B#CBA74LS138CS#A9AEN&A8A7A6A5A4A3A2A1A0A1A0A口、B口、C口和控制口的地址分别是
320H、321H、322H和323H。A口工作在方式0输出,B口工作在方式0输入,C口空闲,所以其控制字是10000010b=82H程序如下: MOV AL,82H ;置方式字 MOV DX,323H ;置控制端口地址 OUT DX,ALL1: MOV DX,321H ;置B口地址 IN AL,DX ;读开关状态〔1断,0通〕 NOT AL ;状态取反 MOV DX,320H ;置A口地址 OUT DX,AL ;输出〔1亮,0灭〕 JMP L1【例题9.6】采用8255A作为与打印机接口的电路,CPU与8255A利用查询方式输出数据,硬件如下图,试编程实现将假设干个字节数据送打印机打印。设8255A的端口地址为90H~93H。分析:打印机一般有3个主要信号,BUSY表示打印机是否处于“忙〞状态,高电平表示打印机处于忙状态。为选通信号,低电平有效,该信号有效时,CPU输出的数据被锁存到打印机内部数据缓冲器。为打印机应答信号,当打印机处理好输入数据后发出该信号,同时撤销忙信号。CPU可利用BUSY信号或信号决定是否输出下一个数据。
当CPU通过打印接口要求打印机打印数据时,一般先查询BUSY信号,BUSY为低电平时,输出数据至打印口,再发送信号。
第一步分析
1.先查询BUSY信号,BUSY为低电平时,可以输出数据至打印口
2.再发送信号启动打印机第二步确定A、B、C口的工作方式第三步确定方式控制字第四步8255初始化第五步反复检测BUSY信号,直到电平为低进入下一步第六步送数据给打印机第七步启动打印机DATASEGMENTBUFFERDB‘45A……’COUNTDW$-BUFFERDATAENDSCODESEGMENTASSUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AXLEASI,BUFFERMOVCX,COUNTMOVAL,81H;8255A初始化
OUT93H,ALMOVAL,0FH;使PC7=1OUT93H,ALNEXT:INAL,92H;读PC端口WAIT1:TESTAL,01H;测试BUSY信号
JNZWAIT1MOVAL,[SI];读取一个数据,送入PA端口
OUT90H,ALMOVAL,0EH;输出选通脉冲
OUT93H,ALNOPNOPMOVAL,0FHOUT93H,ALINCSILOOPNEXTMOVAH,4CH;返回DOSINT21HCODEENDSENDSTART串行通信串行通信
数据的各位按时间顺序依次在一根传输线上传输异步通信与同步通信异步通信以字符为传送单位,用起始位和停止位标识每个字符的开始和结束信号的帧12345678起始位停止位1帧(1个字符)5-8位数据空闲位异步通讯的双方需要两项约定
①字符格式即字符的编码形式,奇偶校验、起始位和停止位的规定。
②波特率(bit/秒)——对传送速率的规定例:要求每秒传送120个字符,每帧为10位。解:传送的波特率为:
120×10=1200(位/秒)=1200ms
数据位传输率=120×8=960位/秒同步通信以一串字符为一个传送单位,字符间不加标识位,在一串字符开始用同步字符标识,硬件要求高,通讯双方须严格同步。
同步通信速度高于异步,可工作在几十~几百千波特。但同步通信要求用精确的同步时钟来控制发送端和接收端之间的同步。D/A转换与A/D转换接口及其应用1.量化当以数量表示连续量的时候都会遇到量化问题。所谓量化就是以一定的量化阶距为单位,把数值上连续的模拟量转变为数值上离散量的过程。A/D变换器的主要性能参数
(1)量化误差(2)分辨率(3)转换误差(4)转换时间(5)量程A/D转换与微机接口技术的一般原理三态总线输入问题有的ADC芯片带有三态输出缓冲器,其控制端为OE(输出允许)。假设不带三态缓冲器的ADC芯片(如AD570芯片)与微机接口,必须使用三态器件,如:8255A,74LS273等。时间配合问题A/D芯片一般有三个信号要求控制:启动转换信号(START),转换结束信号(EOC),允许输出信号(OE)。10.3.2A/D转换与微机接口技术的一般原理模拟输入允许输出OE数据输出启动信号Start转换结束EocA/D转换芯片ADC0809CMOS工艺的8位A/D变换器;
8位逐次逼近型A/D变换器;包括一个8通路模拟开关;不需要外部调零,不需要满刻度调整;数据输出接口有三态功能;转换时间:100us,功耗:15mW,工作温度范围:-40℃~+85℃;
ADC0808的误差为±1/2LSB,ADC0809的误差为±1LSB。ADC0809工作过程首先确定ADDA,ADDB,ADDC三位地址决定选择那一路模拟信号,然后使ALE=1,使该路模拟信号经选择开关到达比较器的输入端启动信号START,启动AD转换EOC信号由高变低,表示正在转换,EOC信号由低变高说明转换结束。此时转换结果保存在8位三态输出锁存器,CPU设置OE为高电平,翻开三态输出锁存器,转换结果出现在数据总线上,CPU既可读取。
【例11-2】图11-15是ADC0808通过8255A与CPU接口的例子。图中,0808的D7~D0接8255A的PA口;ADDC、ADDB、ADDA接PB2~PB0;START接PC6,ALE接PC7,EOC接PC08255A的PA口输入,PB口输出,PC口高4位输入,PC口低4位输出,三个口均工作于方式0。8255A的地址为200H~206H。当以查询的方式采样数据时,只需不断检测PC0。3、DAC0832与CPU接口举例编程程序以查询的方式对IN0端进行100次采样数据存入BUF开始的内存中。【例11-2】程序段1【例11-2】程序段1DATASEGMENTBUFDB100DUP(?);预留100个字节空间,存放采样后结果DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AXMOVAL,10010001B;8255初始化
MOVDX,206HOUTDX,ALMOVAL,00HMOVDX,204HOUTDX,AL;START、ALE=0
【例11-2】程序段1MOVBX,OFFSETBUF ;BUF是数据区首地址
MOVCX,100 ;CX中是采样次数
MOVAL,00HMOVDX,202HOUTDX,AL ;通过PB2~PB0选中采样通道IN0AGAIN:MOVAL,0FHMOVDX,206HOUTDX,AL ;通过PC7使ALE=1MOVAL,0DHMOVDX,206HOUTDX,AL ;通过PC6使START=1
【例11-2】程序段1MOVAL,00HMOVDX,204H ;START、ALE=0OUTDX,ALWAIT0:INAL,DX ;循环检测PC口的PC0〔EOC信号〕ANDAL,01HJNZWAIT0 ;假设EOC为低,那么开始转换WAIT1:INAL,DX ;继续循环检测PC口的PC0〔EOC信号〕ANDAL,01HJZWAIT1;假设EOC为高,那么转换结束
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 铌酸锂晶体制取工岗前综合管理考核试卷含答案
- 脂肪醇装置操作工安全技能评优考核试卷含答案
- 炭素煅烧操作工QC考核试卷含答案
- 热注运行工安全文化强化考核试卷含答案
- 遮蔽剂调制与涂布工班组协作知识考核试卷含答案
- 实验动物繁殖员基础培训强化考核试卷含答案
- 酸性气体吸收工诚信品质强化考核试卷含答案
- 高压电工证如何开展题库练习?大型工厂电气人员换证备考须知
- 2026年小学三年级语文上册第7单元第22课《带刺的朋友》说课教案
- 2026年小学成语故事《改过自新》自省向善语文课堂教案
- 电池均衡原理及讲解
- 日本eju考试物理真题及答案
- 供水管网改造期间的供水保障与服务
- 初中教师节升旗仪式演讲稿(16篇)
- 2026年高考总复习优化设计一轮复习化学(广西版)-第1讲 化学反应的热效应
- 从理论到实践:斯根普数学教育思想的深度剖析与应用探索
- 2025年高考语文真题全国一卷4篇高分范文
- 特殊人群服务管理课件
- 神经内科头痛诊疗规范
- 大学外事工作管理办法
- 2025至2030中国肌萎缩侧索硬化症(ALS)治疗行业项目调研及市场前景预测评估报告
评论
0/150
提交评论