1、微处理器系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计8学时学时1 1微处理器系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计第六章第六章 输入输出接口输入输出接口6.1 输入输入/输出接口基础输出接口基础(掌握)(掌握) 输入输入/输出接口功能与结构输出接口功能与结构输入输入/输出端口编址输出端口编址6.2 接口地址译码接口地址译码(掌握)(掌握) 6.3 接口信息传输方式接口信息传输方式(掌握)(掌握)程序查询传输方式程序查询传输方式程序中断传输方式程序中断传输方式直接存储器访问直接存储器访问(DMA)方式方式通道方式通道方式6.4 并行接口并行接口(掌握)(掌握)无握手
2、信号并行接口无握手信号并行接口带握手信号的并行接口带握手信号的并行接口可编程并行接口可编程并行接口6.5 串行接口串行接口(理解)(理解)同步串行接口同步串行接口异步串行接口异步串行接口2 2微处理器系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计6.1 6.1 输入输入/ /输出接口基础输出接口基础n接口的概念:计算机外部设备与计算机主接口的概念:计算机外部设备与计算机主机之间的硬件电路和驱动程序机之间的硬件电路和驱动程序作用:信息存储作用:信息存储操作模式:字节的整数倍操作模式:字节的整数倍器件种类:少器件种类:少速度时序:速度时序:CPU相当、匹配相当、匹配存储器存储器作用:与外
3、设间的信息交换作用:与外设间的信息交换操作模式:位、字节、多字节操作模式:位、字节、多字节器件种类:多器件种类:多速度时序:差异很大、时序不同速度时序:差异很大、时序不同接口接口3 3微处理器系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计简单简单I/OI/O接口框图接口框图n与与CPU相关相关的:数据口线、的:数据口线、I/O选择(地址线)、选择(地址线)、I/O读写读写n与与外设相关外设相关的:数据寄存器、控制寄存器、状态的:数据寄存器、控制寄存器、状态寄存器寄存器-端口端口数据缓存寄存器数据缓存寄存器端口端口A寄存器寄存器端口端口B寄存器寄存器控制寄存器控制寄存器状态寄存器状态寄
4、存器CSRS1RS0RDWR时序控制电路时序控制电路数据总线数据总线I/O数据数据控制控制I/O数据数据状态状态I/O选择选择寄存器选择寄存器选择I/O读读I/O写写4 4微处理器系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计接口分类接口分类并行接口:一次传输多个数据位并行接口:一次传输多个数据位串行接口:一次只有一位数据串行接口:一次只有一位数据传输方式传输方式同步接口:总线相连,并同步传输同步接口:总线相连,并同步传输异步接口:无共同的基准时钟异步接口:无共同的基准时钟时序控制方式时序控制方式程序查询方式:程序的执行实现程序查询方式:程序的执行实现程序中断方式:传输时由中断请求信
5、号触发程序中断方式:传输时由中断请求信号触发存储器直接存取访问方式(存储器直接存取访问方式(DMA)通道控制器,通道控制器,I/O处理机处理机传输控制方式传输控制方式外围接口:与外设无关,是系统的一部分外围接口:与外设无关,是系统的一部分外设接口:用于连接外设的接口外设接口:用于连接外设的接口工作对象工作对象5 5微处理器系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计接口功能接口功能n设备设备选择选择:译码选择设备、端口:译码选择设备、端口n数据数据收发和格式转换收发和格式转换:读:读/写,串写,串/并、并并、并/串串n接收解释执行接收解释执行CPU的命令的命令:控制信号的实现:控制
6、信号的实现n外设外设状态接收状态接收并转发给并转发给CPU:状态端口:状态端口n支持查询、中断、支持查询、中断、DMA等等多种传输控制多种传输控制方式方式n提供提供缓冲、暂存、驱动缓冲、暂存、驱动能力:信号驱动能力:信号驱动n错误检测错误检测功能:奇偶校验功能:奇偶校验n复位复位6 6微处理器系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计1.接口主要功能设备选择、数据缓冲信号转换、联络控制可编程/可配置/可重构2.接口硬件结构存储器接口、外设接口3.接口技术组成硬件:地址译码、读写控制、总线缓冲软件:驱动程序(初始化、传送控制、结束控制等)7 7微处理器系统结构与嵌入式系统设计微处理
7、器系统结构与嵌入式系统设计存储存储单元单元地址地址00000H00001HFF0FFHFF100HFF101HFFFFFH0000H0001HFF00HI/O端口端口地址地址FFFFH特点:特点:系统视端口和存储单元为系统视端口和存储单元为不同的对象不同的对象。 优点:优点:系统中存储单元和系统中存储单元和I/OI/O端口的数量可端口的数量可达到最大达到最大。缺点:缺点:需需专门信号专门信号来指示系统地址线上出现的是来指示系统地址线上出现的是存储单存储单元地址还是端口地址元地址还是端口地址;专用的端口操作指令比较单一;专用的端口操作指令比较单一;8 8微处理器系统结构与嵌入式系统设计微处理器系
8、统结构与嵌入式系统设计 存储器 1 接口 2 接口 1 CPU 外设 1 三总线 AB DB CB 存储器 2 接口 3 外设 2 外设 3 存储器读写 I/O 读写 独立端口编址总线结构独立端口编址总线结构9 9微处理器系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计存储单存储单元地址元地址00000H00001HFF0FFHI/O端端口地址口地址FF100HFF101HFFFFFH 特点:特点:将将端口看作存储单端口看作存储单元元,仅以,仅以地址范围的不同地址范围的不同来来区分两者。区分两者。 优点:优点:对对端口的操作和对端口的操作和对存储单元的操作存储单元的操作完全一样完全一样
9、,因此系统简单,并且对端口因此系统简单,并且对端口操作的指令种类较多操作的指令种类较多 缺点:缺点:CPUCPU对存储单元和对存储单元和I/OI/O端口的实际寻址空间都端口的实际寻址空间都小于其最大寻址小于其最大寻址空间空间1010微处理器系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计 存储器 1 接口 2 接口 1 CPU 外设 1 三总线 AB DB CB 存储器 2 接口 3 外设 2 外设 3 统一编址总线结构统一编址总线结构11 11微处理器系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计6.2 6.2 接口地址译码接口地址译码n全译码全译码u全部高位地址全部高位地
10、址线都参与译码形成片线都参与译码形成片选信号选信号n部分译码部分译码u只有只有部分高位地址部分高位地址线参与译码形成线参与译码形成片选信号片选信号n线译码线译码u每组芯片使用每组芯片使用一根地址一根地址线作片选线作片选n固定译码,可变译码固定译码,可变译码地址信号不完全地址信号不完全确定,所以存在确定,所以存在地址重叠问题,地址重叠问题,浪费寻址空间,浪费寻址空间,并可能导致误操并可能导致误操作;作;1212微处理器系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计使用读使用读/ /写控制信号区分写控制信号区分使用端口寄存器使用端口寄存器中的标志位区分中的标志位区分使用访问顺序区分使用访
11、问顺序区分1313微处理器系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计读/写控制信号、数据宽度指示信号、传送方式指示信号,等1414微处理器系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计全译码电路全译码电路D0 D7A0 A128K*8D078K*8D078K*8D07CS1 8K*8D07用门电路完成片选译用门电路完成片选译码,电路结构看起来比码,电路结构看起来比较复杂。较复杂。A19 A18 A17A16 A13 A14 A15 M/IOR/W1515微处理器系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计高位地址的高位地址的一部分地址进行译码一部分地址进行译
12、码产生片选信号。产生片选信号。最高段地址信最高段地址信号(号( A19A15 )不参与片选译码,即可为任何值)不参与片选译码,即可为任何值 8KB(2)CS 8KB(1)CS 8KB(4)CS 2-4译码器译码器A0A12A13A14Y0Y1Y3部分译码法部分译码法思考:试写出各芯思考:试写出各芯片占用的地址空间片占用的地址空间?1616微处理器系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计4个片选信号个片选信号必须使用必须使用4根地址根地址线,电路结构简单,缺点是:线,电路结构简单,缺点是:u 系统必须保证系统必须保证A16A13不能同时为有效低电平;不能同时为有效低电平;u 同部
13、分译码法一样,因为最高段地址信号(同部分译码法一样,因为最高段地址信号( A19 A15 ) 不参与译码,也存在地址重叠问题;不参与译码,也存在地址重叠问题;A13 A16A14 A15思考:试写出各芯片占用的地址空间。思考:试写出各芯片占用的地址空间。R/WD0 D7A0 A128K*8D078K*8D078K*8D07CS1 8K*8D07线选法线选法1717微处理器系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计三种译码方式的比较n全译码全译码 系统系统所有地址线所有地址线全部都应该全部都应该参与译码参与译码:u低段地址线低段地址线应直接接在模块上,应直接接在模块上,寻址模块内单
14、元寻址模块内单元;u中段地址线中段地址线译码后产生译码后产生片选信号区分不同模块片选信号区分不同模块;u高段地址线高段地址线可用作可用作片选信号有效的使能片选信号有效的使能控制;控制;n部分译码部分译码u高段地址高段地址信号信号不参与译码不参与译码,会造成地址空间的重叠及不,会造成地址空间的重叠及不连续。连续。n线译码线译码u电路结构简单,但系统必须保证参与片选的电路结构简单,但系统必须保证参与片选的地址线不能地址线不能同时为有效同时为有效电平;电平;u同部分译码法一样,因为有地址信号不参与译码,也存同部分译码法一样,因为有地址信号不参与译码,也存在地址重叠及不连续的问题;在地址重叠及不连续的
15、问题;1818微处理器系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计可变地址译码可变地址译码A15 A10A9A2A1A0模块地址空间模块地址空间0001000000000011001000H1003H000000011004H1007H1110111113DCH 13DFH1919微处理器系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计总线隔离技术驱动驱动/缓冲器缓冲器三态器件三态器件 隔离隔离/耦合器耦合器 2020微处理器系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计6.3 6.3 接口信息传输方式接口信息传输方式外设数据变化缓慢,始终外设数据变化缓慢,始终处
16、于就绪状态处于就绪状态,如如开关或开关或LED接口结构简单(通常只需要数据端口),适用面较窄接口结构简单(通常只需要数据端口),适用面较窄6.3.1 程序控制传输方式程序控制传输方式 输出 设备 输入 设备 输出锁存器 输入缓冲器 端口译码电路 1 DB AB M/IO WR RD 1 VCC G1 G2 L1 L2 L8 K1 K2 K8 2121微处理器系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计条件程序控制(程序查询)接口条件程序控制(程序查询)接口数据缓冲器数据缓冲器(输入端口输入端口)状态缓冲器状态缓冲器(输入端口)(输入端口)锁锁存存器器输输入入设设备备数据端口读选通数
17、据端口读选通状态端口读选通状态端口读选通输入选通输入选通输入数据输入数据RQD5VDB(数据、状态)(数据、状态)READY(1bit)数据锁存器数据锁存器(输出端口)(输出端口)状态缓冲器状态缓冲器(输入端口输入端口)输输出出设设备备输出选通输出选通RQD5VDB(数据、状态)(数据、状态)BUSY(1bit)ACK状态端口读选通状态端口读选通数据端口写选通数据端口写选通 接口避免了对端接口避免了对端口的口的“盲读盲读”、“盲写盲写” ,数据传送,数据传送的可靠性高,且硬的可靠性高,且硬件接口相对简单。件接口相对简单。 外设应具有必要的外设应具有必要的联络(握手)信号联络(握手)信号如如RE
18、ADY、ACK等;等; 缺点缺点是是CPU工作效工作效率低,率低,I/O响应速度响应速度慢;在有多个外设的慢;在有多个外设的系统中,系统中,CPU的查询的查询顺序由外设的优先级顺序由外设的优先级确定,实时性差。确定,实时性差。2222微处理器系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计 数据 端口 状态 端口 数据缓 冲器 状态 检测 译码电路 触发信号 状态信号 D2 数据总线 地址总线 控制总线78H 7AH 打印机 接口电路 程序查询方式的打印机接口程序查询方式的打印机接口状态位为状态位为0,则表明先前送出的数据已被打印,可以再送下一,则表明先前送出的数据已被打印,可以再送下
19、一个数据;若状态位为个数据;若状态位为1,则表明先前送出的数据还没打印,就,则表明先前送出的数据还没打印,就不能再送数据出去不能再送数据出去2323微处理器系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计并行接口握手并行接口握手时序图时序图BUSY数据有效数据有效DATA数据有效数据有效ACK5sSTROB5s1. 发送方发送方查询查询BUSY状态信号状态信号2. 当当BUSY“0”时时,发送方发送数据,发送方发送数据3.发送方用发送方用控制信号控制信号/STROB锁存锁存数据,该信号至少维持数据,该信号至少维持5s4. /STROB信号信号导致导致BUSY信号变为信号变为高电平高电平
20、5.接收方用接收方用/ACK状态状态信号表示数据收到,该信号至少维持信号表示数据收到,该信号至少维持5s6. /ACK信号信号导致导致BUSY信号变为信号变为低电平低电平2424微处理器系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计6.3.2 6.3.2 程序中断控制接口程序中断控制接口中断请求触发器QRD数据缓冲端口译码端口译码控制端口中断屏蔽触发器QD+5VWR外设READYDBABDBINTRINTA接口避免了接口避免了CPU 反复低效率的查询,适用于反复低效率的查询,适用于CPU任务繁忙、而任务繁忙、而数据传送不太频繁的系统中。数据传送不太频繁的系统中。外设应具有必要的联络握
21、手信号(如外设应具有必要的联络握手信号(如READY)作为)作为中断请求中断请求信号;信号;中断可被响应的条件:中断可被响应的条件:中断请求触发器置位;中断请求触发器置位;中断屏蔽触发器清零;中断屏蔽触发器清零;CPU内部开放中断;内部开放中断;CPU未处理更高级中断;未处理更高级中断;CPU现行指令执行完;现行指令执行完; 优优先先级级排排队队why?2525微处理器系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计什么是中断什么是中断n“中断中断”是外设给出的是外设给出的信号,它告诉微处理器信号,它告诉微处理器已发生了某种需要特别已发生了某种需要特别处理的事件,需要去处处理的事件,需
22、要去处理或为其服务理或为其服务-硬件层面硬件层面n中断中断,是指,是指CPU在执行在执行正常程序时,为正常程序时,为处理一处理一些紧急发生的情况,暂些紧急发生的情况,暂时中止当前程序时中止当前程序,转而,转而对该紧急事件进行处理,对该紧急事件进行处理,并在并在处理完后返回正常处理完后返回正常程序程序的过程的过程-软件层面软件层面中断服中断服务程序务程序1中断服务中断服务程序程序 2非预料事非预料事件件1非预料非预料事件事件 22626微处理器系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计非预料事件非预料事件是指事件发生的时间无法预知,是指事件发生的时间无法预知,即中即中断源何时产生中
23、断不确定,是随机的。断源何时产生中断不确定,是随机的。中断源产生中断的随机性,使中断服务程序的执行中断源产生中断的随机性,使中断服务程序的执行也具有随机性,也具有随机性,即何时执行中断服务程序不是在程序即何时执行中断服务程序不是在程序中安排好的。中安排好的。中断的随机性、不可预料性中断的随机性、不可预料性u中断系统是微机中实现中断功能的各种软、硬件中断系统是微机中实现中断功能的各种软、硬件的总称的总称u中断系统一般包括中断系统一般包括CPU内部相应的中断逻辑、接内部相应的中断逻辑、接口中的中断控制电路及各类中断服务子程序口中的中断控制电路及各类中断服务子程序2727微处理器系统结构与嵌入式系统
24、设计微处理器系统结构与嵌入式系统设计中断的相关概念中断的相关概念u中断源:中断源:引起中断的原因,或能够发出中断请求信引起中断的原因,或能够发出中断请求信号的外设号的外设 执行中断指令 INT N、INTO 等 中 断 控 制 逻 辑 自动产生的中断 除法错中断 单步中断 断点中断 溢出中断等 系统掉电 INTR 引脚 中断控制器 NMI 引脚 内存奇偶校验错 中断接口电路 键盘 打印机 串行口 CPU 内部 2828微处理器系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计u中断向量:中断向量:中断向量即中断服务子程序的入口中断向量即中断服务子程序的入口地址,也就是中断服务子程序的第一
25、条指令的地地址,也就是中断服务子程序的第一条指令的地址在存储器中的存放位置址在存储器中的存放位置u中断优先级:中断优先级:在系统中多个中断源可能同时提在系统中多个中断源可能同时提出中断请求时,需要按中断的轻重缓急给每个中出中断请求时,需要按中断的轻重缓急给每个中断源指定一个优先级别断源指定一个优先级别u断点断点:是指是指CPU执行的现行程序被中断时的下一执行的现行程序被中断时的下一条指令的地址,又称断点地址条指令的地址,又称断点地址中断的相关概念中断的相关概念2929微处理器系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计1000:150H 、 、 、 、 、MOV AX, 0ADD
26、AX, DXMOV DI , AX、 PUSH AX 、 、 IRETCPU在执行此指令时,在执行此指令时,某中断源发申请中断某中断源发申请中断;CPU在执行完该指令后,在执行完该指令后,转去执行中断子程转去执行中断子程地址地址1000:150H为断点为断点断点概念断点概念3030微处理器系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计中断系统相关概念中断系统相关概念u中断现场中断现场: :是指是指CPU转去执行中断服务程序前的运行转去执行中断服务程序前的运行状态,包括状态,包括CPU内部内部各寄存器、断点地址各寄存器、断点地址等。等。u中断嵌套中断嵌套:当当CPU正在进行某一级别中断
27、源的中断正在进行某一级别中断源的中断处理时,若有处理时,若有更高级别的新中断源更高级别的新中断源发出请求,且新中发出请求,且新中断源断源满足响应条件满足响应条件,则,则CPU应应中止当前的中断服务程中止当前的中断服务程序序,保护此程序的断点和现场,转而,保护此程序的断点和现场,转而响应高级中断响应高级中断。这种多级(重)中断的处理方式称为这种多级(重)中断的处理方式称为“嵌套嵌套”。3131微处理器系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计 现行主程序 中断服务子程序1 断点1 中断服务子程序2 断点2 IRET IRET 非预料事件非预料事件1 1非预料事件非预料事件2中断嵌套
28、过程示意图中断嵌套过程示意图3232微处理器系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计中断嵌套必须具备的几个条件中断嵌套必须具备的几个条件n正处于响应状态的中断服务程序中,应开正处于响应状态的中断服务程序中,应开放总中断(放总中断(IF位置位置1)n新中断应具有比原中断有新中断应具有比原中断有高的优先级高的优先级;同同级或低级均不能嵌套级或低级均不能嵌套n为保护各级中断服务程序的数据不被破坏为保护各级中断服务程序的数据不被破坏,所有服务程序中均应有,所有服务程序中均应有保护现场、恢复保护现场、恢复现场现场的指令的指令n每个中断服务程序末尾必须有每个中断服务程序末尾必须有IRET指
29、令指令以以示结束,从而返回被中断的程序地址处示结束,从而返回被中断的程序地址处3333微处理器系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计中断系统相关概念中断系统相关概念n中断屏蔽中断屏蔽:在某些情况下,在某些情况下,CPU可能不对中断请可能不对中断请求信号作出响应或处理,这就是中断屏蔽。求信号作出响应或处理,这就是中断屏蔽。n屏蔽情况屏蔽情况u中断屏蔽标志中断屏蔽标志IFu接口电路中的中断屏蔽寄存器接口电路中的中断屏蔽寄存器u系统在处理优先级别较高的中断请求时,不会系统在处理优先级别较高的中断请求时,不会理睬后来的级别较低的中断请求理睬后来的级别较低的中断请求 。3434微处理器
30、系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计中断处理过程中断处理过程 n中断检测中断检测 CPU内部硬件自动完成内部硬件自动完成 n中断判优中断判优u是否已有中断,哪个优先级更高是否已有中断,哪个优先级更高n中断响应中断响应uCPU内部硬件自动完成内部硬件自动完成 n中断处理服务中断处理服务 u中断服务是根据用户自行编制的指令顺序完成中断服务是根据用户自行编制的指令顺序完成各项操作的。各项操作的。 n中断返回中断返回3535微处理器系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计中断系统的功能中断系统的功能一、实现中断及返回一、实现中断及返回n中断源发出中断请求,中断源发出
31、中断请求,CPU决定是否响应,决定是否响应,若响若响应应,则,则保护断点和现场保护断点和现场,转入相应中断服务程序,转入相应中断服务程序,中断服务结束中断服务结束后,后,恢复现场和断点恢复现场和断点,继续执行,继续执行原程序。原程序。CPU执行流程执行流程中断服务程序中断服务程序1 1非预料事件非预料事件1 13636微处理器系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计中断系统的功能中断系统的功能二、能实现优先权排队二、能实现优先权排队n按各中断请求的重要程度排列按各中断请求的重要程度排列CPU响应的次响应的次序称为序称为中断优先级中断优先级。n即同时有多个中断请求到来时,即同时有
32、多个中断请求到来时,CPU会会首先首先响应和处理优先级别最高的中断请求响应和处理优先级别最高的中断请求。n中断优先级的实现可以中断优先级的实现可以用软件或硬件用软件或硬件设置设置3737微处理器系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计简单中断接口中的软硬件功能简单中断接口中的软硬件功能SRCPDQ外设发出的中外设发出的中断请求信号断请求信号CPU中断请求中断请求复位信号复位信号5V送至总线的中送至总线的中断请求引脚断请求引脚CPU中断请求中断请求允许信号允许信号硬件需完成的功能:硬件需完成的功能:可产生稳定的中断请求信号可产生稳定的中断请求信号可屏蔽该中断请求信号可屏蔽该中断请
33、求信号可清除该中断请求信号可清除该中断请求信号软件需完成的功能:软件需完成的功能:产生中断请求允许信号产生中断请求允许信号产生中断请求复位信号产生中断请求复位信号装载中断服务子程序装载中断服务子程序 将用户中断服务子程序的将用户中断服务子程序的入口地址放入中断向量表入口地址放入中断向量表3838微处理器系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计中断的软件判优法中断的软件判优法至至CPU的的INTR引脚引脚+由外设设置的由外设设置的中断请求寄存器中断请求寄存器1 2 3 4 5 6 7 8可由程序设置的可由程序设置的中断允许寄存器中断允许寄存器1 2 3 4 5 6 7 8 设备优
34、先级由软设备优先级由软件查询流程确定。件查询流程确定。试画出工作流程;试画出工作流程;考虑如何得到中断类型号;考虑如何得到中断类型号;3939微处理器系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计中断优先权编码电路中断优先权编码电路 8-3编编码码器器A2A1A0B2B1B0比比较较器器AB12中断请求信号中断请求信号+至至CPU的的INTR引脚引脚优先权失效信号优先权失效信号+优先优先权寄权寄存器存器CPU 1 2 3 4 5 6 7 8可由程序设置的可由程序设置的中断允许寄存器中断允许寄存器由外设设置的由外设设置的中断请求寄存器中断请求寄存器1 2 3 4 5 6 7 8 设备优
35、先级由编码设备优先级由编码器连接方式确定。器连接方式确定。4040微处理器系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计 设备优先级由链式设备优先级由链式电路连接顺序确定。电路连接顺序确定。菊花链式排队电路菊花链式排队电路B1 B1 B2B2H1 H1 H2 H2 G1 G1 G2 G2 CPU的中断响的中断响应信号应信号INTA到设备到设备1的中断的中断响应信号输出响应信号输出到设备到设备2的中断的中断响应信号输出响应信号输出到设备到设备7的中断的中断响应信号输出响应信号输出到设备到设备8的中断的中断响应信号输出响应信号输出1 2 3 4 5 6 78可由程序设置的可由程序设置的中
36、断允许寄存器中断允许寄存器由外设设置的由外设设置的中断请求寄存器中断请求寄存器至至CPU的的INTR引脚引脚+1 2 3 4 5 6 78A1 A1 A2 A2 4141微处理器系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计 端口 译码 三态 缓冲器 输入 锁存器 中断 请求 Q D R 中断屏蔽 触发器 Q1 输入设备 数据总线 地址总线 数据 +5VRD INTA INT 选通信号 接口的程序中断方式接口的程序中断方式4242微处理器系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计6.3.3 直接存储器访问(直接存储器访问(DMA)方式)方式n程序查询传送方式的特点程序查
37、询传送方式的特点u电路简单电路简单u不能实时响应不能实时响应u适用于简单的无实时性要求的场合适用于简单的无实时性要求的场合u需要需要CPU参与参与n程序中断传送方式的特点程序中断传送方式的特点u实时响应,需要中断控制电路实时响应,需要中断控制电路u适用于传输数据量较少,而要求实时性较高的场合适用于传输数据量较少,而要求实时性较高的场合u需要需要CPU参与参与nDMA方式方式u解决一次性传输大量数据解决一次性传输大量数据u一般用于存储器与一般用于存储器与I/O之间,之间,CPU不参与传输而运行其不参与传输而运行其他程序他程序4343微处理器系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计
38、数据缓数据缓冲器冲器地址缓地址缓冲器冲器数据总线数据总线地址总线地址总线时序控时序控制逻辑制逻辑IOR MEMRMEMW片选片选IOWCLK计数指示计数指示总线请求总线请求复位复位总线仲总线仲裁逻辑裁逻辑DMA控控制逻辑制逻辑地址寄地址寄存器存器计数寄计数寄存器存器状态寄状态寄存器存器总线响应总线响应DMA请求请求DMA应答应答D DMAMA控制器结构控制器结构外设申请外设申请DMA操作操作总线响总线响应应DMADMAC初始化初始化DMAC传输传输4444微处理器系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计DMAC具备的功能具备的功能n向向CPU发出总线请求信号发出总线请求信号HO
39、LD。n当当CPU允许出让总线控制权时,能够接收允许出让总线控制权时,能够接收CPU发发出的总线应答信号出的总线应答信号HLDA,并接管总线进入,并接管总线进入DMA方式。方式。n具有寻址功能,对存储器及具有寻址功能,对存储器及I/O寻址并修改地址指寻址并修改地址指针。针。n具有控制逻辑,能发出读具有控制逻辑,能发出读/写控制信号。写控制信号。n决定传输的字节数,并判断决定传输的字节数,并判断DMA是否结束。是否结束。n发出发出DMA结束信号,交出总线权,使结束信号,交出总线权,使CPU恢复正恢复正常工作状态常工作状态4545微处理器系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计存储
40、器存储器CPUDMACI/O地址总线地址总线AB总线请求总线请求总线响应总线响应DMA请求请求DMA响应响应数据总线数据总线DB控制总线控制总线CBD DMAMA传送过程传送过程I/ODMA请求请求DMAC总线请求总线请求CPU总线响应总线响应DMA响应响应存储器存储器CPUDMACI/O地址总线地址总线AB数据总线数据总线DB控制总线控制总线CBn可在可在I/O设备和存储器之间直接传送数据。设备和存储器之间直接传送数据。n传送时,源和目的均直接由硬件指定。传送时,源和目的均直接由硬件指定。n传输的数据块长度需要指定,计数由硬件自动进行。传输的数据块长度需要指定,计数由硬件自动进行。n在一批数
41、据传输完成后,一般通过中断方式通知在一批数据传输完成后,一般通过中断方式通知CPU进行后续处理。进行后续处理。nCPU和和I/O设备能在一定程度上并行工作,效率高。设备能在一定程度上并行工作,效率高。n一般用于高速批量数据的传输一般用于高速批量数据的传输 4646微处理器系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计6.4 6.4 并行接口并行接口n无握手并行接口无握手并行接口u最简单的直接数据输出或输入最简单的直接数据输出或输入 4747微处理器系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计 按键接口按键接口n线性键盘线性键盘u每一个按键需要占用每一个按键需要占用I/O端
42、口的一根口线端口的一根口线n矩阵键盘矩阵键盘u所有按键按行、列排列,较节约所有按键按行、列排列,较节约I/O口线口线u非编码键盘非编码键盘:主:主CPU处理按键的操作,降低了主处理按键的操作,降低了主CPU的效的效率率u编码键盘编码键盘:使用专用的:使用专用的CPU(单片机)处理按键操作,缓(单片机)处理按键操作,缓减主减主CPU的负担的负担并行并行端口端口VCC4848微处理器系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计矩阵键盘结构矩阵键盘结构 8位位并行并行输入输入端口端口8位位并行并行输出输出端口端口+5V10k10k10k10k第第0行行第第1行行第第2行行第第7行行第第0
43、列列 第第1列列 第第2列列 第第3列列 第第7列列4949微处理器系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计行扫描法(一)行扫描法(一) n第一步:判断是否有键按下第一步:判断是否有键按下 u输出端口输出端口的各位都为低电平,即的各位都为低电平,即各列都为各列都为0 0 u读取输入端口数据读取输入端口数据,如果输入不等于,如果输入不等于FFHFFH,则则有键被按下有键被按下 5050微处理器系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计行扫描法行扫描法( (二)二)n第二步:确定按键号第二步:确定按键号u确定按键的列数:输出扫描值,使确定按键的列数:输出扫描值,使某一
44、列为某一列为低电平,其它列为高电平低电平,其它列为高电平;读取;读取行值,看是行值,看是否有行线处于低电平否有行线处于低电平 u确定按键的行数:循环右移行值,直到为确定按键的行数:循环右移行值,直到为0 0 5151微处理器系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计行扫描法程序流程行扫描法程序流程 是否有一行接地?是否有一行接地?键盘键盘命令命令处理处理是是进位位为进位位为0?否否扫描值循环左移一位,扫描值循环左移一位,使下一列为低电平使下一列为低电平键号键号 +8,计数值,计数值 -1否否读进行值读进行值行值循环右移一位行值循环右移一位是是结束结束是是全部扫描完?全部扫描完?否
45、否设键号设键号 =0,计数器,计数器 =列数列数行扫描初值行扫描初值 =11111110B输出扫描值,使某一行为低电平输出扫描值,使某一行为低电平RCR ALRCR AL,1 1JNC PROCJNC PROCINC BLINC BL键值键值+1+15252微处理器系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计数码管结构数码管结构共阴结构共阴结构:输入控:输入控制端为高电平时,制端为高电平时,对应的对应的LED亮亮共阳结构共阳结构:输入控:输入控制端为低电平时,制端为低电平时,对应的对应的LED亮亮多位数码管组成多位数码管组成的数码显示屏可的数码显示屏可以有以有动态和静态动态和静态两
46、种显示方式两种显示方式5353微处理器系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计数码屏显示方式数码屏显示方式n静态显示静态显示:显示位数少时使用:显示位数少时使用u各各位位(8段)输入控制端分别与接口电路的输出段)输入控制端分别与接口电路的输出端相连;端相连;u各各段段(LED)恒定地导通或截止;)恒定地导通或截止;u占用占用I/O口:口:8*Nn动态显示动态显示:显示位数多时使用:显示位数多时使用u各位共享输入控制端;各位共享输入控制端;u需同时进行需同时进行位选位选(选中被点亮的位)和(选中被点亮的位)和段选段选(输(输入控制端确定各入控制端确定各LED的发光情况)的发光情况
47、)u各位轮流显示一遍的总时间不能过长各位轮流显示一遍的总时间不能过长(不大于不大于20msu占用占用I/O口口:8N5454微处理器系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计6 68 8数码显示屏静态显示接口数码显示屏静态显示接口5555微处理器系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计并行输出端口(带锁存功能)并行输出端口(带锁存功能)D0D7D7D6D5D4D3D2D1D0D5D4D3D2D1D0位0位1位2位3位4位5D0D7段选段选位选位选图 6 个数码管的显示接口电路5656微处理器系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计6.4.2 6.4
48、.2 带握手信号的并行接口带握手信号的并行接口n输入设备发出的选通信号输入设备发出的选通信号nCPU读接口中的状态缓冲寄存器,以确定外设是否准备好读接口中的状态缓冲寄存器,以确定外设是否准备好n若若READY=1,说明外设已将数据送到接口,说明外设已将数据送到接口,CPU读数据端读数据端口,同时数据端口的读信号将接口中的口,同时数据端口的读信号将接口中的D触发器清零,完成触发器清零,完成本次数据传送本次数据传送5757微处理器系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计6.4.2 6.4.2 带握手信号的并行接口带握手信号的并行接口n若若BUSY=0,CPU向数据端口写入需发送的数
49、据,同时将接向数据端口写入需发送的数据,同时将接口中的口中的D触发器置触发器置1,即令,即令BUSY=1n输出设备从接口的数据锁存器中读出数据;输出设备从接口的数据锁存器中读出数据;n输出设备发出响应信号输出设备发出响应信号ACK将接口中的将接口中的D触发器清零,即令触发器清零,即令BUSY=0,完成本次数据传送。,完成本次数据传送。nCPU读接口中读接口中的状态缓冲寄的状态缓冲寄存器,并检查存器,并检查状态信息以确状态信息以确定外设是否可定外设是否可以接收数据;以接收数据;5858微处理器系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计双向传输接口双向传输接口 D0D7 DIR AE
50、N IOR A0A9 IOW IRQ 复位 写数据 读数据 写控制 读控制 读状态 数据线 控制线 状态线 5 4 8 4 输出数据 寄存器 数据收发器 命令译码器 输入数据 缓冲器 控制寄存器 状态寄存器B 状态寄存器A 集电极驱动器 打 印 机 5959微处理器系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计模模/ /数转换接口数转换接口6060微处理器系统结构与嵌入式系统设计微处理器系统结构与嵌入式系统设计6.4.3 6.4.3 可编程并行接口可编程并行接口n允许用户通过写入不同的允许用户通过写入不同的控制字控制字改变其工作方式改变其工作方式n工作模式选择寄存器、中断允许寄存器、
侵权处理QQ:3464097650--上传资料QQ:3464097650
【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。