1、设计全地址译码电路中断接口设计DMA传送8253计数器(软硬件)8253(8255)初始化编程8255系统连接2译码方式全地址译码部分地址译码3全地址译码用全部的高位地址信号作为译码信号,使 得存储器芯片的每一个单元都占据一个唯 一的内存地址。4全地址译码例A19A18A17A16A15A14A13&1CS11SRAM 6264CS2+5V0111100056264芯片全地址译码例片首地片首地址址A19A12A0A19A12A00 0 0 0 0 0 0 0 0 0 0 0 01 1 1 1 0 0 01 1 1 1 0 0 01 1 1 1 1 1 1 1 1 1 1 1 1片尾地片尾地址址
2、该6264芯片的地址范围=F0000HF1FFFH6全地址译码例若已知某SRAM 6264芯片在内存中的地址为:3E000H3FFFFH试画出将该芯片连接到系统的译码电路。9部分地址译码用部分高位地址信号(而不是全部)作为译码 信号,使得被选中存储器芯片占有几组不同 的地址范围。10部分地址译码例两组地址:F0000H F1FFFH B0000H B1FFFHA19A17A16A15A14A13&16264CS1111000高位地址:高位地址:1110001011000,111100011应用举例将SRAM 6264芯片与系统连接,使其地址范围为:38000H39FFFH。使用74LS138译
3、码器构成译码电路。12存储器芯片与系统连接例由题知地址范围:0 0 1 1 1 0 0 0 0 0 0 1 1 1 0 0 1 1高位地址高位地址A19A12A013应用举例D0D7A0A12WEOECS1CS2A0A12MEMWMEMRD0D7A19G1G2AG2BCBA&A18A14A13A17A16A15VCCY014I/O译码的地址信号当接口只有一个端口时,16位地址线一般应 全部参与译码,译码输出直接选择该端口;当接口具有多个端口时,则16位地址线的高 位参与译码(决定接口的基地址),而低位 则用于确定要访问哪一个端口。15I/O地址译码例某外设接口有4个端口,地址为2F0H2F3H
4、,由A15A2译码得到,而A1、A0用来区分接口中的4个端口。试画该接口与系统的连接图。16I/O地址译码例地址范围:0 0 1 0 1 1 1 1 0 0 0 0 0 0 1 0 1 1 1 1 0 0 1 1任意状态任意状态A11片内地址片内地址图中不接入图中不接入17I/O地址译码例译码电路图:1A1111A1010A1818A3 3A2 2A9 9A7 7A4 4&CEA1 1A0 0接口芯片接口芯片IORIOW&18查询工作方式例外设状态端口地址为03FBH,第5位(bit5)为状态标志(=1忙,=0准备好)外设数据端口地址为03F8H,写入数据会使状态标志置1;外设把数据读走后又把
5、它置0。试画出其电路图,并将DATA下100B数据输出。状态端口状态端口D5D7-D0A9|A31&A15|A1013F8HA2A1A0GG2AG2BCBA74LS138Y01D7-D0CPQ7Q6Q5Q4Q3Q2Q1Q074LS273外外设设D7D6D5D4D3D2D1D0BUSYY33FBHIOWIOR状态端口地址:状态端口地址:0000 0011 1111 1011数据端口地址:数据端口地址:0000 0011 1111 1000 LEA SI,DATA MOV CX,100AGAIN:MOV DX,03FBHWAITT:IN AL,DX TEST AL,20H JNZ WAITT MO
6、V DX,03F8H MOV AL,SI OUT DX,AL INC SI LOOP AGAIN HLT 读状态读状态 进行一次传送进行一次传送Bit5=1?传送完否传送完否?修改地址指针修改地址指针 初始化初始化YNNY 结结 束束控制程序控制程序查询工作方式优点:软硬件比较简单缺点:CPU效率低,数据传送的实时性差,速度较慢2122三、中断控制方式特点:外设在需要时向CPU提出请求,CPU再去为它 服务。服务结束后或在外设不需要时,CPU可 执行自己的程序。优点:CPU效率高,实时性好,速度快。缺点:程序编制相对较为复杂。23以上三种I/O方式的共性信息的传送均需通过CPU软件:外设与内存
7、之间的数据传送是通过CPU执行程序来完成的(PIO方式);硬件:I/O接口和存储器的读写控制信号、地址信号都是由CPU发出的。缺点:程序的执行速度限定了传送的最大速度24四、DMA控制方式特点:外设直接与存储器进行数据交换,CPU不再担当数据传输的中介者;总线由DMA控制器(DMAC)进行控制(CPU要放弃总线控制权),内存/外设的地址和读写控制信号均由DMAC提供。25DMA控制方式DMAC外设外设接口接口CPUQRDMEMDACKHOLDHLDABUS控制信号控制信号地址信号地址信号26DMA控制方式的工作过程外设向DMA控制器发出“DMA传送请求”信号 DRQ;DMA控制器收到请求后,向
8、CPU发出“总线请 求”信号HOLD;CPU在完成当前总线周期后会立即发出HLDA 信号,对HOLD信号进行响应;DMA控制器收到HLDA信号后,就开始控制总 线,并向外设发出DMA响应信号DACK。27DMA控制方式工作过程例例:从外设向内存传送若干字节数据DMAC向I/O接口发出读信号;向地址总线上发出存储器的地址;发出存储器写信号和AEN信号;传送数据并自动修改地址和字节计数器判断是否需要重复传送操作;若数据传送完,DMA控制器撤销发往CPU的HOLD信号;CPU检测到HOLD失效后,则撤销HLDA信号,并在下一时钟周期重新开始控制总线。28DMA工作方式周期窃取:每个DMA周期只传送一
9、个字节或一个字就立即释放总线。数据块传送:DMAC在申请到总线后,将一块数据传送完后才释放总线,而不管中间DREQ是否有效。直接存取方式:DMA的数据传送请求直接发到主存储器,在得到响应后,整个工作过程在DMA控制器中由硬件完成。周期窃取的DMA方式:NYN允许允许DMADMAC请求总线请求总线CPU响应响应,DMAC获总线控制权获总线控制权DMA传送一个数据传送一个数据块结束?块结束?释放总线至少一个总线周期释放总线至少一个总线周期地址增量,计数器减量地址增量,计数器减量DMAC释放总线释放总线Y测试测试I/O的的DREQ DMA请求?请求?30DMA控制方式数据传输由DMA硬件来控制,数据
10、直接在内存和外设之间交换,可以达到很高的传输速率。控制复杂,硬件成本相对较高。31中断响应向中断源发出INTA中断响应信号;关中断保护硬件现场将FLAGS压入堆栈保护断点将CS、IP压入堆栈获得中断服务程序入口地址由由硬硬件件系系统统完完成成32中断服务子程序完成的工作关中断,保护现场,保护断点,找入口地址保护软件现场(参数)开中断(STI)中断处理关中断(CLI)恢复现场中断返回中断处理过程流程3334结构特点每个计数器含控制寄存器1616位初值寄存器位初值寄存器1616位计数寄存器位计数寄存器存放控制命令字存放控制命令字n内部内部3个计数器均为减法计数器个计数器均为减法计数器n根据计数脉冲
11、的频率及需要定时的时间长度确定计数初值根据计数脉冲的频率及需要定时的时间长度确定计数初值相同端口地址相同端口地址存放计数初值存放计数初值计数初值计数初值35外部引线及内部结构三个可独立工作的16位定时/计数器,一个控制寄存器。共占用4个端口地址,4个端口的地址编码:A1 A0 0 0 CNT0 0 1 CNT1 1 0 CNT2 1 1 控制寄存器引线引线365.8253的应用与系统的连接初始化程序设计写入控制字置计数初值37与系统的连接示意CLKGATEOUTD0D7WRRDA1A0CSDBIOWIORA1A0译码器译码器高高位位地地址址外设外设8253外部时钟外部时钟门控信号门控信号38应
12、用中的注意点每一次启动计数,需有两次写操作:写控制字写计数器初值如果初值为8位字长,则一次写入;若初值为16位字长,则 需两次写入每个计数器的控制命令字均送入控制寄存器各计数器的计数初值送到该计数器的计数寄存器及 初值寄存器;39初始化程序流程写控制字写控制字写计数值低写计数值低8位位写计数值高写计数值高8位位*非必须非必须40初始化程序流程当有两个以上计数器被应用时的初始化程序设计流程:初始化初始化CNT0初始化初始化CNT1初始化初始化CNT2写写CNT0控制字控制字写写CNT0计数初值计数初值41初始化程序流程写入全部计数器控制字写入全部计数器控制字写写CNT0计数初值计数初值写写CNT
13、1计数初值计数初值写写CNT2计数初值计数初值原则:原则:u先写入控制字先写入控制字u后写入计数初值后写入计数初值428253应用例一采用8253作定时/计数器,其接口地址为0120H0123H。输入8253的时钟频率为2MH。要求:CNT0每10ms输出一个CLK周期宽的负脉冲CNT1输出10KHz的连续方波信号CNT2在定时5ms后产生输出高电平画线路连接图,并编写初始化程序.工作的计数器工作的计数器工作方式工作方式计数初值计数初值启动方式启动方式计数脉冲频率计数脉冲频率438253应用例计算计数初值:CNT0:10ms/0.5us=20000 CNT1:2 MHz/10KHz=200 C
14、NT2:5ms/0.5us=10000确定控制字:CNT0:方式2,16位计数值 CNT1:方式3,低8位计数值 CNT2:方式0,16位计数值001101000101011010110000448253应用例CLK0GATE0OUT1D0D7WRRDA1A0CSDBIOWIORA1A0译码器译码器8253CLK2GATE1GATE2+5VCLK12MHzOUT0OUT2458253应用例初始化程序初始化程序CNT0:MOV DX,0123HMOV AL,34HOUT DX,ALMOV DX,0120HMOV AX,20000OUT DX,ALMOV AL,AHOUT DX,ALCNT1:CN
15、T2:468253应用例二安全检测和报警控制系统。478253应用例二初始状态下,D触发器的Q端输出低电平;系统通过三态门循环读取检测器状态,有异常出现时,检测器输出高电平。此时在D触发器的Q端输出高电平,启动8253计数器的通道0输出100Hz的连续方波信号,使报警灯闪烁,直到有任意键按下时停止;使计数器停止输出方波的方法是在Q端输出低电平。CLK0的输入脉冲为2MHz。要求:设计8253的译码电路;编写8253计数器的初始化程序及实现上述功能的控制程序。48例二解8253地址范围:0011 1110 00000011 1110 0011译码电路:G1G2AG2BCBA&11IOWIORA9
16、A5:A11A10A4A3A2Y049例二解8253计数初值:2MHz/100Hz=200008253工作方式:方式3n8253初始化程序:初始化程序:nMOV DX,3E3HnMOV AL,00110110nOUT DX,ALnMOV DX,3E0HnMOV AX,20000nOUT DX,ALnMOV AL,AHnOUT DX,AL 50例二解控制程序控制程序 XOR AL,AL MOV DX,3E5H OUT DX,AL MOV DX,3E4HNEXT:IN AL,DX AND AL,01H JZ NEXT MOV DX,3E5H MOV AL,2 OUT DX,ALGOON:MOV A
17、H,1 INT 16H JZ GOON XOR AL,AL OUT DX,AL MOV AH,4C INT 21H 51三、可编程并行接口825552并行接口8255的特点:通道型接口含3个独立的8位并行输入/输出端口,各 端口均具有数据的控制和锁存能力可通过编程,设置各端口工作在某一确定 状态下。531.引线连接系统端的主要引线:D0-D7CSRDWRA0,A1 REAST A1 A00 0 A端口端口0 1 B端口端口1 0 C端口端口1 1 控制寄存器控制寄存器54引线连接外设端的引脚:PA0 PA7PB0 PB7PC0 PC7分别对应分别对应A、B、C三个端口三个端口558255与系统
18、的连接示意图D0D7WRRDA1A0CSDBIOWIORA1A0译码器译码器8255A口口B口口C口口D0D7外外 设设563.工作方式基本输入/输出方式(方式0)选通工作方式(方式1)双向传送方式(方式2)57方式0:相当于三个独立的8位简单接口各端口既可设置为输入口,也可设置为输出 口,但不能同时实现输入及输出C端口可以是一个8位的简单接口,也可以分为 两个独立的4位端口常用于连接简单外设,适于无条件或查询方式58方式0的应用:习惯上:A端口和B端口作为8位数据的输入或输出口C口的某些位作为状态输入注:若使C端口低4位中某一位作为输入口,则低4位中其他位都应作为输入口。同时可设高4位作为输
19、出。598255工作于方式0的连接示意图D0D7WRRDA1A0CSDBIOWIORA1A0译码器译码器8255PA0|PA7B口口PC0D0D7数据数据状态状态数据数据外设外设1外设外设28255应用例:8086CPU通过8255实施监控。8255端口地址为1020H-1023H,启动操作由端口B的PB7控制(高电平有效),端口A输入8个监控点的状态(每个引脚接一个监控点),只要其中任一路出现异常情况(高电平),系统就通过与PC0相连的信号灯报警(高电平灯亮),要求信号灯亮灭3次。要求:设计系统线路图,要求用138译码器设计译码电路;编写8255初始化程序及启动、测试和报警控制程序60地址范
20、围:0001 0000 0010 00XX61控制程序 MOV DX,1023H MOV AL,1001X000B OUT DX,AL MOV AL,0 OUT DX,AL MOV DX,1021H MOV AL,80H OUT DX,ALA:MOV DX,1020H IN AL,DX CMP AL,0 JZ A62 MOV CX,3 MOV DX,1022H MOV AL,1B:OUT DX,AL INC AL CALL DELAY MOV AL,0 LOOP B JMP A63模拟量I/O通道:模拟接口电路的任务模拟接口电路的任务模拟电路的任务模拟电路的任务0010110110101100
21、工工业业生生产产过过程程传传感感器器放大放大滤波滤波多路转换多路转换&采样保持采样保持A/D转换转换放大放大驱动驱动D/A转换转换输出输出接口接口微微型型计计算算机机执行执行机构机构输入输入接口接口物理量物理量变换变换信号信号处理处理信号信号变换变换I/O接口接口输入通道输入通道输出通道输出通道变变送送器器64模拟量的输入通道传感器(Transducer)非电量电压、电流 变送器(Transformer)转换成标准的电信号信号处理(Signal Processing)放大、整形、滤波多路转换开关(Multiplexer)多选一采样保持电路(Sample Holder,S/H)保证变换时信号恒定
22、不变A/D变换器(A/D Converter)模拟量转换为数字量65模拟量的输出通道D/A变换器(D/A Converter)数字量转换为模拟量低通滤波平滑输出波形放大驱动提供足够的驱动电压,电流66A/D转换器应用例题题8.148.148255的地址范围0000001111110100 0000001111110111设计与系统的连接线路图单路模拟量输入,无需连接通道地址和地址锁存信号;利用8255的A口和B口读取转换结果,C端口输出和输入各种控制信息。6882558255初始化程序 INIT PROC NEARPUSH DXPUSH AX MOV DX,03F7HMOV AL,9AHOUT
23、 DX,ALMOV AL,01H ;PC0初始置1OUT DX,ALMOV AL,02HOUT DX,AL ;PC1初始置0POP AXPOP DXRET INIT ENDP69数据采集程序 START:MOV AX,SEG DATAMOV DS,AXLEA SI,DATACALL INITMOV DX,03F6HMOV AL,03HOUT DX,ALNOP MOV AL,01HOUT DX,ALWAITT:IN AL,DX nAND AL,40HnJZ WAITTnAND AL,0FEHnOUT DX,ALnMOV DX,03F5HnIN AL,DXnMOV SI,ALnINC SInMOV DX,03F4HnIN AL,DXnMOV SI,ALnHLT
©2010-2025 宁波自信网络信息技术有限公司 版权所有
客服电话:4008-655-100 投诉/维权电话:4009-655-100