书签 分享 收藏 举报 版权申诉 / 134
上传文档赚钱

类型-(大学课件)MCS51单片机的输入输出通道接口与中断PPT-PPT.ppt

  • 上传人(卖家):三亚风情
  • 文档编号:3225287
  • 上传时间:2022-08-08
  • 格式:PPT
  • 页数:134
  • 大小:1.87MB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《-(大学课件)MCS51单片机的输入输出通道接口与中断PPT-PPT.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    大学课件 大学 课件 MCS51 单片机 输入输出 通道 接口 中断 PPT
    资源描述:

    1、第5章 MCS-51单片机的输入/输出与中断 计算机基本输入计算机基本输入/输出接口概述输出接口概述 计算机在实际应用中,程序、数据或从现场计算机在实际应用中,程序、数据或从现场采集到的各种信号要通过输入设备送到计算机中采集到的各种信号要通过输入设备送到计算机中去处理。计算机处理后的结果或各种控制信号要去处理。计算机处理后的结果或各种控制信号要输出到输出装置或执行机构,以便显示、打印或输出到输出装置或执行机构,以便显示、打印或实现各种控制动作。常用的输入装置有键盘和各实现各种控制动作。常用的输入装置有键盘和各种现场采集装置;输出装置有打印机、显示器和种现场采集装置;输出装置有打印机、显示器和现

    2、场执行机构。现场执行机构。输入通道(前向通道):输入通道(前向通道):被测对象与单片机联系的信号通道。包括传感器或敏感元件、通道结构、信号调节、A/D转换、电源的配置、抗干扰等。输出通道(后向通道):输出通道(后向通道):单片机与被控对象联系的信号通道。包括功率驱动、干扰的抑制、D/A转换等。输入输入/输出通道简介输出通道简介 计算机与外围设备间传送三种信息:数据计算机与外围设备间传送三种信息:数据信息、状态信息和控制信息。如计算机与打印机信息、状态信息和控制信息。如计算机与打印机接口时,首先计算机将待打印的字符代码(数据接口时,首先计算机将待打印的字符代码(数据信息)送入电路锁存,同时通过信

    3、息)送入电路锁存,同时通过I/OI/O电路送出电路送出控制信息启动打印机接收字符代码并打印一行控制信息启动打印机接收字符代码并打印一行字符。打印完后,打印机要通过字符。打印完后,打印机要通过I/OI/O电路向计电路向计算机发出打印机算机发出打印机“空闲空闲”的状态信息,要求计的状态信息,要求计算机再次输出数据。算机再次输出数据。5定义定义 I/O接口是位于系统与外设之间、用来协助完成数据传送和控制任务的逻辑电路。即:把外设把外设连接到总线上的一组逻辑电路的总称。实现外设与主机连接到总线上的一组逻辑电路的总称。实现外设与主机之间的之间的信息交换。信息交换。PC机系统板的可编程接口芯片、I/O总线

    4、槽的电路板(适配器)都是接口电路 不同不同I/O设备对应设备对应I/O接口不同。接口不同。I/O接口受接口受CPU控制,控制,I/O设备受设备受I/O接口控制。接口控制。为增加通用性,为增加通用性,I/O接口电路通常均具有可编程功能。接口电路通常均具有可编程功能。微机系统的应用与外设接口的设计、选用和连接。微机系统的应用与外设接口的设计、选用和连接。I/O设备种类设备种类:有电子式、机械式及其它各种形式。有电子式、机械式及其它各种形式。速度差异速度差异:有秒级、毫秒级、微秒级有秒级、毫秒级、微秒级信号类型信号类型:有数字量、模拟量、开关量。有数字量、模拟量、开关量。数据的格式有串行、并行等。数

    5、据的格式有串行、并行等。因此,外围设备一般不能与计算机直接相连,必因此,外围设备一般不能与计算机直接相连,必须通过专门的中介电路须通过专门的中介电路接口,才能与接口,才能与CPU进行进行信息交换。信息交换。I/O接口要解决的问题 速度匹配速度匹配(Buffer)信号电平和驱动能力信号电平和驱动能力(电平转换器、驱动器电平转换器、驱动器)信号形式匹配信号形式匹配(A/D、D/A)信息格式信息格式(字节流、块、数据包、帧字节流、块、数据包、帧)时序匹配时序匹配(定时关系定时关系)总线隔离总线隔离(三态门三态门)数据缓冲功能数据缓冲功能 缓解接口与缓解接口与CPU工作速度的差异工作速度的差异,通过接

    6、口中数据缓冲寄存器通过接口中数据缓冲寄存器和锁存器实现和锁存器实现.联络功能联络功能 通过接口中状态寄存器通过接口中状态寄存器,了解外设的工作状态了解外设的工作状态.寻址功能寻址功能(I/O地址译码与设备选择)把选中的与总线相接,未选中的与总线隔离(高阻态)把选中的与总线相接,未选中的与总线隔离(高阻态)数据转换功能数据转换功能(信号电平与类型的转换)形式、格式、电平、功率、码制等转换形式、格式、电平、功率、码制等转换.中断管理功能中断管理功能 通过接口中设置的中断控制器,实现中断通过接口中设置的中断控制器,实现中断I/O方式下数据传送方式下数据传送。I/O接口的功能I/O接口电路的分类按通用

    7、性分:专用接口、通用接口。专用接口:CRT显示控制器、键盘、软盘、DMA控制器等。通用接口:ISA、PCI接口,串口、并口、USB接口等。按可编程分:可编程接口、不可编程接口可编程接口:在不改动硬件的情况下,用户只要修改初始化程序就可以改变接口工作方式。接口灵活性、可扩充性好。可编程接口电路要用可编程接口芯片设计。常用可编程接口有并口8255、8253,串口8250、8251,中断8259等。按与外设数据传送方式分:并行I/O接口、串行I/O接口。I/O接口接口:用于连接用于连接CPU与与I/O设备的所有接设备的所有接口统称为口统称为I/O接口。接口。某些通用集成电路芯片可以用作某些通用集成电

    8、路芯片可以用作I/O接口,接口,如如74LS373、74LS165等。等。更大量的更大量的I/O接口芯片是专门为计算机设计接口芯片是专门为计算机设计的,如的,如ADC0809、MAX232、8279等。等。I/O接口电路应有以下功能:接口电路应有以下功能:1)数据缓冲:2)信号变换:3)电平转换:4)传送控制命令和状态信息:12I/OI/O接口的主要功能:同解决的问题接口的主要功能:同解决的问题速度匹配(Buffer)信号电平和驱动能力(电平转换器、驱动器)信号形式匹配(A/D、D/A)信息格式(字节流、块、数据包、帧)时序匹配(定时关系)总线隔离(三态门)14I/O接口与接口与I/O设备设备

    9、15简单的输入接口举例接口电路图如下:83FCH83FFH译码器16锁存器:由D触发器构成通常一个器件包含8个D触发器常用芯片:(教材图5.5、图5.6)74LS27374LS374(具有三态输出的锁存器,内部结构见图5.8)应用例子:发光二极管接口简单的输出接口举例译译码码器器=1=1.+5VRD0D7CPQ0Q7.D0D7A0A15IOW#74LS273R输入输入/输出的编址方式输出的编址方式 1I/O接口与存储器统一编址接口与存储器统一编址2I/O接口单独编址接口单独编址18数据传送方式程序控制下的数据传送通过CPU执行程序中的I/O指令来完成传送,又分为:无条件传送、查询传送、中断传送

    10、直接存储器存取(DMA)传送请求由外设向DMA控制器(DMAC)提出,后者向CPU申请总线,最后DMAC利用系统总线来完成外设和存储器间的数据传送I/O处理机CPU委托专门的I/O处理机来管理外设,完成传送和相应的数据处理19 通常分类的I/O传送方式 主机与外设之间数据传送的控制方式有以下四种:无条件传送查询式传送中断方式传送直接存储器存取(DMA,Direct Memory Access)输入输入/输出的工作方式输出的工作方式1、无条件传送方式、无条件传送方式2、查询传送方式、查询传送方式3中断传送方式中断传送方式4.直接数据信道传送(直接数据信道传送(DMA)方式)方式21无条件传送方式

    11、适用于外设总是处于准备好状态以下外设可采用无条件传送方式:开关发光器件(如发光二极管、7段数码管、灯泡等)继电器步进电机优点:软件及硬件接口简单缺点:仅适用于简单外设,适应范围较窄传送流程接口实例22例:无条件输入IOR三态缓冲器OEI/O装置地址译码器CSD7D0A15A1A00160HMOV DX,288HINAL,DX0288H23例:无条件输入MOV DX,288HINAL,DX74LS244+5V10K x 8G1 G2CSRD:D7D0K0K724例:无条件输出地址译码器数据锁存器A15A1IOWA0CS0160H输出设备D7D0MOV DX,288HMOV AL,BXOUT DX

    12、,AL0288H25例:无条件输出MOV DX,288HMOV AL,BXOUT DX,AL+5V74LS373300 x 8LE OECSWR:D7D0 图5-3 查询方式输入接口电路 P0.7 P0.0 8051 ALERD地址锁存器三态缓冲器数据锁存器Q RD D C1A71D0 输 入 装 置8位数据VCC选通A3图54如何编程读取输入装置数据 MOV R0,#0FEH ;指向状态端口TEST:MOVX A,R0 ;读取状态信息 JNB ACC.0,TEST ;输入装置准备好吗?;D0=0继续等待 DEC R0 ;数据准备好,指向数据端口MOVX A,R0;读入数据MCS-51系列单片

    13、机输入系列单片机输入/输出端口控制输出端口控制MCS-51系列单片机输入系列单片机输入/输出概述输出概述 MCS-51系列单片机有系列单片机有4个个8位双向并行输入位双向并行输入/输输出(出(I/O)端口:)端口:P0、P1、P2和和P3,共,共32位,位,P0口口为三态双向口,可驱动为三态双向口,可驱动8个个TTL电路,电路,P1、P2、P3口为准双向口(作为输入时,口线被拉成高电平)。口为准双向口(作为输入时,口线被拉成高电平)。此四个端口都可以做为单独的输入或输出使此四个端口都可以做为单独的输入或输出使用,即每一支用,即每一支I/O脚位都可以做输入用,也可以做脚位都可以做输入用,也可以做

    14、为输出使用。当做为输出时,则每一只管脚可位编为输出使用。当做为输出时,则每一只管脚可位编程输出高电平程输出高电平“1”或低电平或低电平“0”驱动外部电路。驱动外部电路。实际应用中,实际应用中,P0口用于输出外部存储器口用于输出外部存储器的低的低8位地址,并分时复用作为与外部存储位地址,并分时复用作为与外部存储器连接的数据总线口;器连接的数据总线口;P2口用于输出高口用于输出高8位位地址;地址;P3口常用于特殊功能寄存器。只有口常用于特殊功能寄存器。只有P1口是留给用户使用的基本口是留给用户使用的基本I/O口,供用户使口,供用户使用。用。MCS-51单片机输入输出(单片机输入输出(I/O)端口编

    15、程)端口编程 P1口既可以做输入端口又可以做输出端口。口既可以做输入端口又可以做输出端口。在我们所用的实验板中,在我们所用的实验板中,P1口通过反向驱动电路口通过反向驱动电路ULN2019控制数码管工作。控制数码管工作。试根据实验板试根据实验板I/O控制端口原理图,设计通过控制端口原理图,设计通过89S51单片机的单片机的P1口控制二极管发光(要求用软口控制二极管发光(要求用软件延时使其产生动态效果)。根据硬件原理,通件延时使其产生动态效果)。根据硬件原理,通过过P1口可控制发光二极管及蜂鸣器工作。口可控制发光二极管及蜂鸣器工作。I/O口口控制原理图如图控制原理图如图5-5所示。所示。硬件电路

    16、分析:硬件电路分析:图中反向驱动放大器图中反向驱动放大器ULN2019接发光二极接发光二极管阴极,发光二极管阳极通过限流电阻接管阴极,发光二极管阳极通过限流电阻接+5V电电源(限流电阻的计算应以发光二极管亮度满足要源(限流电阻的计算应以发光二极管亮度满足要求即可。电流小,亮度不够;电流大,耗电、影求即可。电流小,亮度不够;电流大,耗电、影响二极管寿命,一般二极管电流为响二极管寿命,一般二极管电流为15mA左右)。左右)。J2为为3列列8行排针,排针的行排针,排针的1、4、7、10、13、16、19接接ULN2019的输入,的输入,3、6、9、12、15、18、21、24为排针的中间引脚,为排针

    17、的中间引脚,2、5、8、11、14、17、20、23接接89S51的的P1口。口。要由编程控制发光二极管发光,要由编程控制发光二极管发光,ULN2019必须必须输出低电平,而输出低电平,而ULN2019的输入必须接的输入必须接89S51的的P1口,才能通过软件编程控制二极管发光,所以应借口,才能通过软件编程控制二极管发光,所以应借助短路环将助短路环将J2中的(中的(1、2)、()、(4、5)、()、(7、8)、)、(10、11)、()、(19、20)短接。)短接。将将J15中的(中的(1、2)、()、(4、5)用短路环短接。)用短路环短接。硬件电路检测。线路接好后,用万用表电阻档检硬件电路检测

    18、。线路接好后,用万用表电阻档检测测89S51的的P10、P11、P12、P13、P14、P15、P16是是否与否与ULN2019的输入的输入1、2、3、4、5、6、7接通。若接通。若接通,硬件电路连接正常,若不通,应检查线路硬件接通,硬件电路连接正常,若不通,应检查线路硬件故障,直至接通为止(注意:不能测故障,直至接通为止(注意:不能测P10、P11、P12、P13与与ULN2019的输出端)的输出端)软件编程分析:软件编程分析:1)通过置位指令或字节传送指令使)通过置位指令或字节传送指令使P10P16输出输出为为“1”时,通过时,通过ULN2019输出为输出为“0”,则,则LED亮、亮、蜂鸣

    19、器叫;当蜂鸣器叫;当P1口输出为口输出为“0”时,时,LED熄灭、蜂熄灭、蜂鸣器停。鸣器停。2)要让二极管发光,必使)要让二极管发光,必使P1端口为高电平端口为高电平 SETB P1.0 SETB P1.1 SETB P1.2 SETB P1.3 SETB P1.4SETB P1.5SETB P1.6或 MOV P1,#7FH软件延时子程序软件延时子程序:入口参数入口参数R7、R6,出口:参数出口:参数 无无DELAY:MOV R7,#0FH;2usDELA0:MOV R6,#20H;2usDELA1:NOP;1usDJNZ R6,DELA1;2usDJNZ R7,DELA0;2usRET;2

    20、us软件延时子程序的执行时间计算:晶振选软件延时子程序的执行时间计算:晶振选12MHZ 2+2+(1+2)*32+2*15+2=1504 us若需要其它的延时时间可在上述程序中再加循环层或减若需要其它的延时时间可在上述程序中再加循环层或减少循环层。少循环层。37接口电路的内部结构1 1、接口硬件接口硬件数据线数据线控制线控制线状态线状态线DBCBAB数据输入寄存器数据输入寄存器(or 三态门)三态门)数据输出寄存器数据输出寄存器(锁存器)(锁存器)状态寄存器状态寄存器(or 三态门)三态门)命令寄存器命令寄存器译码译码电路电路控制控制逻辑逻辑接接外外设设接接主主机机38 接口功能接口功能CPU

    21、与外设主要有数据、状态和控制信息需要相互交换,从应用角度看内部:数据寄存器(端口地址)保存外设给CPU和CPU发往外设的数据 状态寄存器(端口地址)保存外设或接口电路的状态 控制寄存器(端口地址)保存CPU给外设或接口电路的命令(4)接口电路可含有多个端口地址39CPU侧引脚信号:侧引脚信号:外设侧引脚信号:外设侧引脚信号:数据信号:数据信号:接口缓冲寄存器与外设间的数据交换;接口缓冲寄存器与外设间的数据交换;状态信号:状态信号:外设工作状态送给接口的状态寄存器;外设工作状态送给接口的状态寄存器;控制信号:控制信号:接口的内部控制逻辑控制外设工作的控制接口的内部控制逻辑控制外设工作的控制信号和

    22、同步信号。信号和同步信号。地址信号:地址信号:选择选择I/O接口中的不同寄存器;接口中的不同寄存器;数据信号:数据信号:命令或数据写入到相应寄存器,或者从相命令或数据写入到相应寄存器,或者从相关寄存器读取数据或状态;关寄存器读取数据或状态;控制信号:控制信号:控制命令的执行、时序、信号同步和片选;控制命令的执行、时序、信号同步和片选;状态信号:状态信号:接口的部分工作状态信号。接口的部分工作状态信号。内部控制逻辑:内部控制逻辑:根据控制寄存器、状态寄存器、总线控制信号及根据控制寄存器、状态寄存器、总线控制信号及外设状态信号控制外设状态信号控制I/O接口的工作。接口的工作。40常见接口插槽常见接

    23、口插槽PS2鼠标鼠标PS2键盘键盘千兆网千兆网10/100M网卡网卡USB并行口并行口MIDI/游戏接口游戏接口显示器接口显示器接口13941394a麦克风麦克风/音箱音箱/线入接口线入接口串行口串行口412、接口软件(设备驱动程序)接口软件(设备驱动程序)初始化程序:初始化程序:设置接口工作方式及初始条件。设置接口工作方式及初始条件。传送方式处理程序:传送方式处理程序:CPU针对不同的针对不同的I/O设备采用不同设备采用不同的处理方式。如设置中断向量等。的处理方式。如设置中断向量等。主控程序:主控程序:完成接口任务的程序。完成接口任务的程序。程序终止与退出程序:程序终止与退出程序:对接口电路

    24、硬件保护及操作系对接口电路硬件保护及操作系统中数据恢复。统中数据恢复。辅助程序:辅助程序:提供人提供人-机对话手段。机对话手段。423、接口电路芯片的分类、接口电路芯片的分类 接口电路通常采用中大规模、超大规模集成电路接口芯片:通用接口芯片支持通用的数据I/O和控制的接口芯片如:并行接口芯片、串行接口芯片等。面向外设的专用接口芯片针对某种外设设计接口如:显示接口电路、磁盘驱动接口电路等。面向微机系统的专用接口芯片与CPU和系统配套使用,以增强其总体功能如:8259A、8237、8253、8251、8255等。434、可编程接口、可编程接口许多接口电路具有多种功能和工作方式,可以通过编程的方式设

    25、定。接口电路需要与系统物理连接,及编写接口软件。接口软件:1、初始化程序段:设定芯片工作方式等2、数据交换程序段:管理、控制、驱动外设,负责外设和系统间信息交换。44I/O端口的编址接口电路占用的I/O端口的编址可分为两种方式I/O端口单独编址I/O地址空间独立于存储地址空间如INTER系列80X86I/O端口与存储器统一编址它们共享一个地址空间如MCS-51系列单片机45I/O端口单独编址优点:I/O端口的地址空间独立控制和地址译码电路相对简单专门的I/O指令使程序清晰易读缺点:I/O指令没有存储器指令丰富内存内存空间空间I/O空间空间FFFFF0FFFF注:注:80 x86采用采用I/O端

    26、口独立编址端口独立编址:46I/O端口与存储器统一编址优点:不需要设计专门的I/O指令I/O数据存取与存储器数据存取同样缺点:I/O端口占用存储器地址空间程序易读性差(不易分清访内存、访问外设)内存内存部分部分I/O部分部分存储器空间存储器空间00000FFFFF47I/O地址的译码I/O地址的译码方法与存储器地址的译码方法地址的译码方法与存储器地址的译码方法一样,但有它的特点:一样,但有它的特点:部分译码时,通常是中间地址线不连接部分译码时,通常是中间地址线不连接部分译码也有最低地址线不连接的情况部分译码也有最低地址线不连接的情况每个接口电路通常只占用几个每个接口电路通常只占用几个I/O地址

    27、,这时可以地址,这时可以利用基本逻辑门电路进行地址译码利用基本逻辑门电路进行地址译码除采用译码器、门电路进行译码外,除采用译码器、门电路进行译码外,I/O地址译码地址译码还经常采用可编程逻辑器件还经常采用可编程逻辑器件PLD为了给系统一定的选择余地,有些接口电路利用为了给系统一定的选择余地,有些接口电路利用比较器、开关或跨接器等进行多组比较器、开关或跨接器等进行多组I/O地址的译码地址的译码给几个给几个译码实例译码实例48逻辑门电路进行I/O地址译码A9A8A7A6A5A2A4A3AENA1A074LS033E7H49I/O接口综合应用例子根据开关状态在7段数码管上显示数字或符号共阳极7段数码

    28、管结构见教材图5.10用74LS273作为输出接口,把数据送到7段数码管74LS273的地址假设为F0H用74LS244作为输入口,读入开关K0K3的状态74LS244的地址假设为F1H当开关的状态分别为00001111时,在7段数码管上对应显示0F(7段码表见下页)50 7段码段码.gfedcba形状形状符号符号7段码段码.gfedcba形状形状符号符号01110001F00000111701111001E01111101601011110D01101101500111001C01100110401111100B01001111301110111A0101101120110011190000

    29、0110101111111800111111051O1 I1O2 I2O3 I3O4 I4#E1K0K3+5VGG2AG2BCBA1174LS244D0 Q0|Q1D7 Q2 Q3 Q4CP Q5 Q6 Q7 abcdefgDP74068个个反相器反相器74LS273Rx81174LS138D0D7IOW#IOR#Y0Y1F0H=0000 0000 1111 0000F1H=0000 0000 1111 0001&1A7A4A15A8A3A2A1A0D0D1D2D3译码电路译码电路52查询传送方式适用于外设并不总是准备好,而且对传送速率、传送效率要求不高的场合。CPU在与外设交换数据前必须询问

    30、外设状态:“准备好没有?”对外设的要求:应提供设备状态信息对接口的要求:需要提供状态端口优点:软件比较简单缺点:CPU效率低,数据传送的实时性差,速度较慢流程图53查询方式的流程图超时超时?READY?READY?与外设进与外设进行数据交换行数据交换超时错超时错读入并测试外设状态读入并测试外设状态YNYN传送完?传送完?防止死循环防止死循环复位计时器复位计时器NY注:多个外设时,查注:多个外设时,查询流程见教材图询流程见教材图5.155.15P K54DMA传送方式 无条件传送、查询传送、中断传送这几种方式都是通过CPU执行程序实现的,占用了CPU资源,传送速度慢(实际上是软件传送方式,最大速

    31、度约为几十KB/秒)。为了实现高速外设与内存之间的数据交换,可采用直接存储器存取方式(DMA)。DMA传送方式通常用来高速传送大批量的数据块。如:传送方式通常用来高速传送大批量的数据块。如:硬盘和软盘硬盘和软盘I/O;多处理机和多程序数据块传送;多处理机和多程序数据块传送;在图像处理中,对在图像处理中,对CRT屏幕送数据;屏幕送数据;快速数据采集;快速数据采集;DRAM的刷新操作。的刷新操作。快速通信通道快速通信通道I/O;55 DMA传送:外设 内存外设直接与存储器进行数据交换外设直接与存储器进行数据交换,CPU不再担不再担当数据传送的任务,而由当数据传送的任务,而由DMA控制器控制总线控制

    32、器控制总线(DMAC)进行数据传送。()进行数据传送。(CPU要放弃总线要放弃总线控制权),内存控制权),内存/外设的地址和读写控制信号均外设的地址和读写控制信号均由由DMAC提供。提供。优点:数据传输由DMA硬件来控制,数据直接在内存和外设之间交换,可以达到很高的传输速率(可达几MB/秒)56几个基本概念总线控制权、mater、slaveDMAC编程周期:slaveDMAC控制总线进行数据传输周期:masterDMA的数据传输形式:基本的:MEMI/O扩充的:MEMMEM I/O I/O57DMAC控制控制数据传送数据传送 外设发出DMA请求 DMAC向CPU申请总线 CPU完成当前总线周期

    33、后响应,并释放总线控制权 DMAC得到总线控制权,并发出DMA响应信号 由DMAC发出各种控制信号,控制外设与存储器之 间的数据传送 数据传送完后,DMAC撤销HOLD信号 CPU释放HLDA信号,并重新控制总线系统总线系统总线CPUDMAC存储器存储器外设接口外设接口AENIOWMEMWMEMRIORMEMWMEMRIOWIORAENHOLDHLDADRQDACKAENIOWIORMEMWMEMR58DMAC的工作过程的工作过程1)当外设准备好,可以进行当外设准备好,可以进行DMA传送时,外设向传送时,外设向DMA控制器发出控制器发出“DMA传送请求传送请求”信号(信号(DRQ););2)D

    34、MA控制器收到请求后,向控制器收到请求后,向CPU发出发出“总线请求总线请求”信号信号HOLD,表示希望占用总线;,表示希望占用总线;3)CPU在完成当前总线周期后会立即对在完成当前总线周期后会立即对HOLD信号进信号进行响应。响应包括两个动作:一是行响应。响应包括两个动作:一是CPU将数据总线将数据总线、地址总线和相应的控制信号线均置为高阻态,由、地址总线和相应的控制信号线均置为高阻态,由此放弃对总线的控制权。另一方面,此放弃对总线的控制权。另一方面,CPU向向DMA控控制器发出制器发出“总线响应总线响应”信号(信号(HLDA)。)。4)DMA控制器收到控制器收到HLDA信号后,就开始控制总

    35、线,信号后,就开始控制总线,并向外设发出并向外设发出DMA响应信号响应信号DACK;595)DMA控制器送出地址信号和相应的控制信号,控制器送出地址信号和相应的控制信号,实现外设与内存或内存与内存之间的直接数据传送;实现外设与内存或内存与内存之间的直接数据传送;例如,向例如,向I/O接口发出读信号,同时往地址总线上发接口发出读信号,同时往地址总线上发出存储器的地址和存储器写信号和出存储器的地址和存储器写信号和AEN信号,即可从信号,即可从外设向内存传送一个字节。外设向内存传送一个字节。6)DMA控制器自动修改地址和字节计数器,并判控制器自动修改地址和字节计数器,并判断是否需要重复传送操作。当规

    36、定的数据传送完后,断是否需要重复传送操作。当规定的数据传送完后,DMA控制器就撤销发往控制器就撤销发往CPU的的HOLD信号。信号。CPU检检测到测到HOLD失效后,紧接着撤销失效后,紧接着撤销HLDA信号,并在下信号,并在下一时钟周期重新开始控制总线。一时钟周期重新开始控制总线。DMA通道通道 工作过程工作过程60 DMA的三种传送方式:连续传送(块传送)连续传送(块传送)DMAC申请到总线后,将一块数据传送完后才释申请到总线后,将一块数据传送完后才释放总线,而不管中间放总线,而不管中间DREQ是否有效。是否有效。单次传送(每次传送一个字节)单次传送(每次传送一个字节)每个每个DMA周期只传

    37、送一个字节就立即释放总线。周期只传送一个字节就立即释放总线。按需传送(猝发传送)按需传送(猝发传送)只要只要I/O接口的数据缓冲可用,就进行传送。接口的数据缓冲可用,就进行传送。(注:注:I/O接口需要有一定大小的接口需要有一定大小的FIFO缓冲缓冲)61数据块传送数据块传送YN允许允许DMADMA请求?请求?DMAC请求总线请求总线CPU响应响应,DMAC获总线控制权获总线控制权DMA传送一个字节传送一个字节块结束?块结束?地址增量,计数器减量地址增量,计数器减量DMAC释放总线释放总线YN62每次传送一个字节每次传送一个字节NYN允许允许DMADMAC请求总线请求总线CPU响应响应,DMA

    38、C获总线控制权获总线控制权DMA传送一个数据传送一个数据块结束?块结束?释放总线至少一个总线周期释放总线至少一个总线周期地址增量,计数器减量地址增量,计数器减量DMAC释放总线释放总线Y测试测试I/O的的DREQ DMA请求?请求?63按需传送按需传送NYCPU响应响应,DMAC获总线控制权获总线控制权DMA传送一个字节传送一个字节块结束?块结束?测试测试I/O的的DREQ 有效?有效?地址增量,计数器减量地址增量,计数器减量释放总线,请求中断释放总线,请求中断无效,释放总线无效,释放总线允许允许DMADMA请求?请求?DMAC请求总线请求总线YNYN64可编程DMA控制器8237A8237A

    39、是Intel86系列微处理器的配套芯片,可用来接管CPU对总线的控制权,在存储器与高速外设之间建立直接进行数据块传送的高速通路。8237A必须与一个8位锁存器(8212或其他代用芯片)配套使用,才可形成完整的4通道DMA控制器。各通道可分别完成3种不同的操作:(1)DMA读读存储器送外设。(2)DMA写读外设写存储器。65(3)DMA校验:通道不传送数据,仅完成校验。任一通道进入DMA校验方式时,不产生对存储器和I/O设备的读/写控制信号,但是仍保持对系统总线的控制权,并且每一个DMA周期都将响应外部设备的DMA请求,发出DACKi信号,外设可使用这一响应信号对所得到的数据进行某种校验操作,因

    40、此,DMA校验操作并不是由8237A本身完成的。8237A可处于两种不同的工作状态,在8237A未取得总线控制权以前,CPU处于主控状态,而8237A处于从属状态,一旦8237A取得总线控制权后,8237A便上升为主控状态,完全在8237A控制下完成存储器和外设之间的数据传送功能,CPU不再参与数据传送的操作。668237A芯片内部结构 8237A可编程DMA控制器由数据总线缓冲存储器、读写逻辑部件、工作方式寄存器、状态寄存器、优先选择逻辑及四个DMA通道组成,内部结构如图5.25所示。8237A芯片有40条引脚,采用双列直插式封装,其引脚信号功能如图5.26所示。67图图5.2568图图5.

    41、26691.DMA通道通道0通道通道3 作为8237A芯片的主体是4个结构完全相同的DMA通道。每个通道内包含两个16位寄存器,它们是地址寄存器和终点计数寄存器,前者用来存放进行DMA操作的存储器区域的首地址的偏移地址值;后者的低14位(D13D0)用来存放要求传送的字节数n-1,n为本次DMA操作所需要执行的DMA周期数,因此,一个数据块的最大容量为214=16KB。在任何DMA操作周期内,这2位不允许修改,但是可在各个数据块传送之间进行修改。这就是说,一旦被定义,任何一个通道的DMA写、DMA读或DMA校验操作就一直进行到整个数据块操作完成为止。70 每个通道各有一条DMA请求线和一条DM

    42、A认可线。DMA请求线DRQ0DRQ3,由请求传送数据的外部设备输入,高电平有效;DMA认可线DACK0DACK3,由8237A取得总线控制权后向发出请求的外部设备输出,低电平有效,它实际上是DRQi的回答信号。2.数据总线缓冲存储器数据总线缓冲存储器 这是一个双向三态8位缓冲存储器,是与系统数据总线的接口,当8237A处于从属状态时,CPU通过这个缓冲存储器对8237A进行读/写操作。当8237A处于主控状态时,在DMA周期内,8237A将所选通道的地址寄存器的高8位地址码(A15A8)经过这个缓冲存储器锁存到8212锁存器中,然后该缓冲存储器将处于浮空状态。713.读读/写逻辑部件写逻辑部

    43、件 当8237A处于从属状态时,用来接收由CPU输入的读/写控制信号和端口地址等信息;当8237A处于主控状态时,通过它发出读/写控制信号和地址信息。(1)I/OR读信号,双向三态,低电平有效。当8237A处于从属状态时,I/OR为输入线,是CPU向8237A发出的读命令,可读取8237A中某个通道内某个寄存器的内容。当8237A处于主控状态时,I/OR为输出线,是8237A向外部设备发出的读命令,可从外部设备中读取数据。(2)I/OW输入/输出写控制信号,双向、三态,低电平有效。72 当8237A处于从属状态时,I/OW为输入线,是CPU向8237A发出的写命令,可向8237A写入控制字或通

    44、道数据。当8237A处于主控状态时,I/OW为输出线,是8237A向外部设备发出的写命令,可向外部设备写入数据。(3)A3A0输入/输出地址线。当8237A处于从属状态时,这是由CPU向8237A输入的低4位地址码,用来寻址8237A中的某个端口。当8237A处于主控状态时,这是8237A向存储器输出的低4位地址码。73(4)CS:选片信号,输入,低电平有效。当8237A处于从属状态时,由高位地址码(A15A2)译码得到对8237A的片选信号。当8237A处于主控状态时,CS被自动禁止,以免8237A正在执行DMA传送期间重新被选。(5)CLK:时钟输入,用来确定8237A的工作速率。(6)R

    45、ESET:复位信号,由外部输入,高电平有效。RESET有效时,清除所有寄存器的内容,控制线浮空,禁止DMA操作,复位之后,必须重新初始化,8237A才能工作。744.控制逻辑部件控制逻辑部件 控制逻辑部件主要用来向CPU发出总线请求,得到CPU认可进入主控状态后,由它发出各种控制信号。(1)HRQ(hold request)保持请求信号,向CPU输出,高电平有效。当任一通道收到外部设备的DMA请求时,8237A立即向CPU发出HRQ,表示要求使用总线。(2)HLDA(hold acknowledge)保持响应信号,由CPU输入,高电平有效。CPU收到HRQ信号,待当前总线周期执行完,向8237

    46、A回送HLDA信号,表示将总线控制权交给8237A,此后,8237A进入主控状态,可开始DMA操作。75(3)READY:准备就绪信号,输入,高电平有效。8237A在主控状态下进行DMA的操作过程中,若存储器或外部设备来不及完全读/写操作,要求延长读/写操作周期时,可使READY线无效,8237A将在DMA周期中增设等待周期,直到READY有效为止。(4)MEMR和MEMW:读/写存储器控制信号,三态输出,低电平有效。这是8237A处于主控状态时,向存储器输出的读/写控制信号。当MEMR有效时,必然I/OW有效,完成从存储器向外部设备的数据传送。反之,MEMW有效时,必然I/OR有效,完成读外

    47、部设备写存储器的数据传送。76(5)A7A4地址输出线。8237A处于主控状态时,在DMA周期中通过这条线输出的是16条存储器地址的A7A4位。(6)TC(terminal count)终点计数信号,输出,高电平有效。当所选通道的终点计数寄存器中的计数值为0时,TC输出有效,表示当前正在传送的是最后一个数据字节,可用来通知外设结束数据传送操作,使DRQi信号无效。(7)MARK(modulo 128 MARK)模128标记,输出,高电平有效。MARK有效可用来通知被选的外部设备,当前是上一次输出MARK有效后的第128个DMA周期。77 MARK总是在距数据块结束每隔128周期产生。至于第一个

    48、MARK距数据块开始是多少周期,取决于数据块的长度。如果数据块总字节数能被128整除,那么MARK可用来供外部设备记录已传送的字节数。(8)ADSTB地址选通信号,输出,高电平有效。ADSTB有效,表示8237A输出的存储器地址的高8位(A15A8)从双向数据总线(D7D0)锁存到8212锁存器,用作8212STB的选通信号。(9)AEN地址允许信号,输出,高电平有效。AEN有效,表示在上述传送地址过程中,它用作8212的选择信号DS2,同时可用它去封锁CPU使用低8位数据总线和控制总线。785.工作方式寄存器及状态寄存器工作方式寄存器及状态寄存器 工作方式寄存器是一个8位只可写寄存器,由CP

    49、U对8237A初始化时写入,用来定义8237A中各通道的工作方式。状态寄存器是一个8位只可读寄存器,用来描述当前各通道所处的状态。(1)工作方式寄存器:其各位的定义如图5.27所示。79图图5.2780 低4位中任一位置“1”,表示相应通道被启动投入操作。RP(rotating priority)位是优先权旋转位。若RP=0,表示各通道的请求具有固定的优先权级别,通道0具有最高优先级(6级),通道3具有最低优先级(3级),其他通道的优先级类推。若RP=1,表示采用旋转优先权策略,总是使刚刚结束操作的通道具有最低优先级,把最高优先级赋给原来比它低一级的中断。显然,采用旋转优先权方式,可防止优先级

    50、别高的通道长时间独占DMA传送数据,而使连接在各个通道上的外设对于DMA资源具有基本上相同的使用概率。81 EW(extened write)位是写扩展位。EW=1,表示将写存储器信号MEMW和写I/O设备信号I/OW提前有效,收到该写信号的存储器或外设应提前使READY信号有效,以免8237A在DMA周期内插入不必要的SW等待状态。TCS(TC stop)位是终点计数停止位。TCS=1,即终点计数TC有效时,该通道便结束DMA操作,如果要求该通道继续传送别的数据块,必须重新启动。TCS=0,即TC有效时,并不复位相应通道,表示该通道传送的数据还未结束,可继续传送下一数据块,而不需要重新启动该

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:-(大学课件)MCS51单片机的输入输出通道接口与中断PPT-PPT.ppt
    链接地址:https://www.163wenku.com/p-3225287.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库