单片机原理第五章

合集下载

《单片机原理及应用》第5章 P0~P3口应用基础

《单片机原理及应用》第5章   P0~P3口应用基础

3、矩阵键盘:
5.4 实验与设计
• 实验1 闸刀型开关输入/8段LED静态显示输出
5.4 实验与设计
• 设计1:LED模拟交通
• 6个灯—南北:黄、红、绿

东西:黄、红、绿
• (红、绿是10秒,黄闪烁2秒)
• 2个应急开关:南北绿或东西绿
• 画出硬件设计,编出模拟程序。
实验2 并行接口键盘/LED指示灯输出
同,每个显示缓冲器对应着一位显示器。
(3)查表并操作相应的显示器
• MOV • MOV • MOVC
A,#data DPTR,#DSPTAB A,@A+DPTR
• (4)显示子程序的调用
3、静态显示示例
• 【例5-4】利用51单片机的并行口作为静态显示的控制 口的示例
请修改:
(1)显示“12”; (2)轮流显示“12”、“--”、“AB”; (3)计数器:从00开始,1S加1。
设计1 计时秒表的设计
• (1)两位LED显示 • 可以显示00~99秒; • (2)两个按键 • 分别为启动/停止键、清零键。 • 要求:设计硬件电路,编写出软件程序(延时由软件
形成)。
设计2 模拟交通信号灯控制装置的设计
• (1)6个发光二极管模拟交通灯 • 南北:黄、红、绿 ;东西:黄、红、绿。 • (2)2个应急开关 • 南北绿东西红或东西绿南北红。 • 要求:设计硬件模拟电路,编写软件程序。
• 单片机原理及应用(第4版)
• 姜志海 王蕾 姜沛勋 编著
• 电子工业出版社
第5章 P0~P3口应用基础
• 片内并行I/O口的应用。 • 5.1 P0~P3口概述 • 5.2 输出操作 • 5.3 输入操作 • 5.4 实验与设计

单片机原理及应用教程(C语言版)-第5章 MCS-51单片机的中断系统

单片机原理及应用教程(C语言版)-第5章 MCS-51单片机的中断系统

5.2.5 中断允许控制
例5-1 假设允许INT0、INT1、T0、T1中断,试 设置IE的值。 (2)汇编语言程序 按字节操作: MOV IE,#8FH 按位操作: SETB EX0 ;允许外部中断0中断 SETB ET0 ;允许定时器/计数器0中断 SETB EX1 ;允许外部中断1中断 SETB ET1 ;开定时器/计数器1中断 SETB EA ;开总中断控制位
IP (B8H)
D7 —
D6 D5 D4 D3 D2 D1 D0 — PT2 PS PT1 PX1 PT0 PX0
PT2:定时器/计数器T2的中断优先级控制位 PT2设置1则T2为高优先级,PT2设置0则T2为 低优先级。 后面各位均是如此,设置1为高优先级,设置0 为低优先级,不再一一赘述。 PS:串行口的中断优先级控制位。 PT1:定时器/计数器1的中断优先级控制位。 PX1:外部中断1的中断优先级控制位。 PT0:定时器/计数器0的中断优先级控制位。 PX0:外部中断0的中断优先级控制位。
5.2.4 中断请求标志
4.定时器/计数器T2中断请求标志
T2CON D7 D6 D5 (C8H) TF2 EXF2 D4 D3 D2 D1 D0
EXF2:定时器/计数器2的外部触发中断请求标志 位。T2以自动重装或外部捕获方式定时、计数,当 T2EX(P1.1)引脚出现负跳变时,TF2由硬件置1, 向CPU请求中断,CPU响应中断后,EXF2不会被硬 件清0,需要在程序中以软件方式清0。
5.2.3 外中断触发方式
TCON格式如下:
D7 D6 D5 D4 D3 D2 D1 D0
TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0
IT0=1,外中断0为下降沿触发 CPU在每一个机器周期的S5P2期间对P3.2引 脚采样,若上一个机器周期检测为高电平,紧挨着 的下一个机器周期为低电平,则使IE0置1。 IT1:外中断1触发方式控制位。功能同IT0

《单片机原理及应用》第5章 定时器及应用

《单片机原理及应用》第5章 定时器及应用

计数工作方式
通过引脚T0(P3.4)和T1(P3.5)对外部脉冲信号计数。 当输入脉冲信号产生由1至0的下降沿时定时器的值加1。 CPU检测一个1至0的跳变需要两个机器周期,故最高计 数频率为振荡频率的1/24。 为了确保某个电平在变化之前被采样一次,要求电平保持 时间至少是一个完整的机器周期。 对输入脉冲信号的基本要求如图5-2所示。
外部事件
计数电路 时间单位脉冲 单片机 计数完成信号
5.2 89C51定时器概述
• 89C51有两个16位的定时器/计数器,即定时器0(T0)和 定时器1(T1)。它们实际上都是16位加1计数器。 • T0由两个8位特殊功能寄存器TH0和TL0构成;T1由TH1 和TL1构成。
• 每个定时器都可由软件设置为定时工作方式或计数工作方
• 例:当P3.4引脚上的电平发生负跳变时,从P1.0输出一个 500μs的同步脉冲。请编程序实现该功能。查询方式, fosc=6MHz。
解:(1)模式选择 选T0为模式2,外部事件计数方式。当P3.4引脚上的电平发生 负跳变时,T0计数器加1,溢出标志TF0置1;然后改变T0为 500μs定时工作方式,并使P1.0输出由1变为0。T0定时到产生 溢出,使P1.0输出恢复高电平,T0又恢复外部事件计数方式。
T0的低5位:01100B=0CH即(TL0)=0CH T0的高8位:11110000B=F0H即(TH0)=F0H
(2)计算最大定时时间T
T0的最大定时时间对应于初值为0. 则:T=213×1/6 × 10-6×12=16.384ms
例2:利用T0的工作模式0产生1ms定时,在P1.0引脚输出 周期为2ms的方波。设单片机晶振频率fosc=12MHz。编 程实现其功能。 解:要在P1.0引脚输出周期为2ms的方波,只要使P1.0每隔 1ms取反一次即可。 (1)选择工作模式 T0的模式字为TMOD=00H,即 M1M0=00,C/T=0,GATE=0,其余位为0。 (2)计算1ms定时时T0的初值

单片机原理及接口技术第5章 IO口应用-显示与开关键盘输入

单片机原理及接口技术第5章  IO口应用-显示与开关键盘输入

图5-1
发光二极管与单片机并行口的连接
5
如果端口引脚为低电平,能使灌电流Id从单片机的外部流入内部,则将
大大增加流过的灌电流值,如图5-1(b)所示。所以,AT89S51单片机任 何一个端口要想获得较大的驱动能力,要采用低电平输出。 如果一定要高电平驱动,可在单片机与发光二极管之间加驱动电路,如 74LS04、74LS244等。 5.1.2 单片机I/O端口控制发光二极管的编程 发光二极管与单片机的I/O端口的连接,如图5-1(b)所示。如要点亮 某发光二极管,只需该I/O端口位写入“0”即可。下面通过一个例子介绍如
21
图5-6 4位LED静态显示的示意图
示字符。这样在同一时间,每一位显示的字符可以各不相同。但是,静态
显示方式占用I/O口线较多。 对于图5-6所示电路,要占用4个8位I/O口(或锁存器)。如果数码管 数目增多,则还需要增加I/O口的数目。在实际的系统设计中,如果显示位 数较少,可采用静态显示方式。但显示位数较多时,为了降低成本,一般 采用动态显示方式。 2. 动态扫描显示方式 显示位数较多时,静态显示所占用的I/O口多,为节省I/O口与驱动电路
单片机控制的8位I/O口锁存器输出相连。如果送往各个LED数码管所显示字 符的段码一经确定,则相应I/O口锁存器锁存的段码输出将维持不变,直到
送入下一个显示字符的段码。因此,静态显示方式的显示无闪烁,亮度较
高,软件控制比较容易。 图5-6所示为4位LED数码管静态显示电路,各个数码管可独立显示,
只要向控制各位I/O口锁存器写入相应的显示段码,该位就能保持相应的显
闭合时,P3.0引脚为低电平。单片机对开关状态的检测是由程序检测
10
图5-3
开关、LED发光二极管与P1口的连接

单片机原理第5章定时、计数器

单片机原理第5章定时、计数器

5.2.2 控制寄存器 控制寄存器TCON
5,控制寄存器TCON初始化设置 ,控制寄存器 初始化设置
0
0 1
0
1 0 1
0
0
0
0
复位时, 的所有位被清0. 复位时,TCON的所有位被清 的所有位被清 要启动,关闭 , 要启动,关闭TI, T0,需对 ,需对TR1,TR0用 , 用 软件设置: 软件设置: SETB TRx;启动 ; CRL TRx;关闭 ; 也可以用传送指令 MOV TCON,#50H , 同时启动T0, 同时 同时启动 ,T1同时 使用电平触发方式. 使用电平触发方式.
时钟 振荡 ÷12
2,脉冲计数 , 每来1个脉冲,计 每来 个脉冲, 个脉冲 数器加1. 数器加 .
C P U
T0 TL0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0
溢 出 启动 TH0 工作 方式
TCON
TMOD
中断
5.1 定时器的结构及工作原理
1,计数脉冲来源 ,
(P3.4)
INT0(INTI)=1 指令 SETB TR0(TR1) 启动定时/计数器 启动定时 计数器T0(T1) 计数器
1
5.2.2 控制寄存器 控制寄存器TCON
1,溢出标志位 TFx
0 1
TFl(TCON.7):T1溢出标志位.当T1溢出时由硬 : 溢出标志位 溢出标志位. 溢出时由硬 件自动使中断触发器TFl置1,并向 申请中断. 件自动使中断触发器 置 ,并向CPU申请中断. 申请中断 响应进入中断服务程序后, 当CPU响应进入中断服务程序后,TFl又被硬件 响应进入中断服务程序后 又被硬件 自动清0. TFl也可以用软件清 . 自动清 . 也可以用软件清0. 也可以用软件清 TF0(TCON.5):T0溢出标志位.其功能和操作同 : 溢出标志位 其功能和操作同TFl 溢出标志位.

单片机第五章功能单元结构与操作原理

单片机第五章功能单元结构与操作原理
单片机第五章功能单元结 构与操作原理
本章将介绍单片机的功能单元结构和操作原理,包括CPU结构、数据通路、 控制单元、寄存器、存储器、中断控制器、定时器、输入输出口等重要部分。 深入理解这些内容,将帮助我们更好地掌握单片机的工作原理。
功能单元的概念及作用
功能单元
单片机中负责完成特定功能的部分。
作用
提供单片机各种基本功能,实现各种应用场 景。
UART的原理和应用
1 原理
通过串行通信实现数据的传输。
2 应用
用于与外部设备的连接和数据交互。
SPI和I2 C的区别和应用场景
SPI
串行外设接口,适用于高速 数据传输。
I2C
串行总线接口,适用于连接 多个设备。
应用场景
SPI适用于高速通信的场景, I2C适用于连接多个设备的场 景。
系统时钟的作用和原理
3
应用
用于实现单片机中的各种运算操作。
寄存器的作用和分类
作用
存储和暂时保存数据和地址。
分类
通用寄存器、状态寄存器等。
存储器的结构和分类
1 结构
由存储单元组成的数组结构。
2 分类
ROM、RAM、FLASH等。
ROM和RAM的区别与应用场景
ROM
只读存储器,通常用于存储 不变的程序和数据。
RAM
随机访问存储器,可读写。
ADC和DAC的原理和应用
ADC
模数转换器,将模拟信号转 换为数字信号。
DAC
数模转换器,将数字信号转 换为模拟信号。
应用
用于数字信号的采集和模拟 信号的输出。
PWM的原理和使用方法
1
原理
通过改变信号占空比实现模拟信号的输出。

单片机原理及应用课后习题答案第5章作业

单片机原理及应用课后习题答案第5章作业

第五章中断系统作业1. 外部中断1所对应的中断入口地址为()H。

2. 对中断进行查询时,查询的中断标志位共有、_ _、、_ 和_ 、_ _ 六个中断标志位。

3.在MCS-51中,需要外加电路实现中断撤除的是:()(A) 定时中断(B) 脉冲方式的外部中断(C) 外部串行中断(D) 电平方式的外部中断4.下列说法正确的是:()(A) 同一级别的中断请求按时间的先后顺序顺序响应。

()(B) 同一时间同一级别的多中断请求,将形成阻塞,系统无法响应。

()(C) 低优先级中断请求不能中断高优先级中断请求,但是高优先级中断请求能中断低优先级中断请求。

()(D) 同级中断不能嵌套。

()5.在一般情况下8051单片机允许同级中断嵌套。

()6.各中断源对应的中断服务程序的入口地址是否能任意设定? ()7.89C51单片机五个中断源中优先级是高的是外部中断0,优先级是低的是串行口中断。

()8.各中断源发出的中断申请信号,都会标记在MCS-51系统中的()中。

(A)TMOD (B)TCON/SCON (C)IE (D)IP9. 要使MCS-51能够响应定时器T1中断、串行接口中断,它的中断允许寄存器IE的内容应是()(A)98H (B)84H (C)42 (D)22H10.编写出外部中断1为负跳沿触发的中断初始化程序。

11.什么是中断?其主要功能是什么?12. 什么是中断源?MCS-51有哪些中断源?各有什么特点?13. 什么是中断嵌套?14.中断服务子程序与普通子程序有哪些相同和不同之处?15. 中断请求撤除的有哪三种方式?16. 特殊功能寄存器TCON有哪三大作用?17. 把教材的P82页的图4.24改为中断实现,用负跳变方式,中断0(INT0)显示“L2”,中断1(INT1)显示“H3”。

(可参考第四章的电子教案中的例子)18.第5章课后作业第9题。

第五章中断系统作业答案1. 外部中断1所对应的中断入口地址为(0013)H。

《单片机原理与接口技术(第2版)张毅刚》第5章习题与答案

《单片机原理与接口技术(第2版)张毅刚》第5章习题与答案

《单片机原理及接口技术》(第2版)人民邮电出版社第5章I/O口应用-显示与开关/键盘输入思考题及习题51.判断下列说法是否正确。

A.HD7279是用于键盘和LED数码管的专用接口芯片。

答:对B.LED数码管的字型码是固定不变的。

答:错C.为给扫描法工作的88非编码键盘提供接口电路,在接口电路中需要提供两个8位并行的输入口和一个8位并行的输出口。

答:错D.LED数码管工作于动态显示方式时,同一时间只有一个数码管被点亮。

答:对2.动态显示的数码管,任一时刻只有一个LED处于点亮状态,是LED的余辉与人眼的“视觉暂留”造成数码管同时显示的“假象”。

答:对3.为什么要消除按键的机械抖动?软件消除按键机械抖动的原理是什么?答:消除按键的机械抖动,避免由于机械抖动造成的对键盘是否按下误判。

软件消除按键机械抖动的原理是采用软件延时,躲过键盘按键的机械抖动期。

4.LED的静态显示方式与动态显示方式有何区别?各有什么优缺点?答:静态显示时,欲显示的数据是分开送到每一位LED上的。

而动态显示则是数据是同时送到每一个LED上,再根据位选线来确定是哪一位LED被显示。

静态显示亮度很高,但口线占用较多。

动态显示口线占用较少,但是需要编程进行动态扫描,适合用在显示位数较多的场合。

5.分别写出表5-1中共阴极和共阳极LED数码管仅显示小数点“.”的段码。

答:80H(共阴极);7FH(共阳极)。

6.已知8段共阴极LED数码显示器要显示某字符的段码为7DH(a段为最低位),此时显示器显示的字符为。

答:67.已知8段共阳极LED数码显示器要显示字符“6”(a段为最低位),此时的段码为。

答:82H8.当键盘的按键数目少于8个时,应采用式键盘。

当键盘的按键数目为64个时,应采用式键盘。

答:独立式,矩阵式9.已知8段共阳极LED数码管要显示字符“5”(a段为最低位),此时的段码为。

答:92H7.AT89S51单片机控制LCD显示英文字符或数字字符时,要把欲显示字符的码送给LCD控制模块。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
SCON
T1
TXD RXD
中断标 志位
中断源 允许
总允许
中断优 矢量 先级 地址
低 级 中 断 请 求
二、中断源
8051单片机有5个中断请求源:
单片机
外部输入中断源INT0(P3.2) 外部输入中断源INT1(P3.3) 片内定时器T0的溢出 片内定时器T1的溢出 片内串行口发送或接收中断源
• 定时/计数器0溢出时,TF0由硬件置1
• CPU 响应中断时 自动清零 TF0 • TF0 也可软件清零
3、串行口中断
SCON
D7 D0
TI
RI
• RI:串行口接收中断标志
• RI=1串行口接收中断
• TI:串行口发送中断标志
• TI=1串行口发送中断
• RI、TI 只能由软件清零
三、中断系统的中断控制
四、中断处理过程




中 断 返 回
中断响应
中断响应:在满足CPU的中断 响应条件之后,CPU对中断源 中断请求予以处理。 中断响应过程: 保护断点地址; 把程序转向中断服务程序的
应 响 断 中
中断服务 子程序的 入口地址
入口地址(通常称矢量地址)。 特别注意:这些工作是硬件 自动完成的!
五、外部中断源的扩展
• 单片机仅有两个外部中断输入端. • 可用两种方法扩展: 1. 定时器T0,T1。(工作在计数方式下) 2. 中断和查询结合。
1.用定时器作外部中断源
例 将定时器T0扩展为外部中断源。
解:将定时器T0设定为方式2(自动恢复计数初值),TH0和TF0的初值均 设置为FFH,允许T0中断,CPU开放中断,源程序如下:
0023H:串行口中断入口

001BH:定时器1溢出中断入口

0013H:外部中断1入口

000BH:定时器0溢出中断入口

0003H:外部中断0入口
0000H:复位后,程序的入口地址(PC=0000H)
包含T0中断服务子程序的 程序结构: 程序存储器ROM ORG 0000H AJMP MAIN 002AH ORG 000BH 0023H:串行口中断入口 AJMP INTT0 ORG 0100H 001BH:定时器1溢出中断入口 MAIN: . . 0013H:外部中断1入口 . AJMP INTT0 INTT0:. 000BH:定时器0溢出中断入口 . . 0003H:外部中断0入口 RETI AJMP MAIN END
关中断
中 断 服 务 程 序
保护现场 开中断 中断服务 关中断 恢复现场 开中断 中断返回
保护现场和 恢复现场的 过程中不允 许中断,以 免现场遭到 破坏。
保护和恢复现场之后 的开中断是为了允许 有更高级中断打断此 中断服务程序。
断点地址由堆栈弹入PC
硬件自 动完成
中断请求的撤除
CPU响应某中断请求后,在中断返回前,应该撤除该中断 请求,否则会引起另一次中断。
应 响 断 中 中 断 返 回
PC中去。另外,它还通知中
断系统已完成中断处理,将 清除优先级状态触发器。
特别注意:不能用RET
指令代替RETI指令!
中断处理过程示意图
中断源发中断请求 中断响应条件 是否满足?
N
Y Y
中断是否受阻?
由硬件 自动完成
N
把PC断点地址压入堆栈 相应中断源的中断入口地址 送入PC,转向中断服务程序
电平激活的外部中断源中断标志的撤除 电平触发外部中断撤除方法较复杂。
因为在电平触发方式中,CPU响应中断时不会自动清 除IE1或IE0标志,所以在响应中断后应立即撤除INT0或 INT1引脚上的低电平。
在硬件上,CPU对INT0和INT1引脚的信号不能控制,所
以这个问题要通过硬件,再配合软件来解决。
定时器0或1溢出:CPU在响应中断后,硬件清除了有关的中
断请求标志TFO或TF1,即中断请求是自动撤除的。
边沿激活的外部中断:CPU在响应中断后,也是用硬件自动
清除有关的中断请求标志IE0或IE1。
串行口中断:CPU响应中断后,没有用硬件清除T1、R1,
故这些中断不能自动撤除,而要靠软件来清除相应的标志。
中断源服务 POP POP PSW DPL 恢复现场
POP
POБайду номын сангаас RETI
DPH
ACC
中断返回
中断返回是指中断服务完
应 响 断 中 中 断 返 回
后,计算机返回到原来暂停
的位置(即断点),继续执行 原来的程序。
中断返回由专门的中断返
回指令RETI来实现。
中断返回
RETI指令功能:把断点地 址取出,送回到程序计数器
断点 地址
中断响应
中断服务子程序入口地址又称 为中断矢量或中断向量。 单片机中5个中断源的矢量地 址是固定的,不能改动。
应 响 断 中
中断服务 子程序的 入口地址
断点 地址
程序存储器ROM
002AH
使用时,通常在这些入口地址 处存放一条跳转指令,使程序 跳转到用户安排的中断服务程 序起始地址上去!
或 或
INT0
T0
INT1
T1
串行口
1、外部中断请求0、1
TCON
D7 D0
TF1
TF0
IE1 IT1 IE0 IT0
• IT0:外部中断请求0的触发方式选择
• IT0=0 电平触发方式;IT0=1 边沿触发方式 • IE0:外部中断请求0的中断申请标志 • IT0=0 CPU每个机器周期采样/INT0,若/INT0=0 则
IE=0 否则 IE=1申请中断 • IT0=1 若第一个机器周期/INT0=1,第二个机器周 期/INT0=0,则IE=1否则IE=0
• 转向中断服务时 IE由硬件清零
2、T0、T1溢出中断
TCON
D7 D0
TF1
TF0
IE1 IT1 IE0 IT0
• TF0:51片内定时/计数器0溢出中断请求标志。
第五章
中断系统
一、中断系统的结构
TCON
IT0=0 INT0 IT0=1
IE
EX0
IP
PX0 PT0
IE0 TF0
T0
IT1=0 INT1 IT1=1
自 然 优 先 级 矢量 地址 自 然 优 先 级
ET0 PX1 EX1 PT1 ET1 PS ES EA
高 级 中 断 请 求
IE1 TF1 TI RI
0000H:复位后,程序的入口地址(PC=0000H)
中断处理
入口地址
中断服务程序从入口地址开始 执行,直到返回指令RETI为止,
应 响 断 中
这个过程称为中断处理(或中断
服务)。 中断服务子程序一般包括两部 分内容,一是保护和恢复现场, 二是处理中断源的请求。
RETI
中断处理
INTT0: PUSH ACC PUSH PUSH PUSH DPH DPL PSW 保护现场
sjmp $
push ACC mov A,#0FFh mov P1,A mov A,P1 swap A mov P1,A pop ACC pop PSW reti END
图: 一个外中断扩展成多个外中断的原理图
ORG 0000H Ex1Svr: push PSW
+5V
P1.7
ajmp Main ORG 0003H
P1.4
P1.3 P1.0
ljmp Ex1Svr
ORG 0100H Main: setb IT0
R
8031
/INT0
Q S
setb EX0 setb EA
MOV MOV MOV TMOD,#06H TH0,#0FFH TL0,#0FFH
SETB
SETB SETB
TR0
ET0 EA

T0引脚每输入一个负跳变,TF0都会置1,向CPU请求中断 T0脚相当于边沿触发的外部中断源输入线。
2.中断和查询相结合
EXINT0 EXINT1 P3.3 ≥1 EXINT2 EXINT3 MCS-51 P1.0 P1.1 P1.2 P1.3
相关文档
最新文档