单片机应用技术课件.pptx

上传人(卖家):ziliao2023 文档编号:6899466 上传时间:2023-08-19 格式:PPTX 页数:50 大小:1.90MB
下载 相关 举报
单片机应用技术课件.pptx_第1页
第1页 / 共50页
单片机应用技术课件.pptx_第2页
第2页 / 共50页
单片机应用技术课件.pptx_第3页
第3页 / 共50页
单片机应用技术课件.pptx_第4页
第4页 / 共50页
单片机应用技术课件.pptx_第5页
第5页 / 共50页
点击查看更多>>
资源描述

1、理论知识:1、单片机定时器功能2、单片机中断系统的组成3、定时器和中断程序的设计方法4、C语言的函数定义与调用技能:单片机中断和定时器程序的特殊调试技巧1、任务目的 通过单片机控制时间间隔为1s的流水灯系统的制作,了解单片机定时器的结构及定时器的工作方式设定、初始值设置等基本技能。2、任务要求 要求8个发光二极管依次顺序点亮,时间间隔为1s。用T1的工作方式1编制1s延时程序,实现流水灯的控制。3、电路及器件 4、程序设计/程序:ex4_1.c/功能:间隔显示时间为1秒的流水灯程序#include REG51.H/包含头文件REG51.H,定义了MCS-51单片机的特殊功能寄存器/函数名:de

2、lay1s/函数功能:用T1工作在方式1下的1秒延时函数,采用查询方式实现/形式参数:无/返回值:无void delay1s()unsigned char i;for(i=0;i0 x14;i+)/设置20次循环次数 TH1=0 x3c;/设置定时器初值为3CB0H TL1=0 xb0;TR1=1;/启动T1 while(!TF1);/查询计数是否溢出,即定时50ms时间到,TF1=1 TF1=0;/50ms定时时间到,将T1溢出标志位TF1清零 void main()/主函数 unsigned char i,w;TMOD=0 x10;/设置T1为工作方式1 while(1)w=0 x01;/

3、显示码初值为01H for(i=0;i8;i+)P1=w;/w取反后送P1口,点亮相应LED灯 w=1;/点亮灯的位置移动 delay1s();/调用1秒延时函数 5、任务小结 任务5采用软件延时,对循环体内指令机器周期数进行计数。本任务采用定时器定时,用加法计数器直接对机器周期进行计数。4.1 定时/计数器4.1.1 定时/计数器的结构1、定时/计数器的组成(1)8051定时/计数器由T0、T1、方式寄存器TMOD和控制寄存器TCOM四大部分组成。(2)定时/计数器的工作过程:设置定时/计数器的工作方式。设置计数初值。启动定时/计数器。计数溢出。2、定时/计数器工作方式寄存器TMOD TMO

4、D的低4位为T0的方式字段,高4位为T1的方式字段,它们的含义完全相同。(1)M1和M0:方式选择位。(2):功能选择位。=0时,定时器工作方式;=1时,计数器工作方式。(3)GATE:门控位。GATE=0,定时器/计数器由软件控制位TR0或TR1控制启停;GATE=1,由外部中断引脚和TRi位共同控制启停。C/TC/TC/TC/T3、定时/计数器控制寄存器TCON4.1.2 定时/计数器的工作方式1、工作方式0方式0为13位定时/计数器工作方式,由TL的低5位和TH的8位组成。定时:定时时间:计数初值:计数:计数初值:13osc122taf13osc12 212tfa 132ax例:用T0、

5、工作方式0产生周期为100ms的方波,晶振频率为12MHz。2、工作方式1方式1为16位定时/计数器工作方式,由TL的8位和TH的8位组成。定时:定时时间:计数初值:计数:计数初值:16osc122taf16osc12 212tfa 162ax例:用T1、工作方式1产生周期为160ms的方波,晶振频率为6MHz。3、工作方式2方式2为自动恢复计数初值的8位定时/计数器工作方式,THi:保存计数初值不变;TLi:作计数器。定时:定时时间:计数初值:计数:计数初值:8osc122taf8osc12 212tfa 82ax例:用T1、工作方式2计数,每记满5次,将P1.0取反。4、工作方式34.2

6、C语言的函数 C语言都是由一个主函数main()和若干个子函数构成,有且只有一个主函数,程序由主函数开始执行,主函数根据需要来调用其他函数,其他函数可以有多个。4.2.1 函数分类和定义 从用户使用角度来看,函数有两种类型:标准函数和用户自定义函数。1、标准函数2、用户自定义函数 用户自定义函数必须先定义后调用,函数定义的一般形式为:函数类型 函数名(形式参数表);形式参数说明;局部变量定义;函数体语句;例:/函数名:delay/函数功能:实现软件延时/形式参数:unsigned char i;/i控制空循环的外循环次数,共循环i*255次/返回值:无void delay(unsigned c

7、har i)/延时函数,无符号字符型变量i为形式参数 unsigned char j,k;/定义无符号字符型变量j和k for(k=0;ki;k+)/双重for循环语句实现软件延时 for(j=0;j255;j+);4.2.2 函数调用 函数调用的一般格式为:函数名(实际参数列表);1、任务目的 通过对采用1个按键输入的可控霓虹灯系统的制作,了解单片机中断系统的结构及与中断有关的寄存器、中断的开放与禁止,以及中断程序的编写技巧。2、任务要求 要求正常情况下8个霓虹灯依次顺序点亮,循环显示,时间间隔为1s。按键按下后8个霓虹灯同时亮灭一次,时间间隔为0.5s。用T1、工作方式1编制延时程序,按键

8、动作采用外部中断INT0实现。3、电路设计 一个按键与MCS-51系列单片机的外部中断INT0的中断输入引脚连接,当按键按下时,在 引脚产生一个下降沿,向CPU申请中断。INT04、程序设计可控霓虹灯源程序:/程序:ex4_3.c/功能:可控信号灯程序#include/函数名:delay0_5s/函数功能:用T0的方式1编制0.5秒延时程序,假定系统采用12MHz晶振,定时器1、工作方式1定时50ms,再循环10次即可定时到0.5秒/形式参数:无/返回值:无void delay0_5s()unsigned char i;for(i=0;i0 x0a;i+)/设置10次循环次数 TH0=0 x3

9、c;/设置定时器初值 TL0=0 xb0;TR0=1;/启动T0 while(!TF0);/查询计数是否溢出,即定时50ms时间到,TF0=0 TF0=0;/50ms定时时间到,将定时器溢出标志位TF0清零 /函数名:delay_t/函数功能:实现0.5秒128秒延时/形式参数:unsigned char t;/延时时间为0.5秒t/返回值:无void delay_t(unsigned char t)unsigned char i;for(i=0;it;i+)delay0_5s();/函数名:int_0/函数功能:外部中断0中断函数,当CPU响应外部中断0的中断请求时,自动执行该函数,实现八个

10、信号灯闪烁/形式参数:无/返回值:无void int_0()interrupt 0/外部中断0的中断号为0 P1=0 x00;/熄灭八个信号灯 delay0_5s();/调用0.5秒延时函数 P1=0 xff;/点亮八个信号灯 delay0_5s();/调用0.5秒延时函数 void main()/主函数 unsigned char i,w;EA=1;/打开中断总允许位 EX0=1;/打开外部中断0允许位 IT0=1;/设置外部中断为边沿(下降沿)触发方式 TMOD=0 x01;/设置T0为工作方式1 while(1)w=0 x01;/显示码初值为01H for(i=0;i8;i+)P1=w;

11、/w取反后送P1口,点亮相应LED灯 w=1;/点亮灯的位置移动 delay_t(2);/调用延时函数delay_t(),实际参数为2,延时1秒 5、任务小结 在本任务中,在正常情况下运行主函数main(),8个霓虹灯以1s时间间隔依次顺序点亮,当按键按下后,当前显示模式被中断,转去执行中断函数int_0(),使显示模式发生变化。中断断是单片机系统中的一个重要资源,可以大大提高单片机的工作效率。4.3 中断系统4.3.1 什么是中断1、中断及相关概念 中断是指通过硬件来改变CPU的运行方向。计算机在执行程序的过程中,外部设备向CPU发出中断请求信号,要求CPU暂时中断当前程序的执行而转去执行相

12、应的处理程序,待处理程序执行完毕后,再继续执行原来被中断的程序。这种程序在执行过程中由于外界的原因而被中间打断的情况称为“中断”。中断相关概念:(1)中断服务程序:CPU响应中断后,转去执行相应的处理程序,该处理程序通常称为中断服务程序。(2)主程序:原来正常运行的程序称为主程序。(3)断点:主程序被断开的位置(或地址)称为断点。(4)中断源:引起中断的原因,或能发出中断申请的来源,称为中断源。(5)中断请求:中断源要求服务的请求称为中断请求(或中断申请)。2、中断的特点(1)同步工作(2)异常处理(3)实时处理4.3.2 MCS-51中断系统的结构4.3.3 中断有关寄存器 1、中断源2、中

13、断标志3、中断的开发和禁止 MCS-51系列单片机的5个中断源都是可屏蔽中断,中断系统内部设有一个专用寄存器IE,用于控制CPU对各中断源的开放或屏蔽。IE寄存器格式为:4、中断的优先级别(1)中断优先级寄存器IP,用于锁存各中断源优先级控制位。IP中的每一位均可由软件来置1或清0,1表示高优先级,0表示低优先级。(2)自然优先级排列如下:4.3.4 中断处理过程 中断处理过程包括中断响应和中断处理两个阶段。1、中断响应(1)中断响应是指CPU对中断源中断请求的响应。(2)CPU响应中断的条件是:有中断源发出中断请求;中断总允许位EA 置 1;申请中断的中断源允许位置1。2、中断响应过程(1)

14、中断响应过程就是自动调用并执行中断函数的过程。(2)常用的中断函数的定义形式为:void 函数名()interrupt n其中n为中断类型号。8051控制器所提供的5个中断源所对应的中断类型号和中断服务程序入口地址为:中断源中断源 n 入口地址入口地址外部中断0 0 0003H定时/计数器0 1 000BH外部中断1 2 0013H定时/计数器1 3 001BH串行口 4 0023H49写在最后写在最后成功的基础在于好的学习习惯成功的基础在于好的学习习惯The foundation of success lies in good habits 结束语当你尽了自己的最大努力时,失败也是伟大的,所以不要放弃,坚持就是正确的。When You Do Your Best,Failure Is Great,So DonT Give Up,Stick To The End演讲人:XXXXXX 时 间:XX年XX月XX日

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(单片机应用技术课件.pptx)为本站会员(ziliao2023)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|