单片机原理与接口技术

上传人:努力****83 文档编号:169313922 上传时间:2022-11-14 格式:DOC 页数:7 大小:80.50KB
收藏 版权申诉 举报 下载
单片机原理与接口技术_第1页
第1页 / 共7页
单片机原理与接口技术_第2页
第2页 / 共7页
单片机原理与接口技术_第3页
第3页 / 共7页
资源描述:

《单片机原理与接口技术》由会员分享,可在线阅读,更多相关《单片机原理与接口技术(7页珍藏版)》请在装配图网上搜索。

1、4-3 外设端口有哪两种编址方法?各有什么特点?答:微型计算机对I/O端口进行编址的方式有两种:单独编址和统一编址。1外设端口单独编址特点:(1)需要专用I/O指令,实现CPU和外设间数据传送。(2)I/O端口地址的独立。2外设端口与存储器统一编址特点:(1)无需专用I/O指令(2)I/O端口地址是内存地址中的一部分。4-4 I/O数据有哪四种传送方式?各有什么特点?CPU与外设之间的数据传送方式有无条件传输方式、查询方式、中断方式和DMA方式。1无条件传输方式无条件传送又称为同步传送或直接传送方式。CPU在与外设进行数据交换时,外设随时处于准备好的状态,这样CPU不必查询外设的状态,也不必等

2、待,而是直接进行数据的输入输出。2查询传输方式查询传输方式也称为异步传输、条件传输方式。采用查询方式时,CPU每次与外设进行数据传输前,都要先读取状态端口的信息,查询外设是否准备就绪,只有在外设处于“就绪”状态时,才能向外设的数据端口发送数据或从其中读取数据,如果外设未就绪,就需要CPU原地循环等待外设完成准备工作,所以CPU的工作效率不高。3中断传输方式在中断传输方式中,以外设为主动方,每次外设准备好就可以向CPU发出一次中断请求,使CPU暂停当前正在执行的程序,转去与外设进行一次数据传输工作,当完成了本次数据的输入或输出后,再回到原先被打断的地方继续执行原来的程序。中断方式可以大大提高CP

3、U的效率和系统的实时性。4DMA方式DMA方式即直接存储器存取方式,是一种在DMA控制器的控制下实现的外设与存储器之间的直接数据传输方式。在整个DMA传输过程中,是不需要CPU参与的,完全是通过硬件逻辑电路用固定的顺序发地址和读写信号来实现的,数据不需要经过CPU而是在外设和存储器之间高速传输。4-5 8051内部的并行I/O口有哪些?各有什么功能?1P0口P0口的第一功能是作为通用I/O口使用。P0口的第二功能是作为地址(低8位地址)/数据总线的复用口。2P1口P1口的第一功能是作为通用I/O口使用3P2口P2口的第一功能是通用I/O口P2口的第二功能是作为地址总线,输出高8位地址信号,与P

4、0口输出的低8位地址组合,共同完成外部存储器单元16位地址信号的输出。4P3口P3口的第一功能是通用I/O口,且各引脚有不同的第二功能。4.8 中断处理的过程是怎样的?所谓中断是指CPU在正常执行程序的过程中,由于某种随机发生的事件使它暂停当前正在执行的程序,转而去执行另外的一段程序(中断服务程序),在这段程序完成后自动返回被打断的程序处继续执行的过程。CPU与外设之间一个完整的可屏蔽中断传输过程包括:中断请求、中断响应、中断处理和中断返回。4.9 8051单片机有几个中断源?各自对应的中断标志是什么?对应的中断服务子程序入口地址是什么?IE寄存器的作用是什么?8051单片机提供5个中断源,其

5、中2个外部中断,2个定时器/计数器中断,1个串行口中断。外部中断 / 以各自引脚上输入低电平或负跳变信号作为中断触发事件。当检测到外部中断请求时,外部中断的标志IE0/IE1被置为1定时器/计数器中断是由8051内部的定时器/计数器计满溢出产生的。T0或T1计满溢出时,中断标志TF0或TF1被置1.串行口中断包括发送中断和接收中断, 当串行口接收完一组数据时,串行口接收中断标志RI被置 1; 当串行口发送完一组数据时,串行口发送中断标志TI被置 1。8051中断入口地址表:中断源中断服务程序入口0003H定时器T0000BH0013H定时器T1001BH串行口中断0023HIE寄存器:通过中断

6、允许寄存器IE可以对中断实现两级控制。每个中断源都对应有各自的中断屏蔽位,当中断屏蔽位为1时允许中断,当中断屏蔽位为0时禁止中断;IE寄存器还有一个总中断允许位EA,对整个中断系统进行开中断或关中断的控制。4-10 MCS-51单片机的中断系统有几级中断优先级?IP寄存器的作用是什么? 2级:高级中断优先级和低级中断优先级。IP寄存器是中断优先级寄存器,用于选择各个中断源的中断优先级。其各位的定义参见图4-12。4-11 MCS-51单片机中断响应的条件有哪些?如何进行中断响应的操作? 当前没有同级或高优先级的中断正在被服务。 CPU应保证执行完当前正在执行的指令。 如果当前正在执行的指令是R

7、ETI或任何访问IE、IP寄存器的指令,则应至少再执行一条其他指令。中断响应条件满足时,硬件系统产生一个硬件长调用LCALL。硬件长调用LCALL操作将当前程序计数器PC的值推入堆栈保存起来,并将不同中断源对应的中断入口地址转入PC。4-12 MCS-51单片机内部定时器有几种工作方式?如何通过定时器方式控制寄存器进行设置?工作方式控制寄存器TMOD用来设定定时器/计数器T0和T1的工作方式。其中M1M0两位可以选择4种方式:方式0、方式1、方式2和方式3。具体设置的方法见图4-18。4-13试比较MCS-51内部定时器在4种工作方式下的异同。方式0是13位计数器方式,以T0为例,13位计数器

8、由TH0的8位和TL0中的低5位组成,TL0的高3位不用,当计数器计满溢出时,由硬件将TF0标志置1。由控制位选择作为定时器还是计数器工作。当GATE=0时,只要TR0置位,定时器即开始工作;当GATE=1时,TR0置1后,只有上出现高电平信号时,T0才开始工作。方式1是16位计数器方式,由TH0的8位与TL0的8位组成16位计数器,其它工作过程与方式0相同。方式2是8位自动重装载计数器方式。在计数器计满溢出时,可以自动重新装入计数初值,循环计数。而方式0和方式1都不具备自动重装载的功能。T0和T1的以上3种方式是完全相同的,而方式3下T0和T1是不相同的。如果设置T1为方式3,则T1停止工作

9、。T0设置为方式3作为两个独立的8位计数器工作。 4-14设单片机时钟为12MHz,请分别计算定时器工作在方式0和方式1时定时2ms所需要的定时器初值。 (1)初值(2)初值4-16 设单片机时钟为12MHz,请利用定时器T0编出令P1.0引脚输出2ms的矩形波程序,要求占空系数为1:2(高电平时间短)。高电平: 2ms/3=667s初值: 低电平: 初值: ORG 0000HAJMPMAINORG 000BHAJMP T0INTMAIN: MOV TMOD,#01H;T0选择工作方式1,16位定时器 MOV TH0,#0FDH;初始化T0值MOV TL0,#65HMOV IE,#82H;开T

10、0中断SETB TR0;启动T0定时器SJMP $T0INT: MOV C,P1.0JC NEXT;判断P1.0的高低电平MOVTH0,#0FDH;P1.0为低则装入高电平的初始值 MOVTL0,#65HSJMP COMNEXT: MOV TH0,#0FAH;P1.0为高则装入低电平的初始值MOV TL0,#0CBH COM: CPL P1.0RETIEND4-17 已知8051单片机内部RAM中以10H为起始地址的数据区有50个字节,要求每隔100ms向内部RAM中以70H为起始地址的数据区传送10个字节,通过5次传送完毕。要求采用定时器T1定时,单片机时钟为12MHz,请编写程序。定时器5

11、0ms,循环2次可得100ms,设定初值3CB0HORG 0000HAJMP MAINORG001BHAJMP BRT1MAIN: MOV TMOD #10H;T1选择工作方式1,16位定时器MOV TH1,#3CH;计数器初始化MOV TL1,#0B0HMOV R1,#10HMOV R0,#70HMOVR2,#5;传送次数MOVR3,#02H;定时两次,每次50msMOV IE,#88H;开T1中断SETB TR1;启动T1计数器LOOP: SJMP$BRT1: MOV TH1,#3CH;定时50msMOVTL1,#0B0HDJNZ R3,DONEMOV R3,#02HDJNZ R2,LOO

12、PDCLR ET1;传送数据完毕,关闭T1中断SJMP DONELOOPD: MOV R4,#10;每次传10个字节LOOP1: MOV A,R1MOV R0,AINC R1INC R0DJNZ R4,LOOP1DONE: RETIEND4-18 异步通信和同步通信的主要区别是什么?MCS-51串行口有没有同步通信功能?异步通信是字符帧通信通信原理:(1) 发送/接收端有两个相互独立时钟源;(2) 接收端检测到RXD线的低电平(起始位)接收端便知发送端已开始发送。同步通信靠同步头通信通信原理:接收端检测RXD线上有同步头便知对方已开始发送。MCS-51串行口无同步通信功能。4-21 串行通信有

13、哪几种制式?各有什么特点?通信方式可分为:单工通信、半双工通信与全双工通信。(1) 单工通信只支持数据在一个方向上传输(2) 半双工通信允许数据在两个方向上传输,但在同一时刻,只允许数据在一个方向上传输(3) 全双工通信允许数据同时在两个方向上传输,即通信的双方可以同时发送和接收数据。4-24 MCS-51串行口工作方式有哪4种?如何设定?串行口的工作方式有方式0、方式1、方式2和方式3四种工作方式。方式0: 在方式0下,方式0时SM2位必须为0。其波特率是固定的,为。方式1:在方式1下,串行口为10位通用异步接口。方式2:在方式2下,串行口为11位通用异步接口。先根据通信协议用软件设置TB8

14、。其信息传送波特率与SMOD有关。方式3:方式3为波特率可变的11位异步通信方式。4-26 请用中断法编出串行口方式1下的接收程序。设8051单片机主频为6MHz,波特率为600b/s,接收数据缓冲器在外部RAM,起始地址为RBLOCK,接收数据区长度为30,采用偶校验(数据块长度不发送)。主程序:RBLOCK DATA 2000HLEN DATA 30 ORG 0000HLJMPSTARTORG 0023HLJMP RXSVESTART: MOV TMOD, #20H ;T1为方式2MOV TL1,#0E6H ;时间常数初值送T1MOV TH1,#0E6H ;波特率为600bpsMOV PC

15、ON,#00H ;SMOD=0SETB TR1 ;启T1MOV SCON,#50H ;串口方式1,允许接收MOV DPTR,#RBLOCK ;接收数块始址送DPTRMOV A,#LENMOV R2,A ;块长送R2SETB EA;开所有中断 SETB ES;允许串口中断WAIT: SJMP WAIT;等待中断ORG 0150HRXSVE:CLR ES;关串口中断 CLR RI;清接收中断标志 MOV A,SBUF;读接收缓冲区中内容 MOV C,P;取出校验位 JC ERROR;若有错,则转ERROR ANL A,#7FH;无就删去校验位 MOVX DPTR,A;送入接收缓冲区 DJNZ R2,NEXT;若接收未完,则NEXT CLR EA;关所有中断NEXT: INC DPTR;接收区指针加1SETBES RETI;中断返回ERROR: .;出错ERRORRETI END当PCON的值为80H时(SMOD=1),定时器初值应设TH1为0CCH,TL1为0CCH

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!