《2022年单片机硬件知识点汇总 .pdf》由会员分享,可在线阅读,更多相关《2022年单片机硬件知识点汇总 .pdf(21页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、1 第一章绪论第一节单片机单片机即单片机微型计算机,是将计算机主机(CPU、内存和 I/O 接口 )集成在一小块硅片上的微型机。第二节单片机的历史与现状第一阶段( 19761978 年) :低性能单片机的探索阶段。以Intel 公司的 MCS-48 为代表,采用了单片结构,即在一块芯片内含有8 位 CPU、定时 /计数器、并行I/O 口、 RAM和 ROM 等。主要用于工业领域。第二阶段( 19781982 年) :高性能单片机阶段,这一类单片机带有串行I/O 口, 8位数据线、 16 位地址线可以寻址的范围达到64K 字节、控制总线、 较丰富的指令系统等。这类单片机的应用范围较广,并在不断的
2、改进和发展。第三阶段( 19821990 年) :16 位单片机阶段。 16 位单片机除CPU 为 16 位外,片内RAM 和 ROM 容量进一步增大,实时处理能力更强,体现了微控制器的特征。例如Intel公司的 MCS-96 主振频率为12M,片内 RAM 为 232 字节, ROM 为 8K 字节,中断处理能力为 8 级,片内带有10 位 A/D 转换器和高速输入/输出部件等。第四阶段 (1990 年) :微控制器的全面发展阶段,各公司的产品在尽量兼容的同时,向高速、强运算能力、寻址范围大以及小型廉价方面发展。第三节单片机的应用领域一、单片机在仪器仪表中的应用二、单片机在机电一体化中的应用
3、三、单片机在智能接口和多机系统中的应用四、单片机在生活中的应用名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 21 页 - - - - - - - - - 2 第二章硬件结构第一节MCS-51 单片机及其演变特点(1)一个 8 位微处理器CPU。(2)数据存储器RAM 和特殊功能寄存器SFR。(3)内部程序存储器ROM 。(4)两个定时 /计数器,用以对外部事件进行计数,也可用作定时器。(5)四个 8 位可编程的I/O(输入 /输出)并行端口,每个端口既可做输入,也可做输
4、出。(6)一个串行端口,用于数据的串行通信。(7)中断控制系统。(8)内部时钟电路。第二节80C51 单片机的基本结构1) 中央处理器( CPU)中央处理器是单片机的核心,完成运算和控制功能。MCS-51 的 CPU 能处理 8 位二进制数或代码。2) 内部数据存储器(内部RAM )8051 芯片中共有256 个 RAM 单元,但其中后128 单元被专用寄存器占用,能作为寄存CPU时钟电 路P0P3P2P1TXDRXDINT0INT1并行接 口串行接 口中断系 统定时/计 数器RAMROMT0T1名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - -
5、- - - - 名师精心整理 - - - - - - - 第 2 页,共 21 页 - - - - - - - - - 3 器供用户使用的只是前128 单元,用于存放可读写的数据。因此通常所说的内部数据存储器就是指前128 单元,简称内部RAM 。3) 内部程序存储器(内部ROM )8051 共有 4 KB 掩膜 ROM ,用于存放程序、 原始数据或表格,因此,称之为程序存储器,简称内部 ROM 。4) 定时 /计数器8051 共有两个16 位的定时 /计数器,以实现定时或计数功能,并以其定时或计数结果对计算机进行控制。5) 并行 I/O 口MCS-51 共有 4 个 8 位的 I/O 口(P
6、0、P1、P2、P3) ,以实现数据的并行输入/输出。在实训中我们已经使用了P1 口,通过 P1口连接 8 个发光二极管。第三节80C51 单片机的引脚功能MCS-51 是标准的 40 引脚双列直插式集成电路芯片,引脚排列请参见图P0.0 P0.7: P0 口 8 位双向口线。P1.0 P1.7 :P1 口 8 位双向口线。P2.0 P2.7 :P2 口 8 位双向口线。P3.0 P3.7 :P3 口 8 位双向口线。ALE :地址锁存控制信号。在系统扩展时,ALE 用于控制把 P0 口输出的低8 位地址锁存起来,以实现低位地址和数据的隔离。此外,由于 ALE 是以晶振 1/6 的固定频率输出
7、的正脉冲, 因此 ,可作为外部时钟或外部定时脉冲使用。PSEN:外部程序存储器读选通信号。在读外部ROM时,PSEN 有效(低电平) ,以实现外部ROM 单元的读操作。EA:访问程序存储控制信号。当信号为低电平时,对ROM的读操作限定在外部程序存储器;当信号为高电平时,对 ROM 的读操作是从内部程序存储器开始,并可延至外部程序存储器。RST:复位信号。当输入的复位信号延续两个机器周期以上的高电平时即为有效,用以完成单片机的复位初始化操作。XTAL1 和 XTAL2 :外接晶体引线端。当使用芯片内部时钟时,此二引线端用于外接石英晶体和微调电容;当使用外部时钟时,用于接外部时钟脉冲信号。P1.0
8、1P1.12P1.23P1.34P1.45P1.56P1.67P1.78RST/VPD9RXD P3.010TXD P3.111INT0 P3.212INT1 P3.313T0 P3.414T1 P3.515WR P3.616RD P3.717XTAL218XTAL119VSS20P2.021P2.122P2.223P2.324P2.425P2.526P2.627P2.728PSEN29ALE/PROG30EA/VPP31P0.732P0.633P0.534P0.435P0.336P0.237P0.138P0.039VCC40803180518751名师资料总结 - - -精品资料欢迎下载 -
9、 - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 21 页 - - - - - - - - - 4 VSS:地线。VCC:+5 V 电源。以上是 MCS-51 单片机芯片40 条引脚的定义及简单功能说明,读者可以对照实训电路找到相应引脚,在电路中查看每个引脚的连接使用。P3 口线的第二功能。P3的 8 条口线都定义有第二功能第四节存储器结构MCS-51 单片机的芯片内部有RAM 和 ROM 两类存储器,即所谓的内部RAM 和内部 ROM MCS-51 内部程序存储器MCS-51 的程序存储器用于存放编好的程序和表格常
10、数。8051 片内有 4 KB 的 ROM ,8751 片内有 4 KB 的 EPROM, 8031 片内无程序存储器。MCS-51 的片外最多能扩展64 KB程序存储器, 片内外的 ROM 是统一编址的。 如端保持高电平,8051 的程序计数器PC 在0000H0FFFH 地址范围内(即前 4 KB 地址 ) 是执行片内ROM 中的程序,当PC 在1000HFFFFH 地址范围时,自动执行片外程序存储器中的程序;当保持低电平时,只能寻址外部程序存储器,片外存储器可以从0000H 开始编址。MCS-51 的程序存储器中有些单元具有特殊功能,使用时应予以注意。其中一组特殊单元是0000H0002
11、H。系统复位后,(PC)=0000H ,单片机从0000H单元开始取指令执行程序。如果程序不从0000H 单元开始,应在这三个单元中存放一条无条件转移指令,以便直接转去执行指定的程序。还有一组特殊单元是0003H002AH ,共 40 个单元。这40 个单元被均匀地分为5段,作为5个中断源的中断地址区。其中:0003H000AH 外部中断 0 中断地址区000BH 0012H 定时 /计数器 0 中断地址区0013H001AH 外部中断 1 中断地址区001BH 0022H 定时 /计数器 1 中断地址区0023H002AH 串行中断地址区中断响应后,按中断种类,自动转到各中断区的首地址去执行
12、程序,因此在中断地址区中理应存放中断服务程序。但通常情况下,8 个单元难以存下一个完整的中断服务程序,因此通常也是从中断地址区首地址开始存放一条无条件转移指令,以便中断响应后,通过中断地址区,再转到中断服务程序的实际入口地址。MCS-51 内部数据存储器内部数据存储器低128 单元名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 21 页 - - - - - - - - - 5 8051 的内部 RAM 共有 256 个单元,通常把这256 个单元按其功能划分为两部分:低
13、128 单元(单元地址00H7FH)和高 128 单元(单元地址80HFFH) 。如图所示为低 128 单元的配置图。寄存器区8051 共有 4 组寄存器,每组8 个寄存单元(各为8) ,各组都以R0R7 作寄存单元编号。寄存器常用于存放操作数中间结果等。由于它们的功能及使用不作预先规定,因此称之为通用寄存器, 有时也叫工作寄存器。 4 组通用寄存器占据内部RAM 的 00H 1FH单元地址。在任一时刻, CPU 只能使用其中的一组寄存器,并且把正在使用的那组寄存器称之为当前寄存器组。到底是哪一组,由程序状态字寄存器PSW 中 RS1、RS0 位的状态组合来决定。通用寄存器为CPU 提供了就近
14、存储数据的便利,有利于提高单片机的运算速度。此外,使用通用寄存器还能提高程序编制的灵活性,因此,在单片机的应用编程中应充分利用这些寄存器,以简化程序设计,提高程序运行速度。位寻址区内部 RAM 的 20H2FH 单元,既可作为一般RAM 单元使用,进行字节操作,也可以对单元中每一位进行位操作,因此把该区称之为位寻址区。位寻址区共有16 个 RAM特殊功能寄存器通用RAM 区位寻址区00H 1FH 20H 2FH 30H 7FH 80H FFH 80H 88H 90H 98H A0H A8H B0H B8H D0H E0H F0H 特殊功能寄存器中位寻址外部ROM 内部ROM (EA=1) 外部
15、ROM (EA=0) 0000H 0000H 0FFFH 0FFFH 1000H FFFFH 外 部RAM (I/O 口地址) 0000H FFFFH 内部数据存储器(a)外部数据存储器(b)程序存储器(c)工作寄存器区名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 21 页 - - - - - - - - - 6 单元,计 128 位,地址为00H7FH。MCS-51 具有布尔处理机功能,这个位寻址区可以构成布尔处理机的存储空间。这种位寻址能力是MCS-51 的一个重要
16、特点。用户 RAM 区在内部 RAM 低 128 单元中,通用寄存器占去32 个单元,位寻址区占去16 个单元,剩下 80 个单元,这就是供用户使用的一般RAM 区,其单元地址为30H7FH。对用户RAM 区的使用没有任何规定或限制,但在一般应用中常把堆栈开辟在此区中。内部数据存储器高128 单元内部 RAM 的高 128 单元是供给专用寄存器使用的,其单元地址为80HFFH。因这些寄存器的功能已作专门规定,故称之为专用寄存器(Special Function Register ) ,也可称为特殊功能寄存器。第五节特殊功能存储器SFR 8051 共有 21 个专用寄存器,现把其中部分寄存器简单
17、介绍如下:程序计数器(PCProgram Counter) 。在实训中,我们已经知道PC 是一个 16 位的计数器,它的作用是控制程序的执行顺序。其内容为将要执行指令的地址,寻址范围达64 KB 。PC 有自动加1 功能,从而实现程序的顺序执行。PC 没有地址,是不可寻址的,因此用户无法对它进行读写,但可以通过转移、调用、返回等指令改变其内容,以实现程序的转移。因地址不在SFR(专用寄存器)之内,一般不计作专用寄存器。累加器(ACCAccumulator ) 。累加器为 8 位寄存器, 是最常用的专用寄存器,功能较多,地位重要。它既可用于存放操作数,也可用来存放运算的中间结果。MCS-51 单
18、片机中大部分单操作数指令的操作数就取自累加器,许多双操作数指令中的一个操作数也取自累加器。B 寄存器。 B 寄存器是一个8 位寄存器,主要用于乘除运算。乘法运算时,B 存乘数。乘法操作后,乘积的高8 位存于 B 中,除法运算时,B 存除数。除法操作后,余数存于B中。此外, B 寄存器也可作为一般数据寄存器使用。程序状态字(PSWProgram Status Word ) 。程序状态字是一个8 位寄存器,用于存放程序运行中的各种状态信息。其中有些位的状态是根据程序执行结果,由硬件自动设置的,而有些位的状态则使用软件方法设定。PSW 的位状态可以用专门指令进行测试,也可以用指令读出。一些条件转移指
19、令将根据PSW 有些位的状态,进行程序转移。PSW 的各位定义如下:名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 21 页 - - - - - - - - - 7 除 PSW.1 位保留未用外,其余各位的定义及使用如下:CY(PSW.7)进位标志位。CY 是 PSW 中最常用的标志位。其功能有二:一是存放算术运算的进位标志,在进行加或减运算时,如果操作结果的最高位有进位或借位时,CY 由硬件置 “1”,否则清 “0”;二是在位操作中,作累加位使用。位传送、位与位或等位操
20、作,操作位之一固定是进位标志位。AC(PSW.6)辅助进位标志位。在进行加减运算中,当低4 位向高4 位进位或借位时, AC 由硬件置 “1”,否则 AC 位被清 “0”。在 BCD 码调整中也要用到AC 位状态。F0(PSW.5) 用户标志位。这是一个供用户定义的标志位,需要利用软件方法置位或复位,用以控制程序的转向。RS1 和 RS0(PSW.4,PSW.3) 寄存器组选择位。它们被用于选择CPU 当前使用的通用寄存器组。通用寄存器共有4 组,其对应关系如下:00:0 组01:1 组10:2 组11:3 组这两个选择位的状态是由软件设置的,被选中的寄存器组即为当前通用寄存器组。但当单片机上
21、电或复位后,RS1 RS0=00。OV (PSW.2) 溢出标志位。在带符号数加减运算中,OV=1 表示加减运算超出了累加器 A 所能表示的符号数有效范围(-128 +127) ,即产生了溢出,因此运算结果是错误的,否则,OV=0 表示运算正确,即无溢出产生。P(PSW.0)奇偶标志位。表明累加器A 中内容的奇偶性。如果A 中有奇数个 “1”,则 P 置“1”,否则置 “0”。凡是改变累加器A 中内容的指令均会影响P 标志位。此标志位对串行通信中的数据传输有重要的意义。在串行通信中常采用奇偶校验的办法来校验数据传输的可靠性。数据指针( DPTR ) 。数据指针为16 位寄存器。编程时,DPTR
22、 既可以按16 位寄存器使用,也可以按两个8 位寄存器分开使用,即:DPH DPTR 高位字节, DPL DPTR 低位字节。DPTR 通常在访问外部数据存储器时作地址指针使用。由于外部数据存储器的寻址范围为 64 KB ,故把 DPTR 设计为 16 位。堆栈指针( SPStack Pointer) 。堆栈是一个特殊的存储区,用来暂存数据和地址,它是按“ 先进后出 ” 的原则存取数据的。堆栈共有两种操作:进栈和出栈。 由于 MCS-51 单片机PSW 位 地址D7H D6H D5H D4H D3H D2H D1H D0H 字节地址CY AC F0 RS1 RS0 OV F1 P 名师资料总结
23、 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 21 页 - - - - - - - - - 8 的堆栈设在内部RAM 中,因此 SP是一个 8 位寄存器。系统复位后,SP 的内容为07H,从而复位后堆栈实际上是从08H 单元开始的。 但 08H1FH 单元分别属于工作寄存器13 区,如程序要用到这些区,最好把SP值改为 1FH 或更大的值。对专用寄存器的字节寻址问题作如下几点说明:(1)21 个可字节寻址的专用寄存器是不连续地分散在内部RAM 高 128 单元之中,尽管还余有许多空
24、闲地址,但用户并不能使用。(2) 程序计数器PC 不占据 RAM 单元, 它在物理上是独立的,因此是不可寻址的寄存器。(3) 对专用寄存器只能使用直接寻址方式,书写时既可使用寄存器符号,也可使用寄存器。第六节输入输出端口单片机芯片内还有一项主要内容就是并行I/O 口。 MCS-51 共有 4 个 8 位的并行I/O口,分别记作P0、P1、P2、P3。每个口都包含一个锁存器、一个输出驱动器和输入缓冲器。实际上,它们已被归入专用寄存器之列,并且具有字节寻址和位寻址功能。在访问片外扩展存储器时,低8 位地址和数据由P0 口分时传送,高8 位地址由P2口传送。在无片外扩展存储器的系统中,这 4 个口的
25、每一位均可作为双向的I/O 端口使用。第七节时钟电路在 MCS-51芯片内部有一个高增益反相放大器,其输入端为芯片引脚XTAL1,其输出端为引脚XTAL2 。而在芯片的外部,XTAL1 和 XTAL2之间跨接晶体振荡器和微调电容,从而构成一个稳定的自激振荡器,这就是单片机的时钟电路。VCC锁存器P1.XDCPQQP1.X引脚读锁存器写锁存器内部总线读引脚内部上拉电阻名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 21 页 - - - - - - - - - 9 1振荡周期
26、:为单片机提供时钟信号的振荡源的周期。2时钟周期:是振荡源信号经二分频后形成的时钟脉冲信号。3机器周期:通常将完成一个基本操作所需的时间称为机器周期。4指令周期:是指CPU 执行一条指令所需要的时间。一个指令周期通常含有14 个机器周期。第八节复位电路单片机复位是使CPU和系统中的其他功能部件都处在一个确定的初始状态,并从这个状态开始工作,例如复位后XTAL2XTAL1MCS-51 C1C2CYS XTAL2 XTAL1MCS-51 +5V VSSTTL 外部时钟源P1P2S1P2 振荡周期时钟周期机器周期机器周期指令周期XTAL2(OSC) S2S3S4S5S6S1S2S4S5S3S6P1P
27、1P1P1P1P1P1P1P1P1P1P2P2P2P2P2P2P2P2P2P2P2MCS- 51VCCVCCRESETVSS22 F1 kMCS- 51VCCVCCRESETVSS22 FRESETR1R2(a)(b)200 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 21 页 - - - - - - - - - 10 PC=0000H ,使单片机从第一个单元取指令。实训中已经看出,无论是在单片机刚开始接上电源时,还是断电后或者发生故障后都要复位,所以我们必须弄清楚M
28、CS-51型单片机复位的条件、复位电路和复位后状态。第三章定时器 / 计数器第一节概述实质是计数器,脉冲每一次下降沿,计数寄存器数值将加1。计数的脉冲如果来源于单片机内部的晶振,由于其周期极为准确,这时称为定时器。计数的脉冲如果来源于单片机外部的引脚,由于其周期一般不准确,这时称为计数器。第二节结构和工作原理定时 /计数器方式寄存器TMOD (1) M1 和 M0 :方式选择位。(2) c/T :功能选择位。时,设置为定时器工作方式;时,设置为计数器工作方式。(3) GATE:门控位。当GATE=0 时,软件控制位TR0 或 TR1 置 1 即可启动定时器;当GATE=1 时,软件控制位TR0
29、 或 TR1 须置 1,同时还须( P3.2)或( P3.3)为高电平方可启动定时器,即允许外中断、启动定时器。定时器 /计数器控制寄存器TCON (1) TCON.7 TF1:定时器 1 溢出标志位。当定时器1计满数产生溢出时,由硬件自动置TF1=1 。在中断允许时,向CPU 发出定时器1 的中断请求,进入中断服务程序后,由硬件自动清0。在中断屏蔽时,TF1 可作查询测试用,此时只能由软件清0。(2) TCON.6 TR1:定时器 1 运行控制位。由软件置1 或清 0 来启动或关闭定时器1。当GATE=1,且为高电平时,TR1 置 1 启动定时器 1;当 GATE=0 时,TR1 置 1 即
30、可启动定时器 1。(3) TCON.5 TF0:定时器 0 溢出标志位。其功能及操作情况同TF1。(4) TCON.4 TR0:定时器 0 运行控制位。其功能及操作情况同TR1。(5) TCON.3 IE1:外部中断1()请求标志位。(6)TCON.2 IT1 :外部中断1 触发方式选择位。(7)TCON.1 IE0:外部中断0 ()请求标志位。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 10 页,共 21 页 - - - - - - - - - 11 (8) TCON.0 IT
31、0 :外部中断0 触发方式选择位。第三节定时/计数器的工作方式1方式 0 方式 0 构成一个13 位定时 /计数器。图是定时器0 在方式 0 时的逻辑电路结构,定时器1的结构和操作与定时器0 完全相同。2方式 1 定时器工作于方式1 时。由图可知, 方式 1 构成一个 16 位定时 /计数器, 其结构与操作几乎完全与方式0 相同,惟一差别是二者计数位数不同。3方式 2 定时 /计数器工作于方式2 时, 。由图可知,方式2 中, 16 位加法计数器的TH0 和 TL0 具有不同功能,其中,TL0 是 8位计数器, TH0 是重置初值的8 位缓冲器。4方式 3 定时 /计数器工作于方式3 时,其逻
32、辑结构图如图所示。振荡器 12C/T 0C/T 1控制T0TR0GATE&11INT0中断TL05位TH08位TF0振荡器 12控制T0TR0GATE&11INT0中断TF0TL0(8位)121fosc中断TF1TH0(8位)TR1C/T 0C/T 1121fosc121fosc名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 11 页,共 21 页 - - - - - - - - - 12 第四节编程和使用1计数器初值的计算把计数器计满为零所需要的计数值设定为C, 计数初值设定为TC
33、, 由此可得到公式:TC=M-C 式中, M 为计数器模值,该值和计数器工作方式有关。在方式0 时 M 为 213;在方式 1 时 M 为 216;在方式2 和方式 3时 M 为 28。2定时器初值的计算在定时器模式下,计数器由单片机主脉冲经12 分频后计数。因此,定时器定时时间T 的公式: T=(M-TC )T 计数,上式也可写成:TC=M-T/ T计数。式中, M 为模值,和定时器的工作方式有关;T 计数是单片机振荡周期TCLK 的 12 倍;TC 为定时器的定时初值。第六章中断系统第一节概述中断是通过硬件来改变CPU 的运行方向的。计算机在执行程序的过程中,当出现CPU 以外的某种情况时
34、,由服务对象向CPU 发出中断请求信号,要求CPU 暂时中断当前程序的执行而转去执行相应的处理程序,待处理程序执行完毕后,再继续执行原来被中断的程序。这种程序在执行过程中由于外界的原因而被中间打断的情况称为“ 中断 ” 。与中断有关的寄存器有4 个,分别为中断源寄存器TCON 和 SCON、中断允许控制寄存器 IE 和中断优先级控制寄存器IP;中断源有5 个,分别为外部中断0 请求 、外部中断 1 请求、定时器0 溢出中断请求TF0、定时器 1 溢出中断请求TF1 和串行中断请求RI 或 TI。5 个中断源的排列顺序由中断优先级控制寄存器IP 和顺序查询逻辑电路共同决定, 5 个中断源分别对应
35、5 个固定的中断入口地址。第二节中断源与中断申请标志中断源(1)外部中断0 请求,由P3.2 脚输入。通过IT0 脚( TCON.0)来决定是低电平有效还是下跳变有效。一旦输入信号有效,就向CPU 申请中断,并建立IE0 标志。(2)外部中断1 请求,由 P3.3 脚输入。通过IT1 脚 TCON.2 )来决定是低电平有效还是下跳变有效。一旦输入信号有效,就向CPU 申请中断,并建立IE1 标志。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 12 页,共 21 页 - - - -
36、- - - - - 13 (3) TF0:定时器T0 溢出中断请求。当定时器0 产生溢出时,定时器0 中断请求标志位(TCON.5 )置位(由硬件自动执行),请求中断处理。(4) TF1:定时器1 溢出中断请求。当定时器1 产生溢出时,定时器1 中断请求标志位(TCON.7 )置位(由硬件自动执行),请求中断处理。(5) RI 或 TI:串行中断请求。当接收或发送完一串行帧时,内部串行口中断请求标志位RI(SCON.0)或 TI (SCON.1)置位(由硬件自动执行),请求中断。中断标志TCON 寄存器中的中断标志TCON 为定时器0 和定时器1 的控制寄存器,同时也锁存定时器0 和定时器1
37、的溢出中断标志及外部中断和的中断标志等。与中断有关位如下:(1) TCON.7 TF1:定时器1 的溢出中断标志。T1 被启动计数后,从初值做加1 计数,计满溢出后由硬件置位TF1,同时向 CPU 发出中断请求, 此标志一直保持到CPU 响应中断后才由硬件自动清0。也可由软件查询该标志,并由软件清0。(2) TCON.5 TF0:定时器 0 溢出中断标志。其操作功能与TF1 相同。(3) TCON.3 IE1:中断标志。 IE1 = 1 ,外部中断1 向 CPU 申请中断。(4) TCON.2 IT1:中断触发方式控制位。当IT1 = 0 时,外部中断1 控制为电平触发方式。(5) TCON.
38、1 IE0:中断标志。其操作功能与IE1 相同。(6) TCON.0 IT0:中断触发方式控制位。其操作功能与IT1 相同。SCON 寄存器中的中断标志SCON 是串行口控制寄存器,其低两位TI 和 RI 锁存串行口的发送中断标志和接收中断标志。(1) SCON.1 TI :串行发送中断标志。CPU 将数据写入发送缓冲器SBUF 时,就启动发送,每发送完一个串行帧,硬件将使TI 置位。但CPU 响应中断时并不清除TI,必须由软件清除。第三节中断控制IE 寄存器中断的开放和禁止标志(1) IE.7 EA:总中断允许控制位。EA = 1,开放所有中断,各中断源的允许和禁止可通过相应的中断允许位单独
39、加以控制;EA = 0,禁止所有中断。(2) IE.4 ES:串行口中断允许位。ES = 1,允许串行口中断;ES = 0,禁止串行口中断。(3) IE.3 ET1:定时器 1 中断允许位。 ET1 = 1 ,允许定时器1 中断; ET1 = 0 ,禁止定时器 1 中断。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 13 页,共 21 页 - - - - - - - - - 14 (4) IE.2 EX1:外部中断1()中断允许位。 EX1 = 1 ,允许外部中断1 中断; EX1
40、 = 0 ,禁止外部中断1 中断。(5) IE.1 ET0:定时器 0 中断允许位。 ET0 = 1 ,允许定时器0 中断; ET0 = 0 ,禁止定时器 0 中断。(6) IE.0 EX0: 外部中断 0()中断允许位。EX0 = 1 ,允许外部中断0 中断; EX0 = 0 ,禁止外部中断0 中断。8051 单片机系统复位后,IE 中各中断允许位均被清0,即禁止所有中断。IP 寄存器中断优先级标志8051 单片机有两个中断优先级,每个中断源都可以通过编程确定为高优先级中断或低(1)IP.4 PS:串行口中断优先控制位。PS = 1,设定串行口为高优先级中断;PS = 0,设定串行口为低优先
41、级中断。(2)IP.3 PT1:定时器 T1 中断优先控制位。PT1 = 1,设定定时器T1 中断为高优先级中断; PT1 = 0,设定定时器T1 中断为低优先级中断。(3)IP.2 PX1:外部中断1 中断优先控制位。PX1 = 1 ,设定外部中断1 为高优先级中断;PX1 = 0,设定外部中断1 为低优先级中断。(4)IP.1 PT0:定时器 T0 中断优先控制位。PT0 = 1,设定定时器T0 中断为高优先级中断; PT0 = 0,设定定时器T0 中断为低优先级中断。(5)IP.0 PX0:外部中断0 中断优先控制位。PX0 = 1 ,设定外部中断0 为高优先级中断;PX0 = 0,设定
42、外部中断0 为低优先级中断。当系统复位后,IP 低 5 位全部清 0,所有中断源均设定为低优先级中断。如果几个同一优先级的中断源同时向CPU 申请中断, CPU 通过内部硬件查询逻辑,按自然优先级顺序确定先响应哪个中断请求。自然优先级由硬件形成,排列如下:中断源同级自然优先级外部中断0 最高级定时器 T0 中断外部中断1 定时器 T1 中断串行口中断最低级第四节中断响应中断处理过程可分为中断响应、中断处理和中断返回三个阶段。中断响应中断响应是CPU 对中断源中断请求的响应,包括保护断点和将程序转向中断服务程名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - -
43、 - - - - - - 名师精心整理 - - - - - - - 第 14 页,共 21 页 - - - - - - - - - 15 序的入口地址(通常称矢量地址)。中断响应过程中断响应过程包括保护断点和将程序转向中断服务程序的入口地址。首先,中断系统通过硬件自动生成长调用指令(LACLL ) ,该指令将自动把断点地址压入堆栈保护(不保护累加器A、状态寄存器PSW 和其它寄存器的内容) ,然后,将对应的中断入口地址装入程序计数器PC(由硬件自动执行) ,使程序转向该中断入口地址,执行中断服务程序。 MCS-51 系列单片机各中断源的入口地址由硬件事先设定,分配如下:中断源入口地址外部中断0
44、 0003H 定时器 T0 中断000BH 外部中断1 0013H 定时器 T1 中断001BH 串行口中断0023H 使用时,通常在这些中断入口地址处存放一条绝对跳转指令,使程序跳转到用户安排的中断服务程序的起始地址上去。中断返回中断返回是指中断服务完后,计算机返回原来断开的位置(即断点),继续执行原来的程序。 中断返回由中断返回指令RETI 来实现。 该指令的功能是把断点地址从堆栈中弹出,送回到程序计数器PC,此外,还通知中断系统已完成中断处理,并同时清除优先级状态触发器。特别要注意不能用“RET ” 指令代替 “RETI” 指令。中断请求的撤除CPU 响应中断请求后即进入中断服务程序,在
45、中断返回前,应撤除该中断请求,否则,会重复引起中断而导致错误。MCS-51 各中断源中断请求撤消的方法各不相同,分别为:1)定时器中断请求的撤除对于定时器0 或 1 溢出中断,CPU 在响应中断后即由硬件自动清除其中断标志位TF0或 TF1,无需采取其它措施。2)串行口中断请求的撤除对于串行口中断,CPU 在响应中断后,硬件不能自动清除中断请求标志位TI、RI ,必须在中断服务程序中用软件将其清除。3)外部中断请求的撤除外部中断可分为边沿触发型和电平触发型。对于边沿触发的外部中断0 或 1,CPU 在响应中断后由硬件自动清除其中断标志位IE0 或 IE1,无需采取其它措施。名师资料总结 - -
46、 -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 15 页,共 21 页 - - - - - - - - - 16 第四章MCS_51 与键盘、显示器的接口设计第一节LED 接口原理常用的 LED 显示器有 LED 状态显示器(俗称发光二极管)、LED 七段显示器(俗称数码管)和LED 十六段显示器。发光二极管可显示两种状态,用于系统状态显示;数码管用于数字显示;LED 十六段显示器用于字符显示。1. 数码管简介1) 数码管结构数码管由8 个发光二极管 (以下简称字段) 构成, 通过不同的组合可用来显示数
47、字0 9、字符 A F、H、L、P、R、U、Y、符号 “ -” 及小数点 “ .” 。数码管的外形结构如下图所示。数码管又分为共阴极和共阳极两种结构。2) 数码管工作原理共阳极数码管的8 个发光二极管的阳极(二极管正端)连接在一起。通常,公共阳极接高电平(一般接电源),其它管脚接段驱动电路输出端。当某段驱动电路的输出端为低电平时,则该端所连接的字段导通并点亮。根据发光字段的不同组合可显示出各种数字或字符。此时,要求段驱动电路能吸收额定的段导通电流,还需根据外接电源及额定段导通电流来确定相应的限流电阻。共阴极数码管的8 个发光二极管的阴极(二极管负端)连接在一起。通常,公共阴极接低电平(一般接地
48、) ,其它管脚接段驱动电路输出端。当某段驱动电路的输出端为高agdfecb109876gf GNDabed GNDcdp12345VDVD5 V(a)(b)(c)dp名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 16 页,共 21 页 - - - - - - - - - 17 电平时,则该端所连接的字段导通并点亮,根据发光字段的不同组合可显示出各种数字或字符。此时,要求段驱动电路能提供额定的段导通电流,还需根据外接电源及额定段导通电流来确定相应的限流电阻。3) 数码管字形编码要使数
49、码管显示出相应的数字或字符,必须使段数据口输出相应的字形编码。对照图 7.10(a) ,字型码各位定义为:数据线D0 与 a 字段对应, D1 与 b 字段对应 ,依此类推。如使用共阳极数码管,数据为0 表示对应字段亮,数据为1 表示对应字段暗;如使用共阴极数码管, 数据为 0 表示对应字段暗, 数据为 1 表示对应字段亮。 如要显示 “0”,共阳极数码管的字型编码应为:11000000B(即 C0H) ;共阴极数码管的字型编码应为:00111111B(即 3FH) 。依此类推。2静态显示接口静态显示是指数码管显示某一字符时,相应的发光二极管恒定导通或恒定截止。这种显示方式的各位数码管相互独立
50、,公共端恒定接地(共阴极)或接正电源(共阳极)。每个数码管的8 个字段分别与一个8 位 I/O 口地址相连, I/O 口只要有段码输出,相应字符即显示出来, 并保持不变, 直到 I/O 口输出新的段码。采用静态显示方式,较小的电流即可获得较高的亮度,且占用CPU 时间少,编程简单,显示便于监测和控制,但其占用的口线多,硬件电路复杂,成本高,只适合于显示位数较少的场合。3动态显示接口动态显示是一位一位地轮流点亮各位数码管,这种逐位点亮显示器的方式称为位扫描。通常,各位数码管的段选线相应并联在一起,由一个 8 位的 I/O 口控制; 各位的位选线(公共阴极或阳极)由另外的 I/O 口线控制。 动态