中断 定时器函数的设计使用1

中断 定时器函数的设计使用1

ID:5969510

大小:37.50 KB

页数:4页

时间:2017-12-30

中断 定时器函数的设计使用1_第1页
中断 定时器函数的设计使用1_第2页
中断 定时器函数的设计使用1_第3页
中断 定时器函数的设计使用1_第4页
资源描述:

《中断 定时器函数的设计使用1》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第六课中断、定时器函数的设计使用1教学内容:中断、定时器函数的设计使用教学重点:中断、定时器函数的设计教学难点:中断、定时器函数的使用教学目的:1、掌握中断、定时器函数的设计2、掌握中断、定时器函数的使用一、中断和定时器使用所必须基础知识1、中断1)中断的概念在程序执行的过程中插入另外一段程序的执行就称为中断2)MCS-51单片机的中断系统结构(中断示意图)3)中断允许控制寄存器的介绍(IE)4)中断优先级5)中断函数的定义例:void函数名()interrupt0~4Voidtime0()interrupt1{D1=0;}6)中断函数和子函数的区别7)中断响应的条件2

2、、定时计数器l两个16位的定时计数器,T0,T1l四种工作方式l初始化步骤:1)对TMOD赋值,确定T0和T1的工作方式2)计算初值,并将其写入TH0,TL0,TH1,TL13)中断方式时,对IE赋值,开放中断4)使TR0,TR1置1,启动T0,T1例:MOVTMOD,#01HMOVTH0,#0B0HMOVTL0,#3CHSETBEASETBET0SETBTR0二、实战练习例1:利用定时计数器让发光二极管以1HZ闪烁。#include//52单片机头文件#include//包含有左右循环移位子函数的库#defineuintunsi

3、gnedint//宏定义#defineucharunsignedchar//宏定义sbitP1_0=P1^0;uchartt;voidmain()//主函数{TMOD=0x01;//设置定时器0为工作方式1TH0=(65536-50000)/256;TL0=(65536-50000)%256;EA=1;//开总中断ET0=1;//开定时器0中断TR0=1;//启动定时器0while(1);//等待中断产生}voidtimer0()interrupt1{TH0=(65536-50000)/256;TL0=(65536-50000)%256;tt++;if(tt==20){

4、tt=0;P1_0=~P1_0;}}例2:利用定时/计数器T1产生定时时钟由P1口控制8个发光二极管,使8个指示灯依次一个一个闪动,闪动频率为10次/秒(8个灯依次亮一遍为一个周期),循环。设晶振频率为12MHz。#include//52单片机头文件#include//包含有左右循环移位子函数的库#defineuintunsignedint//宏定义#defineucharunsignedchar//宏定义sbitP1_0=P1^0;uchartt,a;voidmain()//主函数{TMOD=0x01;//设置定时器0为工作方式

5、1TH0=(65536-50000)/256;TL0=(65536-50000)%256;EA=1;//开总中断ET0=1;//开定时器0中断TR0=1;//启动定时器0a=0xfe;while(1);//等待中断产生}voidtimer0()interrupt1{TH0=(65536-50000)/256;TL0=(65536-50000)%256;tt++;if(tt==2){tt=0;P1=a;a=_crol_(a,1);}}三、小结:通过本次的学习要掌握中断、定时器函数的设计。课后督促大家多花时间练习。四、作业:用数码管显示一个电子时钟。

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。