新概念单片机第3章.ppt

上传人:gsy****95 文档编号:85137348 上传时间:2023-04-10 格式:PPT 页数:57 大小:1.45MB
返回 下载 相关 举报
新概念单片机第3章.ppt_第1页
第1页 / 共57页
新概念单片机第3章.ppt_第2页
第2页 / 共57页
点击查看更多>>
资源描述

《新概念单片机第3章.ppt》由会员分享,可在线阅读,更多相关《新概念单片机第3章.ppt(57页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、第第3章章 数码管显示原理数码管显示原理数码管是如何显示出字符的数码管是如何显示出字符的数码管静态显示与动态显示原理数码管静态显示与动态显示原理3.1显示器及其接口显示器及其接口单片机系统中常用的显示器有:单片机系统中常用的显示器有:发光二极管发光二极管LED(Light Emitting Diode)显示器、显示器、液晶液晶LCD(Liquid Crystal Display)显示器、显示器、CRT显示显示器等。器等。LED、LCD显示器有两种显示结构:段显示显示器有两种显示结构:段显示(7段、米字型等)和点阵显示(段、米字型等)和点阵显示(58、88点阵等)点阵等)。使用使用LED显示器时

2、,要注意区分这两种不同的接法。为了显显示器时,要注意区分这两种不同的接法。为了显示数字或字符,必须对数字或字符进行编码。七段数码管加上一示数字或字符,必须对数字或字符进行编码。七段数码管加上一个小数点,共计个小数点,共计8段。因此为段。因此为LED显示器提供的编码正好是一个字显示器提供的编码正好是一个字节。其中共阴节。其中共阴LED显示器,根据电路连接图显示显示器,根据电路连接图显示16进制数的编码进制数的编码已列在下表。已列在下表。用万用表方法测对应角用万用表方法测对应角P57共阴极共阳极共阴数码管编码表 0 x3f ,0 x06,0 x5b,0 x4f,0 x66,0 x6d,0 1 2

3、3 4 5 0 x7d,0 x07,0 x7f ,0 x6f,0 x77,0 x7c,6 7 8 9 A B 0 x39,0 x5e,0 x79,0 x71,0 x00 C D E F 无显示要它亮什么数字就把对应的编码送到它的要它亮什么数字就把对应的编码送到它的阳极阳极 LED数码显示方式及电路数码显示方式及电路 3.2 静态显示方式静态显示方式LED显示器工作方式有两种:静态显示方式和动态显示方式。静态显示的特点是每个数码管的段选必须接一个8位数据线来保持显示的字形码。当送入一次字形码后,显示字形可一直保持,直到送入新字形码为止。这种方法的优点是占用CPU时间少,显示便于监测和控制。缺点是

4、硬件电路比较复杂,成本较高。#includesbit dula=P26;sbit wela=P27;void main()wela=1;/打开U3锁存器P0=0 xFE;/那位为低电平则改为点亮wela=0;/关闭U3锁存器dula=1;/打开U2锁存器P0=0 x7F;/送入段选信号dula=0;while(1);/程序停止C语言编码定义方法:语言编码定义方法:uchar code table=0 x3f,0 x06,0 x5b,0 x4f,0 x66,0 x6d,0 x7d,0 x07,0 x7f,0 x6f,0 x77,0 x7c,0 x39,0 x5e,0 x79,0 x71;关键字关

5、键字code表示编码,表示编码,C语言中定义数组时占语言中定义数组时占用内存空间,而定义成编码则分配到程序存储用内存空间,而定义成编码则分配到程序存储空间空间#include#define uint unsigned int#define uchar unsigned char sbit dula=P26;sbit wela=P27;uchar num;uchar code table=0 x3f,0 x06,0 x5b,0 x4f,0 x66,0 x6d,0 x7d,0 x07,0 x7f,0 x6f,0 x77,0 x7c,0 x39,0 x5e,0 x79,0 x71;void dela

6、y(uint z);void main()wela=1;/11101010P0=0 xC0;wela=0;while(1)for(num=0;num0;x-)for(y=110;y0;y-);3.3 动态显示动态显示 动态显示的特点是将所有位数码管的段选线动态显示的特点是将所有位数码管的段选线并联在一起,由位选线控制是哪一位数码管有效。并联在一起,由位选线控制是哪一位数码管有效。选亮数码管采用动态扫描显示。所谓动态扫描显选亮数码管采用动态扫描显示。所谓动态扫描显示即轮流向各位数码管送出字形码和相应的位选,示即轮流向各位数码管送出字形码和相应的位选,利用发光管的余辉和人眼视觉暂留作用,使人的利用

7、发光管的余辉和人眼视觉暂留作用,使人的感觉好像各位数码管同时都在显示。动态显示的感觉好像各位数码管同时都在显示。动态显示的亮度比静态显示要差一些,所以在选择限流电阻亮度比静态显示要差一些,所以在选择限流电阻时应略小于静态显示电路中的。时应略小于静态显示电路中的。#include#define uint unsigned int#define uchar unsigned char sbit dula=P26;sbit wela=P27;uchar code table=0 x3f,0 x06,0 x5b,0 x4f,0 x66,0 x6d,0 x7d,0 x07,0 x7f,0 x6f,0 x

8、77,0 x7c,0 x39,0 x5e,0 x79,0 x71;void delay(uint);void main()while(1)dula=1;P0=table1;dula=0;P0=0 xff;/消影 wela=1;P0=0 xfe;wela=0;delay(1);/延时1ms void delay(uint z)uint x,y;for(x=z;x0;x-)for(y=110;y0;y-);3.3 80C51的中断系的中断系统统 一、中断的概念一、中断的概念 CPUCPU在在处处理某一事件理某一事件A A时时,发发生了另一事件生了另一事件B B请请求求CPUCPU迅速去迅速去处处理

9、(理(中断中断发发生生););CPUCPU暂时暂时中断当前的工作,中断当前的工作,转转去去处处理事件理事件B B(中断响中断响应应和中断服和中断服务务););待待CPUCPU将事件将事件B B处处理完理完毕毕后,再回到原来事后,再回到原来事件件A A被中断的地方被中断的地方继续处继续处理事件理事件A A(中断返回中断返回),这这一一过过程称程称为为中断中断 。洗衣服的洗衣服的时时候去灌水候去灌水MCS-51单片机的中断系统结构执行主程序主程序继续执行主程序断点中断请求中断响应执行中断处理程序中断返回引起引起CPU中断的根源,称为中断的根源,称为中断源中断源。中断源向。中断源向CPU提出的提出的

10、中断请求。中断请求。CPU暂时中断原来的事务暂时中断原来的事务A,转去处理事件,转去处理事件B。对。对事件事件B处理完毕后,再回到原来被中断的地方(即处理完毕后,再回到原来被中断的地方(即断点断点),称),称为中断返回。实现上述中断功能的部件称为为中断返回。实现上述中断功能的部件称为中断系统中断系统(中断(中断机构)。机构)。随着计算机技术的应用,人们发现中断技随着计算机技术的应用,人们发现中断技术不仅解决了快速主机与慢速术不仅解决了快速主机与慢速I/O设备的数据设备的数据传送问题,而且还具有如下优点:传送问题,而且还具有如下优点:分时操作分时操作。CPU可以分时为多个可以分时为多个I/O设备

11、服设备服务,提高了计算机的利用率;务,提高了计算机的利用率;实时响应实时响应。CPU能够及时处理应用系统的随能够及时处理应用系统的随机事件,系统的实时性大大增强;机事件,系统的实时性大大增强;可靠性高可靠性高。CPU具有处理设备故障及掉电等具有处理设备故障及掉电等突发性事件能力,从而使系统可靠性提高。突发性事件能力,从而使系统可靠性提高。80C51中断系统的结构中断系统的结构 80C51的中断系统有的中断系统有5个中断源个中断源(8052有 6个),2个优先级,可实现二级中断嵌套个优先级,可实现二级中断嵌套。1 1、(P3.2P3.2)可可由由IT0(TCON.0)IT0(TCON.0)选选择

12、择其其为为低低电电平平有有效效还还是是下下降降沿沿有有效效。当当CPUCPU检检测测到到P3.2P3.2引引脚脚上上出出现现有有效效的的中中断断信信号号时时,中中断断标标志志IE0(TCON.1)IE0(TCON.1)置置1 1,向,向CPUCPU申申请请中断。中断。2 2、(P3.3(P3.3)可可由由IT1(TCON.2)IT1(TCON.2)选选择择其其为为低低电电平平有有效效还还是是下下降降沿沿有有效效。当当CPUCPU检检测测到到P3.3P3.3引引脚脚上上出出现现有有效效的的中中断断信信号号时时,中中断断标标志志IE1(TCON.3)IE1(TCON.3)置置1,1,向向CPUCP

13、U申申请请中断。中断。3 3、TF0TF0(TCON.5TCON.5),片片内内定定时时/计计数数器器T0T0溢溢出出中中断断请请求求标标志志。当当定定时时/计计数数器器T0T0发发生生溢出溢出时时,置位,置位TF0TF0,并向,并向CPUCPU申申请请中断。中断。4 4、TF1TF1(TCON.7TCON.7),片内定),片内定时时/计计数器数器T1T1溢溢出中断出中断请请求求标标志。当定志。当定时时/计计数器数器T1T1发发生溢生溢出出时时,置位,置位TF1TF1,并向,并向CPUCPU申申请请中断。中断。5 5、RIRI(SCON.0SCON.0)或)或TITI(SCON.1SCON.1

14、),串行口中),串行口中断断请请求求标标志。当串行口接收完一志。当串行口接收完一帧帧串行数据串行数据时时置位置位RIRI或当串行口或当串行口发发送完一送完一帧帧串行数据串行数据时时置位置位TITI,向,向CPUCPU申申请请中断。中断。二、中断请求标志二、中断请求标志1、TCON的中断标志的中断标志IT0(TCON.0),外部中断),外部中断0触发方式控制位。触发方式控制位。当当IT0=0时,为电平触发方式。时,为电平触发方式。当当IT0=1时,为边沿触发方式(下降沿有效)。时,为边沿触发方式(下降沿有效)。IE0(TCON.1),外部中断),外部中断0中断请求标志位。中断请求标志位。IT1(

15、TCON.2),外部中断),外部中断1触发方式控制位。触发方式控制位。IE1(TCON.3),外部中断),外部中断1中断请求标志位。中断请求标志位。TF0(TCON.5),定时),定时/计数器计数器T0溢出中断请求标志位。溢出中断请求标志位。TF1(TCON.7),定时),定时/计数器计数器T1溢出中断请求标志位。溢出中断请求标志位。2、SCON的中断标志的中断标志RI(SCON.0),串行口接收中断标志位。当允),串行口接收中断标志位。当允许串行口接收数据时,每接收完一个串行帧,由许串行口接收数据时,每接收完一个串行帧,由硬件置位硬件置位RI。注意,。注意,RI必须由软件清除。必须由软件清除

16、。TI(SCON.1),串行口发送中断标志位。当),串行口发送中断标志位。当CPU将一个发送数据写入串行口发送缓冲器时,将一个发送数据写入串行口发送缓冲器时,就启动了发送过程。每发送完一个串行帧,由硬就启动了发送过程。每发送完一个串行帧,由硬件置位件置位TI。CPU响应中断时,不能自动清除响应中断时,不能自动清除TI,TI必须由软件清除。必须由软件清除。一、中断允许控制一、中断允许控制 CPU对中断系统所有中断以及某个中断源的开放和屏对中断系统所有中断以及某个中断源的开放和屏蔽是由中断允许寄存器蔽是由中断允许寄存器IE控制的。控制的。p683.1.3 80C513.1.3 80C51中断的控制

17、中断的控制 EX0(IE.0),外部中断,外部中断0允许位;允许位;EX0=0关闭外部中断关闭外部中断ET0(IE.1),定时,定时/计数器计数器T0中断允许位;中断允许位;EX1(IE.2),外部中断,外部中断0允许位;允许位;ET1(IE.3),定时,定时/计数器计数器T1中断允许位;中断允许位;ES(IE.4),串行口中断允许位;,串行口中断允许位;EA(IE.7),CPU中断允许(总允许)位。中断允许(总允许)位。二、中断优先级控制二、中断优先级控制 80C51单片机有两个中断优先级,即可实现二级单片机有两个中断优先级,即可实现二级中断服务嵌套。每个中断源的中断优先级都是由中断中断服务

18、嵌套。每个中断源的中断优先级都是由中断优先级寄存器优先级寄存器IP中的相应位的状态来规定的中的相应位的状态来规定的。PX0(IP.0),外部中断),外部中断0优先级设定位;优先级设定位;=1定义为高优先级定义为高优先级PT0(IP.1),定时),定时/计数器计数器T0优先级设定位;优先级设定位;=0定义为低优先级定义为低优先级PX1(IP.2),外部中断),外部中断1优先级设定位;优先级设定位;PT1(IP.3),定时),定时/计数器计数器T1优先级设定位;优先级设定位;PS (IP.4),串行口优先级设定位;),串行口优先级设定位;PT2(IP.5),定时,定时/计数器计数器T2优先级设定位

19、。优先级设定位。同一优先级中的中断申请不止一个时,则有中断同一优先级中的中断申请不止一个时,则有中断优先权排队问题。同一优先级的中断优先权排队,优先权排队问题。同一优先级的中断优先权排队,由中断系统硬件确定的自然优先级形成,其排列如由中断系统硬件确定的自然优先级形成,其排列如下所示:下所示:80C51单片机的中断优先级有三条原则:单片机的中断优先级有三条原则:CPU同时接收到几个中断时,同时接收到几个中断时,首先响应优先级别最首先响应优先级别最高的中断请求高的中断请求。正在进行的中断过程正在进行的中断过程不能被新的同级或低优先级的不能被新的同级或低优先级的中断请求所中断中断请求所中断。正在进行

20、的低优先级中断服务,正在进行的低优先级中断服务,能被高优先级中断能被高优先级中断请求所中断请求所中断。为了实现上述后两条原则,为了实现上述后两条原则,中断系统内部设有两中断系统内部设有两个用户不能寻址的优先级状态触发器。个用户不能寻址的优先级状态触发器。其中一个置其中一个置1,表示正在响应高优先级的中断,它将阻断后来所,表示正在响应高优先级的中断,它将阻断后来所有的中断请求;另一个置有的中断请求;另一个置1,表示正在响应低优先级,表示正在响应低优先级中断,它将阻断后来所有的低优先级中断请求。中断,它将阻断后来所有的低优先级中断请求。3.2 80C51单片机中断处理过程单片机中断处理过程 中断响

21、应条件中断响应条件 中断源有中断请求;中断源有中断请求;此中断源的中断允许位为此中断源的中断允许位为1;CPU开中断(即开中断(即EA=1)。)。以上三条同时满足时,以上三条同时满足时,CPU才有可能响应才有可能响应中断中断。3.2.1 3.2.1 中断响中断响应应条件和条件和时间时间 3.3 80C51的定时的定时/计数器计数器 实现定时功能,实现定时功能,比较方便的办法是利用单片机比较方便的办法是利用单片机内部的定时内部的定时/计数器计数器。也可以采用下面三种方法:。也可以采用下面三种方法:软件定时软件定时:软件定时不占用硬件资源,但占用了:软件定时不占用硬件资源,但占用了CPU时间,降低

22、了时间,降低了CPU的利用率。的利用率。采用时基电路定时采用时基电路定时:例如采用:例如采用555电路,外接必要电路,外接必要的元器件(电阻和电容),即可构成硬件定时电路。的元器件(电阻和电容),即可构成硬件定时电路。但在硬件连接好以后,定时值与定时范围不能由软但在硬件连接好以后,定时值与定时范围不能由软件进行控制和修改,即不可编程。件进行控制和修改,即不可编程。采用可编程芯片定时采用可编程芯片定时:这种定时芯片的定时值及定:这种定时芯片的定时值及定时范围很容易用软件来确定和修改,此种芯片定时时范围很容易用软件来确定和修改,此种芯片定时功能强,使用灵活。在单片机的定时功能强,使用灵活。在单片机

23、的定时/计数器不够用计数器不够用时,可以考虑进行扩展。时,可以考虑进行扩展。3.3.1 3.3.1 定定时时/计计数器的数器的结结构和工作原理构和工作原理 一、定时一、定时/计数器的结构计数器的结构 定时定时/计数器的实质是加计数器的实质是加1计数器(计数器(16位),由高位),由高8位和低位和低8位两个寄存器组成。位两个寄存器组成。TMOD是定时是定时/计数器的工作方式寄存计数器的工作方式寄存器,确定工作方式和功能;器,确定工作方式和功能;TCON是控制寄存器,控制是控制寄存器,控制T0、T1的启动和停止及设置溢出标志的启动和停止及设置溢出标志。二、定时二、定时/计数器的工作原理计数器的工作

24、原理 加加1计数器计数器输入的计数脉冲有两个来源输入的计数脉冲有两个来源,一个是由一个是由系统的时钟振荡器输出脉冲经系统的时钟振荡器输出脉冲经12分频后送来;一个分频后送来;一个是是T0或或T1引脚输入的外部脉冲源。引脚输入的外部脉冲源。每来一个脉冲计每来一个脉冲计数器加数器加1,当加到计数器为全,当加到计数器为全1时,再输入一个脉冲时,再输入一个脉冲就使计数器回零,且计数器的溢出使就使计数器回零,且计数器的溢出使TCON中中TF0或或TF1置置1,向,向CPU发出中断请求(定时发出中断请求(定时/计数器中计数器中断允许时)。如果定时断允许时)。如果定时/计数器工作于定时模式,则计数器工作于定

25、时模式,则表示定时时间已到;如果工作于计数模式,则表示表示定时时间已到;如果工作于计数模式,则表示计数值已满。计数值已满。可见,由溢出时计数器的值减去计数初值才是加可见,由溢出时计数器的值减去计数初值才是加1计数器的计数值计数器的计数值。设置为定时器模式时设置为定时器模式时,加,加1计数器是对内部机器周期计数器是对内部机器周期计数(计数(1个机器周期等于个机器周期等于12个振荡周期,即计数频率个振荡周期,即计数频率为晶振频率的为晶振频率的1/12)。)。计数值计数值N乘以机器周期乘以机器周期Tcy就就是定时时间是定时时间t。设置为设置为计数器模式时计数器模式时,外部事件计数脉冲由,外部事件计数

26、脉冲由T0或或T1引脚输入到计数器。在每个机器周期的引脚输入到计数器。在每个机器周期的S5P2期间采期间采样样T0、T1引脚电平。当某周期采样到一高电平输入,引脚电平。当某周期采样到一高电平输入,而下一周期又采样到一低电平时,则计数器加而下一周期又采样到一低电平时,则计数器加1,更,更新的计数值在下一个机器周期的新的计数值在下一个机器周期的S3P1期间装入计数期间装入计数器。由于检测一个从器。由于检测一个从1到到0的下降沿需要的下降沿需要2个机器周期,个机器周期,因此要求被采样的电平至少要维持一个机器周期。当因此要求被采样的电平至少要维持一个机器周期。当晶振频率为晶振频率为12MHz时时,最高

27、计数频率不超过,最高计数频率不超过1/2MHz,即计数脉冲的周期要大于,即计数脉冲的周期要大于2 s。3.3.2 定时定时/计数器的控制计数器的控制 80C51单片机定时单片机定时/计数器的工作由两个特殊功计数器的工作由两个特殊功能寄存器控制。能寄存器控制。TMOD用于设置其工作方式;用于设置其工作方式;TCON用于控制其启动和中断申请。用于控制其启动和中断申请。一、工作方式寄存器一、工作方式寄存器TMOD 工作方式寄存器工作方式寄存器TMOD用于设置定时用于设置定时/计数器的计数器的工作方式,低四位用于工作方式,低四位用于T0,高四位用于,高四位用于T1。其格式。其格式如下:如下:GATE:

28、门控位。:门控位。GATE0时,只要用软件使时,只要用软件使TCON中的中的TR0或或TR1为为1,就可以启动定时,就可以启动定时/计数器工作;计数器工作;GATA1时,时,要用软件使要用软件使TR0或或TR1为为1,同时,同时外部中断引脚外部中断引脚也为高电平也为高电平时,才能启动定时时,才能启动定时/计数器工作。即此时定时器的启动多了计数器工作。即此时定时器的启动多了一条件。一条件。:定时定时/计数模式选择位。计数模式选择位。0为定时模式;为定时模式;=1为为计数模式。计数模式。M1M0:工作方式设置位。定时:工作方式设置位。定时/计数器有四种工作方式,由计数器有四种工作方式,由M1M0进

29、行设置。进行设置。二、控制寄存器二、控制寄存器TCON TCON的低的低4位用于控制外部中断位用于控制外部中断,已在前面介绍。已在前面介绍。TCON的高的高4位用于控制定时位用于控制定时/计数器的启动和中断申请。其格式如下:计数器的启动和中断申请。其格式如下:TF1(TCON.7):):T1溢出中断请求标志位。溢出中断请求标志位。T1计数溢出时由硬计数溢出时由硬件自动置件自动置TF1为为1。CPU响应中断后响应中断后TF1由硬件自动清由硬件自动清0。T1工作工作时,时,CPU可随时查询可随时查询TF1的状态。所以,的状态。所以,TF1可用作查询测试的可用作查询测试的标志。标志。TF1也可以用软

30、件置也可以用软件置1或清或清0,同硬件置,同硬件置1或清或清0的效果一样。的效果一样。TR1(TCON.6):):T1运行控制位。运行控制位。TR1置置1时,时,T1开始工作;开始工作;TR1置置0时,时,T1停止工作。停止工作。TR1由软件置由软件置1或清或清0。所以,用软件。所以,用软件可控制定时可控制定时/计数器的启动与停止。计数器的启动与停止。TF0(TCON.5):):T0溢出中断请求标志位,其功能与溢出中断请求标志位,其功能与TF1类同。类同。TR0(TCON.4):):T0运行控制位,其功能与运行控制位,其功能与TR1类同。类同。3.3.3 定时定时/计数器的工作方式计数器的工作

31、方式 一、方式一、方式0 方式方式0为为13位计数位计数,由,由TL0的低的低5位(高位(高3位未用)和位未用)和TH0的的8位组成。位组成。TL0的低的低5位溢出时向位溢出时向TH0进位,进位,TH0溢出时,溢出时,置位置位TCON中的中的TF0标志,向标志,向CPU发出中断请求。发出中断请求。P71 PPt37定时器模式时定时器模式时有有:Nt/Tcy 计数初值计算的公式为:计数初值计算的公式为:定时器的初值还可以采用计数个数直接取补法获得定时器的初值还可以采用计数个数直接取补法获得。计数模式时,计数模式时,计数脉冲是计数脉冲是T0引脚上的外部脉冲。引脚上的外部脉冲。门控位门控位GATE具

32、有特殊的作用。当具有特殊的作用。当GATE=0时,经反相后使时,经反相后使或门输出为或门输出为1,此时仅由,此时仅由TR0控制与门的开启,与门输出控制与门的开启,与门输出1时,控制开关接通,计数开始;时,控制开关接通,计数开始;当当GATE=1时时,由外中断引,由外中断引脚信号控制或门的输出,此时控制脚信号控制或门的输出,此时控制与门的开启由外中断引脚与门的开启由外中断引脚信号和信号和TR0共同控制共同控制。当。当TR0=1时,外中断引脚信号引脚的时,外中断引脚信号引脚的高电平启动计数高电平启动计数,外中断引脚信号引脚的,外中断引脚信号引脚的低电平停止计数低电平停止计数。这种方式常用来测量这种

33、方式常用来测量外中断引脚上正脉冲的宽度外中断引脚上正脉冲的宽度。二、方式二、方式1 方式方式1的计数位数是的计数位数是16位,由位,由TL0作为低作为低8位、位、TH0作为高作为高8位,组成了位,组成了16位加位加1计数器计数器。计数个数与计数初值的关系为:计数个数与计数初值的关系为:三、方式三、方式2 方式方式2为自动重装初值的为自动重装初值的8位计数方式。位计数方式。工作方式2特别适合于用作较精确的脉冲信号发生器。计数个数与计数初值的关系为计数个数与计数初值的关系为:四、方式四、方式3 方式方式3只适用于定时只适用于定时/计数器计数器T0,定时器定时器T1处于方式处于方式3时相当时相当于于

34、TR1=0,停止计数。,停止计数。工作方式工作方式3将将T0分成为两个独立的分成为两个独立的8位计数器位计数器TL0和和TH0。3.3.4 定时定时/计数器应用举例计数器应用举例 中断服务程序的写法:中断服务程序的写法:格式:格式:void 函数名()函数名()interrupt 中断号中断号 例子:例子:void T1_time()interrupt 3 TH1=(65536-1000)/256;TL1=(65536-1000)%256;初始化程序应完成如下工作:初始化程序应完成如下工作:对对TMOD赋值,以确定赋值,以确定T0和和T1的工作方式。的工作方式。计算初值计算初值,并将其写入并将

35、其写入TH0、TL0或或TH1、TL1。中断方式时,则对中断方式时,则对IE赋值,开放中断。赋值,开放中断。使使TR0或或TR1置位,启动定时置位,启动定时/计数器定时或计数计数器定时或计数。例例.使得第一个发光二极管以使得第一个发光二极管以1s亮灭闪烁。亮灭闪烁。#include#include#define uint unsigned int#define uchar unsigned charsbit led1=P10;uchar num;void main()TMOD=0 x01;TH0=(65536-50000)/256;TL0=(65536-50000)%256;EA=1;ET0=

36、1;TR0=1;while(1);void timer0()interrupt 1 TH0=(65536-50000)/256;TL0=(65536-50000)%256;num+;if(num=20)num=0;led1=led1;例例.使得第一个发光二极管以使得第一个发光二极管以1s亮灭闪烁。亮灭闪烁。#include#include#define uint unsigned int#define uchar unsigned charsbit led1=P10;uchar num;void main()TMOD=0 x01;/定时器0方式1TH0=(65536-50000)/256;TL

37、0=(65536-50000)%256;EA=1;ET0=1;TR0=1;while(1);void timer0()interrupt 1 TH0=(65536-50000)/256;TL0=(65536-50000)%256;num+;if(num=20)num=0;led1=led1;/p75中断服务程序中少写处理语句 例例 利用定时利用定时/计数器计数器T1的方式的方式1,产生,产生10ms的定时,的定时,并使并使P1.0引脚上输出周期为引脚上输出周期为20ms的方波,采用中的方波,采用中断方式,设系统时钟频率为断方式,设系统时钟频率为12 MHz。p70解:解:1、计算计数初值、计算

38、计数初值X:由于晶振为由于晶振为12 MHz,所以机器周期,所以机器周期Tcy为为1 s。所以:所以:Nt/Tcy 10000/110000X655361000055536D8F0H即应将即应将D8H送入送入TH0中,中,F0H送入送入TL0中中 2、求、求T1的方式控制字的方式控制字TMOD:M1M0=01,GATE=0,C/T=0,可取方式控制,可取方式控制字为字为10H;#includesbit led1=P10;void main()TMOD=0 x10;/p70TH0=(65536-10000)/256;TL0=(65536-10000)%256;EA=1;ET0=1;TR0=1;w

39、hile(1)led1=led1;void timer1()interrupt 3/p67 TH0=(65536-10000)/256;TL0=(65536-10000)%256;例例 用定时器用定时器0的方式的方式1实现二极管实现二极管200ms间隔闪烁间隔闪烁,用定时器,用定时器1的方式的方式1实现数码管实现数码管59s循环计时。循环计时。#include#define uint unsigned int#define uchar unsigned char sbit dula=P26;sbit wela=P27;sbit led1=P10;uchar num,num1;num2,shi,

40、ge;uchar code table=0 x3f,0 x06,0 x5b,0 x4f,0 x66,0 x6d,0 x7d,0 x07,0 x7f,0 x6f,0 x77,0 x7c,0 x39,0 x5e,0 x79,0 x71;void delayms(uint);void display(uchar,uchar);void main()TMOD=0X11;/设置定时器0和1的工作方式为1TH0=(65536-50000)/256;TL0=(65536-50000)%256;TH1=(65536-50000)/256;TL1=(65536-50000)%256;EA=1;/开总中断ET0=

41、1;/开定时器0中断ET1=1;TR0=1;/启动定时器0TR1=1;while(1)/数码管动态扫描循环display(shi,ge);void display(uchar shi,uchar ge)dula=1;P0=tableshi;dula=0;P0=0 xff;wela=1;P0=0 xfe;wela=0;delayms(5);dula=1;P0=tablege;dula=0;P0=0 xff;wela=1;P0=0 xfd;wela=0;delayms(5);void delayms(uint xms)uint i,j;for(j=xms;i0;i-)for(j=110;j0;j-

42、);void time0()interrupt 1TH0=(65536-50000)/256;TL0=(65536-50000)%256;num1+;if(num1=4)num1=0;led1=led1;void time1()interrupt 3TH1=(65536-50000)/256;TL1=(65536-50000)%256;num2+;if(num2=20)num2=0;num+;if(num=60)num=0;shi=num/10;ge=num%10;用定时器设计一个50msLED闪烁实验硬件电路图查询法程序清单#include void main()TMOD=0X1;TH0=0

43、X4C;TL0=0X0;TR0=1;while(1)if(TF0=1)/用while语句怎么实现?P0=P0;TF0=0;定时器中断50ms取反P0口#include void timer0_isr(void)interrupt 1 using 0P0=P0;void main()TMOD=0X1;TH0=0X4C;TL0=0X0;EA=1;ET0=1;TR0=1;while(1);1、利用定时、利用定时/计数器计数器T0从从P1.0输出周期为输出周期为1s的方波,的方波,让发光二极管以让发光二极管以1HZ闪烁,设晶振频率为闪烁,设晶振频率为12MHz。2、利用定时、利用定时/计数器计数器T1

44、产生定时时钟产生定时时钟,由由P1口控制口控制8个发光二极管个发光二极管,使使8个指示灯依次一个一个闪动,闪动个指示灯依次一个一个闪动,闪动频率为频率为10次次/秒秒(8个灯依次亮一遍为一个周期个灯依次亮一遍为一个周期),循环。,循环。3、同时用两个定时器控制蜂鸣器发声,定时器、同时用两个定时器控制蜂鸣器发声,定时器0控控制频率,定时器制频率,定时器1控制同个频率持续的时间,间隔控制同个频率持续的时间,间隔300ms依次输出依次输出1,10,50,100,200,400,800,1k(hz)的方波。)的方波。4、用定时器以间隔、用定时器以间隔500MS在在6位数码管上依次显示位数码管上依次显示0、1、2、3.C、D、E、F,重复。,重复。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 生活常识

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

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com