单片机论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 6103|回复: 36
收起左侧

51单片机定时器及中断图解(用心整理,一看就会)

  [复制链接]
wyhmtt 发表于 2018-1-20 11:35 | 显示全部楼层 |阅读模式
本人用心整理的51单片机定时器及中断图解,希望大家喜欢,如果有用可以收藏一下本帖
0.png

51单片机定时器与中断示意图(汪永海整理)部分细节展示(完整的pdf清晰版文档可在本帖附件下载):
0.png 0.png
定时器工作流程(LED闪烁)

1、TMOD=Ox01设置T0为工作模式1
2、TH0=0xdc、 Tl0=0x00TO赋初值,设置10毫秒
3、TR0=1打开定时器0
4、while(1)循环体
5、if(TF0==1)判断T0是否溢出
6、TF=0将中断标志位清零(软件清零)
7、TH0=0xdc、 Tl0=0x00定时器溢出后自动从零开始,这里重新附初值
8、cnt++计数变量自加1
9、if(cnt>=100)判断溢出是否达到100次
10、cnt=0计数变量清零
11、LED=~LED

定时值存储寄存器

(初始10ms)
1、时钟周期=1秒/晶振频率
2、机器周期=12*时钟周期
3、1秒=时钟周期*晶振频率=(机器周期/12)*频率=(110592/12)机器周期=921600机器周期
4、10ms=9216机器周期
5、也就是说设定10ms需要经过9216个机器周期

中断寄存器总开关EA=1打开及定时器0中断分开关EX=1打开的时候,一旦检测到TF0=1也就是定时器0溢出,程序直接执行中断函数

中断工作流程(LED闪烁)

1、TMOD=0x01 //设置T0为工作模式1
2、TH0=0xdc、 Tl0=0x00 //TO赋初值,设置10毫秒
3、TR0=1 //打开定时器0
4、EA=1 打开总中断
5、ET0=1 //打开定时器0中断分开关
6、while(1) 处理中断发生后的循环体
7、void name() interrupt 1注意格式和关键字,1是定时器T0中断优先级控制位
8、TH0=0xdc、 Tl0=0x00 //因定时器溢出后自动清零,要想继续按照设置的计时,需要重新附初值
9、cnt++ 计数变量自加1
10、if(cnt>=100)判断中断次数是否达到100次
11、cnt=0 计数变量清零
12、LED=~LED(按位取反)

完整的pdf格式文档51黑下载地址(清晰版):
51单片机定时器与中断示意图(汪永海整理).pdf (92.64 KB, 下载次数: 263)

评分

参与人数 5黑币 +116 收起 理由
lizzz + 5 赞一个!
lzDestiny + 5 赞一个!
stu + 4 共享资料的黑币奖励!
dsf232 + 2 很给力!
admin + 100 共享资料的黑币奖励!

查看全部评分

回复

使用道具 举报

admin 发表于 2018-1-20 22:13 | 显示全部楼层
好资料,特别是对初学者有用,51黑有你更精彩!!!
回复

使用道具 举报

 楼主| wyhmtt 发表于 2018-1-28 12:55 | 显示全部楼层
admin 发表于 2018-1-20 22:13
好资料,特别是对初学者有用,51黑有你更精彩!!!

谢谢评价,花费我一晚上时间得到您的肯定也值了,的确认真看对定时中断就比较有只管的了解。我也是初学会加油的。
回复

使用道具 举报

aqb3322 发表于 2018-1-28 19:31 | 显示全部楼层
感谢制作。
回复

使用道具 举报

都市郎 发表于 2018-2-5 22:24 来自手机 | 显示全部楼层
非常感谢,小白收了
回复

使用道具 举报

franklovey 发表于 2018-2-7 19:47 来自手机 | 显示全部楼层
漂亮,谢谢分享
回复

使用道具 举报

yyfpy 发表于 2018-2-8 10:13 | 显示全部楼层
谢谢分享!
回复

使用道具 举报

lvyueqiang 发表于 2018-7-5 11:58 | 显示全部楼层
感谢分享,不过拿不了资料哦。
回复

使用道具 举报

1113634577 发表于 2018-7-14 18:09 | 显示全部楼层
资料很好
回复

使用道具 举报

lzhiaohiua 发表于 2018-8-1 14:04 | 显示全部楼层

感谢楼主分享资料
回复

使用道具 举报

zyldlzh 发表于 2018-8-1 17:59 来自手机 | 显示全部楼层
来论坛很久从没弄明白的我也来看啦
回复

使用道具 举报

wdliming 发表于 2018-8-4 17:00 | 显示全部楼层
这个资料要火啊
回复

使用道具 举报

gujiaf 发表于 2018-8-8 21:19 | 显示全部楼层
这资料很不错。
回复

使用道具 举报

顶级小白 发表于 2018-8-23 16:28 | 显示全部楼层
好资料,特别是对初学者有用,51黑有你更精彩!!!
回复

使用道具 举报

x351715694 发表于 2018-8-24 09:08 | 显示全部楼层
看样子应该是很不错的资料
回复

使用道具 举报

FGH116 发表于 2018-8-25 16:51 | 显示全部楼层
刚下了资料,多谢分享。
回复

使用道具 举报

SKU 发表于 2018-8-25 21:19 | 显示全部楼层
感谢楼主分享资料
回复

使用道具 举报

a704625084 发表于 2018-9-14 11:08 | 显示全部楼层
好资料,谢谢分享
回复

使用道具 举报

todaljy 发表于 2018-9-14 19:48 | 显示全部楼层
不错,经典
回复

使用道具 举报

spwlm 发表于 2018-9-14 21:29 | 显示全部楼层
谢谢,好资料。
回复

使用道具 举报

zhr0924 发表于 2018-10-12 10:37 | 显示全部楼层
看到楼主的帖子,想下载,先注册吧
回复

使用道具 举报

zhaozhenrong 发表于 2018-10-13 12:18 | 显示全部楼层
费心啦,有心人,谢谢!
回复

使用道具 举报

583703056A 发表于 2018-10-13 18:16 来自手机 | 显示全部楼层
好东西!
回复

使用道具 举报

xiong731 发表于 2018-10-14 19:49 | 显示全部楼层

感谢楼主分享资料
回复

使用道具 举报

12344567 发表于 2018-12-2 14:02 | 显示全部楼层
牛逼了收藏
回复

使用道具 举报

爱儿 发表于 2018-12-7 18:17 | 显示全部楼层
感谢分享,对初学者很有帮助!
回复

使用道具 举报

lon7085 发表于 2018-12-7 20:06 | 显示全部楼层
感谢楼主的分享
回复

使用道具 举报

gzhoney 发表于 2018-12-7 22:31 | 显示全部楼层
好资料,收藏
回复

使用道具 举报

68775899 发表于 2018-12-8 14:36 | 显示全部楼层
这样的资料值得大家下载学习
回复

使用道具 举报

guangxin 发表于 2018-12-12 10:42 | 显示全部楼层
很不错的资料,感谢楼主
回复

使用道具 举报

lzDestiny 发表于 2018-12-12 19:26 | 显示全部楼层
定时器资料,看上去不错的样子
回复

使用道具 举报

kisszg 发表于 2019-3-21 21:24 | 显示全部楼层
好资料我也收藏了。谢谢分享
回复

使用道具 举报

Wuyi无疑 发表于 2019-3-22 08:08 | 显示全部楼层
支持
回复

使用道具 举报

lzh0411 发表于 2019-3-23 19:12 | 显示全部楼层
很好的帖子
回复

使用道具 举报

今晚月色真美20 发表于 2019-5-13 21:20 | 显示全部楼层
非常感谢
回复

使用道具 举报

虾兵0蟹将 发表于 2019-5-15 03:12 来自手机 | 显示全部楼层
详细,一定好好学习一下
回复

使用道具 举报

中庸2019 发表于 2019-5-16 13:15 | 显示全部楼层
“1秒=时钟周期*晶振频率=(机器周期/12)*频率=(110592/12)机器周期=921600机器周期”,这个计算没看懂?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|单片机论坛 |51黑电子论坛5群 联系QQ:125739409;技术交流QQ群174280738

Powered by 单片机教程网

快速回复 返回顶部 返回列表