奥鹏作业答案 发表于 2021-3-5 11:05:49

大工20秋《单片机原理及应用》复习资料十八

单片机原理及应用辅导资料十八主    题:总复习(二)
学习时间:2020年7月27日--8月2日
“不忘初心、牢记使命”主题理论学习:
每周文摘: “一带一路”是促进共同发展、实现共同繁荣的合作共赢之路,是增进理解信任、加强全方位交流的和平友谊之路。中国政府倡议,秉持和平合作、开放包容、互学互鉴、互利共赢的理念,全方位推进务实合作,打造政治互信、经济融合、文化包容的利益共同体、命运共同体和责任共同体。
摘选自《推动共建丝绸之路经济带和21世纪海上丝绸之路的愿景与行动》课程内容:
这周我们将复习本课程第4-7章的重点内容。一、学习要求
掌握汇编的基本概念;了解I/O接口的概念及编址方式;掌握中断的概念及中断的处理过程;掌握串行接口的通信波特率的设定;了解按键、键盘、显示器的特点及使用方法;掌握模拟量与数字量转换的概念;掌握单片机控制系统的设计方法。二、主要内容
1.汇编语言程序设计概述
MCS-51单片机的编程语言可以是汇编语言也可以是高级语言(如C语言),高级语言编程快捷,但程序长,占用存储空间大,执行慢;汇编语言产生的目标程序简短,占用存储空间小,执行快,能充分发挥计算机的硬件功能。无论是高级语言还是汇编语言,源程序都要转换成目标程序(机器语言)单片机才能执行。?
汇编:将汇编语言源程序转换成机器语言目标程序的过程称为汇编。
汇编程序:能将汇编语言源程序转换成机器语言目标程序的系统软件称为汇编程序。2.I/O概述
1)I/O接口电路的作用
一个计算机系统的组成, 除了CPU、存储器外,还必须有外部设备。计算机通过输入/输出设备和外界进行通信。计算机所用的数据以及现场采集的各种信息都要通过输入设备送到计算机;而计算的结果和计算机产生的各种控制信号又需通过输出设备输出到外部设备。
计算机的I/O操作,即CPU和外部设备之间的数据传送却十分复杂。主要表现在以下几个方面:
   (1) 外部设备的工作速度与计算机相比要低得多。
   (2) 外部设备的种类繁多, 有机械式、 机电式及电子式等等。
   (3) 外部设备的数据信号是多种多样的,既有电压信号, 也有电流信号; 既有数字量, 还有模拟量。
   (4) 外部设备的数据传送有近距离的,也有远距离的;有的使用并行数据传送,而有的则使用串行传送数据。
具体说来,接口电路主要有以下几项功能:
      (1) 速度协调。
      (2) 数据锁存。
      (3) 三态缓冲。
      (4) 数据转换。
2)接口与端口
“接口”一词是从英文interface翻译过来的,具有界面、相互联系等含义。接口这个术语在计算机领域中应用十分广泛,本章所讲述的接口则特指计算机与外设之间在数据传送方面的联系,其功能主要是通过电路实现的, 因此称之为接口电路,简称接口。
3)I/O的编址方式
在计算机中,凡需进行读写操作的设备都存在着编址问题。具体说来在计算机中有两种需要编址的器件:一种是存储器,另一种就是接口电路。 存储器是对存储单元进行编址,而接口电路则是对其中的端口进行编址。 对端口编址是为I/O操作而进行的,因此也称为I/O编址。
常用的I/O编址有两种方式: 独立编址方式和统一编址方式。
      (1) 独立编址方式
      (2) 统一编址方式3.80C51的中断系统
(1)基本概念
①中断
CPU在处理某一事件A时,发生了另一事件B请求CPU迅速去处理(中断发生);
CPU暂时中断当前的工作,转去处理事件B(中断响应和中断服务);
待CPU将事件B处理完毕后,再回到原来事件A被中断的地方继续处理事件A(中断返回),这一过程称为中断。
②中断源、中断返回和中断系统
引起CPU中断的根源,称为中断源。
中断源向CPU提出的中断请求。CPU暂时中断原来的事务A,转去处理事件B。对事件B处理完毕后,再回到原来被中断的地方(即断点),称为中断返回。
实现上述中断功能的部件称为中断系统(中断机构)。
③中断的优点
随着计算机技术的应用,人们发现中断技术不仅解决了快速主机与慢速I/O设备的数据传送问题,而且还具有如下优点:
分时操作:CPU可以分时为多个I/O设备服务,提高了计算机的利用率;
实时响应:CPU能够及时处理应用系统的随机事件,系统的实时性大大增强;
可靠性高:CPU具有处理设备故障及掉电等突发性事件能力,从而使系统可靠性提高。
(2)80C51中断系统的结构
80C51的中断系统有5个中断源,2个优先级,可实现二级中断嵌套。①80C51的中断源
(P3.2)
可由IT0(TCON.0)选择其为低电平有效还是下降沿有效。当CPU检测到P3.2引脚上出现有效的中断信号时,中断标志IE0(TCON.1)置1,向CPU申请中断。
(P3.3)
可由IT1(TCON.2)选择其为低电平有效还是下降沿有效。当CPU检测到P3.3引脚上出现有效的中断信号时,中断标志IE1(TCON.3)置1,向CPU申请中断。
TF0(TCON.5)
片内定时/计数器T0溢出中断请求标志。当定时/计数器T0发生溢出时,置位TF0,并向CPU申请中断。
TF1(TCON.7)
片内定时/计数器T1溢出中断请求标志。当定时/计数器T1发生溢出时,置位TF1,并向CPU申请中断。
RI(SCON.0)或TI(SCON.1)
串行口中断请求标志。当串行口接收完一帧串行数据时置位RI或当串行口发送完一帧串行数据时置位TI,向CPU申请中断。
②中断请求标志
③80C51中断的允许控制
CPU对中断系统所有中断以及某个中断源的开放和屏蔽是由中断允许寄存器IE控制的。对应控制位为1,则相应中断源允许,否则屏蔽该中断源。复位时,全部清0,禁止所有中断。
④中断优先级控制
80C51单片机有两个中断优先级,即可实现二级中断服务嵌套。每个中断源的中断优先级都是由中断优先级寄存器IP中的相应位的状态来规定的 。
同一优先级中的中断申请不止一个时,则有中断优先权排队问题。同一优先级的中断优先权排队,由中断系统硬件确定的自然优先级形成,其排列如图1所示:

图180C51单片机的中断优先级有三条原则:
CPU同时接收到几个中断时,首先响应优先级别最高的中断请求。
正在进行的中断过程不能被新的同级或低优先级的中断请求所中断。
正在进行的低优先级中断服务,能被高优先级中断请求所中断。
为了实现上述后两条原则,中断系统内部设有两个用户不能寻址的优先级状态触发器。其中一个置1,表示正在响应高优先级的中断,它将阻断后来所有的中断请求;另一个置1,表示正在响应低优先级中断,它将阻断后来所有的低优先级中断请求。4.80C51的中断处理过程
(1)中断响应条件和时间
①中断响应条件
中断源有中断请求;
此中断源的中断允许位为1;
CPU开中断(即EA=1)。
同时满足时,CPU才有可能响应中断。
②中断服务的进入
CPU执行程序过程中,在每个机器周期的S5P2期间,中断系统对各个中断源进行采样。这些采样值在下一个机器周期内按优先级和内部顺序被依次查询。
如果某个中断标志在上一个机器周期的S5P2时被置成了1,那么它将于现在的查询周期中及时被发现。接着CPU便执行一条由中断系统提供的硬件LCALL指令,转向被称作中断向量的特定地址单元,进入相应的中断服务程序。
遇以下任一条件,硬件将受阻,不产生LCALL指令:
CPU正在处理同级或高优先级中断;
当前查询的机器周期不是所执行指令的最后一个机器周期。即在完成所执行指令前,不会响应中断,从而保证指令在执行过程中不被打断;
正在执行的指令为RET、RETI或任何访问IE或IP寄存器的指令。即只有在这些指令后面至少再执行一条指令时才能接受中断请求。
若由于上述条件的阻碍中断未能得到响应,当条件消失时该中断标志却已不再有效,那么该中断将不被响应。就是说,中断标志曾经有效,但未获响应,查询过程在下个机器周期将重新进行。③中断响应时间
若M1周期的S5P2前某中断生效,在S5P2期间其中断请求被锁存到相应的标志位中去;M2恰逢指令的最后一个机器周期,且该指令不是RETI或访问IE、IP的指令。于是,M3和M4便可以执行硬件LCALL指令,M5周期将进入了中断服务程序。
80C51的中断响应时间(从标志置1到进入相应的中断服务),至少要3个完整的机器周期。
(2)中断响应过程
①将相应的优先级状态触发器置1(以阻断后来的同级或低级的中断请求)。
②执行一条硬件LCALL指令,即把程序计数器PC的内容压入堆栈保存,再将相应的中断服务程序的入口地址送入PC。
③执行中断服务程序。
中断响应过程的前两步是由中断系统内部自动完成的,而中断服务程序则要由用户编写程序来完成。
(3)中断返回
RETI指令的具体功能是:
①将中断响应时压入堆栈保存的断点地址从栈顶弹出送回PC,CPU从原来中断的地方继续执行程序;
②将相应中断优先级状态触发器清0,通知中断系统,中断服务程序已执行完毕。
注意:不能用RET指令代替RETI指令。在中断服务程序中PUSH指令与POP指令必须成对使用,否则不能正确返回断点。5.80C51的串行口
(1)80C51串行口的结构
有两个物理上独立的接收、发送缓冲器SBUF,它们占用同一地址99H;接收器是双缓冲结构;发送缓冲器,因为发送时CPU是主动的,不会产生重叠错误。
(2)80C51串行口的控制寄存器
①SCON
SCON是一个特殊功能寄存器,用以设定串行口的工作方式、接收/发送控制以及设置状态标志:

图2 SCON的格式SM0和SM1为工作方式选择位,可选择四种工作方式:
表1 串行口的工作方式

②PCON
PCON中只有一位SMOD与串行口工作有关:

图3 PCON的格式SMOD(PCON.7):波特率倍增位。在串行口方式1、方式2、方式3时,波特率与SMOD有关,当SMOD=1时,波特率提高一倍。复位时,SMOD=0。(3)80C51串行口的工作方式
①方式0
方式0时,串行口为同步移位寄存器的输入输出方式。主要用于扩展并行输入或输出口。数据由RXD(P3.0)引脚输入或输出,同步移位脉冲由TXD(P3.1)引脚输出。发送和接收均为8位数据,低位在先,高位在后。波特率固定为fosc/12。   
②方式1
方式1是10位数据的异步通信口。TXD为数据发送引脚,RXD为数据接收引脚,传送一帧数据的格式如图所示。其中1位起始位,8位数据位,1位停止位。

图4 串行口方式1的数据格式③方式2和方式3
方式2或方式3时为11位数据的异步通信口。TXD为数据发送引脚,RXD为数据接收引脚 。
图5 串行口方式2和方式3的数据格式(4)波特率的计算
在串行通信中,收发双方对发送或接收数据的速率要有约定。通过软件可对单片机串行口编程为四种工作方式,其中方式0和方式2的波特率是固定的,而方式1和方式3的波特率是可变的,由定时器T1的溢出率来决定。 串行口的四种工作方式对应三种波特率。由于输入的移位时钟的来源不同,所以,各种方式的波特率计算公式也不相同。
方式0的波特率 =fosc/12
方式2的波特率 =(2SMOD/64)· fosc
方式1的波特率 =(2SMOD/32)·(T1溢出率)
方式3的波特率 =(2SMOD/32)·(T1溢出率)
当T1作为波特率发生器时,最典型的用法是使T1工作在自动再装入的8位定时器方式(即方式2,且TCON的TR1=1,以启动定时器)。这时溢出率取决于TH1中的计数值。
T1 溢出率 = fosc /{12×}
在单片机的应用中,常用的晶振频率为:12MHz和11.0592MHz。所以,选用的波特率也相对固定。常用的串行口波特率以及各参数的关系如表2所示。表2 常用波特率与定时器1的参数关系
6.按键和键盘
1)按键的分类
编码键盘:键盘上闭合键的识别由专用的硬件编码器实现,并产生键编码号或键值的称为编码键盘,如计算机键盘。
非编码键盘:靠软件编程来识别的称为非编码键盘。
在单片机组成的各种系统中,用的最多的是非编码键盘。
2)按键的抖动
键盘的抖动时间一般为5~10ms,抖动现象会引起CPU对一次键操作进行多次处理,从而可能产生错误。
消除抖动的方法:
⑴ 硬件去抖动
采用RS触发器去抖动。
⑵ 软件去抖动
检测到按键按下后,软件延时10~20ms后再确认该键是否确实按下,消除抖动影响。
独立式按键
特点:(1) 各按键相互独立,电路配置灵活;
(2) 软件简单;
(3) 按键数量较多时,I/O线耗费较多,只适用于按键数量较少的场合。
矩阵式键盘
特点:占用I/O线较少,适合按键数目较多的场合,但软件较复杂。
常用的键盘工作方式有查询方式和中断方式。2)显示器及键盘接口
(1)七段显示器的原理
显示器是单片机应用系统常用的设备,包括LED、LCD等。LED显示器由若干个发光二极管组成。当发光二极管导通时,相应的一个笔画或一个点就发光。控制相应的二极管导通,就能显示出对应字符,七段LED显示器如下图所示。
七段LED通常构成字型“8”,还有一个发光二极管用来显示小数点。各段LED显示器需要由驱动电路驱动。在七段LED显示器中,通常将各段发光二极管的阴极或阳极连在一起,作为公共端,这样可以使驱动电路简单。将各段发光二极管阳极连在一起的叫共阳极显示器,用低电平驱动;将阴极连在一起的叫共阴极显示器,用高电平驱动。
(2)静态显示
所谓静态显示,是指显示器显示某一字符时,相应段的发光二极管恒定地导通或截止。静态显示有并行输出和串行输出两种方式。
    (3)动态显示
当显示器位数较多时,可以采用动态显示。所谓动态显示就是一位一位地轮流点亮显示器的各个位(扫描)。对于显示器的每一位而言,每隔一段时间点亮一次。虽然在同一时刻只有一位显示器在工作(点亮),但由于人眼的视觉暂留效应和发光二极管熄灭时的余晖,我们看到的却是多个字符“同时”显示。显示器亮度既与点亮时的导通电流有关,也与点亮时间长短和间隔时间有关。调整电流和时间参数,即可实现亮度较稳定的显示。7. D/A转换器及A/D转换器
(1)D/A转换器及其与单片机接口
D/A转换器的主要性能指标
分辨率
线性度
绝对精度和相对精度
建立时间
DAC0832是使用非常普遍的8位D/A转换器,由于其片内有输入数据寄存器,故可以直接与单片机接口。DAC0832以电流形式输出,当需要转换为电压输出时,可外接运算放大器。属于该系列的芯片还有DAC0830、DAC0831,它们可以相互代换。
①DAC0832主要特性:
分辨率8位;
电流建立时间1μS;
数据输入可采用双缓冲、单缓冲或直通方式;
输出电流线性度可在满量程下调节;
逻辑电平输入与TTL电平兼容;
单一电源供电(+5V~+15V);
低功耗,20mW。
②DAC0832的工作方式
单缓冲工作方式
双缓冲工作方式
直通工作方式(2)A/D转换器及其与单片机接口
A/D转换器的主要技术指标
分辨率
量化误差
偏移误差
满刻度误差
线性度
绝对精度
转换速率ADC0809芯片及其与单片机的接口
分辨率为8位;
精度:ADC0809小于±1LSB(ADC0808小于±1/2LSB);
单+5V供电,模拟输入电压范围为0~+5V;
具有锁存控制的8路输入模拟开关;
可锁存三态输出,输出与TTL电平兼容;
功耗为15mW;
不必进行零点和满度调整;
转换速度取决于芯片外接的时钟频率。
时钟频率范围:10~1280KHz。典型值为时钟频率640KHz,转换时间约为100μS。8.单片机应用系统设计的步骤
①确定任务
首先进行广泛的市场调查,了解该系统的市场应用概况,分析系统当前存在的问题,研究系统的市场前景,确定系统开发设计的目的和目标。
②方案设计
单片机机型和器件的选择
性能特点要适合所要完成的任务,避免过多的功能闲置;
性能价格比要高,以提高系统整机的性能价格比;
结构原理要熟悉,以缩短开发周期;
货源要稳定,有利于批量的增加和系统的维护;
硬件与软件的功能划分
系统的硬件和软件要进行统一的规划;
在CPU时间不紧张的情况下,应尽量采用软件;
如果系统回路多,实时性要求强,则要考虑用硬件完成;
③硬件设计
根据总体设计的要求,选择完单片机机型后,具体确定系统中所要使用的元件,并设计出系统的电路原理图,在必要的实验后完成工艺结构设计,电路板制作和样机的组装,主要的硬件设计包括:
单片机电路设计
主要完成时钟电路,复位电路,供电电路的设计。
扩展电路和输入/输出通道设计
主要完成程序存储器,数据存储器,I/O接口电路及传感
器电路,放大电路,多路开关,D/A转换电路,A/D转换
电路,开关量接口,驱动和执行接口的设计。
控制面板设计
主要完成按键,开关,显示器,报警等电路的设计。
④软件设计
单片机应用系统的设计中,软件设计占有重要的位置。应用软件包括数据采集和处理程序,控制算法实现程序,人机交互程序,数据管理程序。软件设计通常采用模块化程序设计,自顶向下的程序设计方法。三、习题
(单选题)
1.80C51单片机有(    )个中断源。
A.3             B.4         C.5         D.62.80C51的中断响应时间至少要(    )个完整的机器周期。
A.3             B.4         C.5         D.63.中断服务程序的最后一条指令必须是(    )。
A.返回指令RET                  B.中断返回指令RETI      
C.硬件LCALL指令                D.长转移指令LJMP4 .80C51单片机CPU响应中断的条件不包括(    )。
A.中断源有中断请求             B.此中断源的中断允许位为1
C.CPU开中断                  D.EA=05.控制串行口工作方式的特殊寄存器是(    )。
A.TCON             B.PCON          C.SCON         D.TMOD6.80C51串行口工作于方式1时为(    )。
A.移位寄存器
B.10位异步收发器
C.11位异步收发器
D.主要用于扩展并行输入或输出口7.串行口工作方式1的波特率是(    )。
A.固定的,为时钟频率的1/32
B.固定的,为时钟频率的1/16
C.可变的,通过定时/计数器T1的溢出率设定
D.固定的,为时钟频率的1/648.(    )是ADC的有限位数对模拟量进行量化而引起的误差。
A.偏移误差      B.量化误差      C.满刻度误差   D.绝对精度9. DAC0832是(    )位的D/A转换器。
A.8             B.10            C.12             D.1610.ADC0809是八位(    )A/D转换器。
A.逐次逼近式    B.双积分式      C.计数比较式   D.并行式【习题答案】
(单选题)
1、C    2、A    3、B    4、D    5、C   
6、B    7、C    8、B    9、A    10、A
转载注明无忧答案网QQ 761296021
页: [1]
查看完整版本: 大工20秋《单片机原理及应用》复习资料十八