4559|3

419

帖子

1

TA的资源

一粒金砂(中级)

楼主
 

pic18 starterkit 学习0x06——定时器Timer0(任务调度) [复制链接]

本帖最后由 mzb2012 于 2016-11-25 23:38 编辑

一、简介
定时器作为单片机内一个必不可少的外设,有着十分巨大的作用。可以利用它实现精确延时处理,来完成任务调度和事件分时处理以及其它更复杂的功能。
二、硬件连接

三、寄存器


(1)TMR0L和TMR0H
计数寄存器的低八位和高8位,用于存储当前计数值。在8位模式下TMR0从FFh溢出到00h,或16位模式下TMR0从FFFFh溢出到0000h时,将产生TMR0中断。
注意:每次中断后需要重新填初值
(2)INTCON
包含各个中断允许位、优先级位和标志位。
其中,TMR0IF中断标志在每次中断后需要清零。
(3)T0CON
控制Timer0定时器模块所有方面,包括分频比的选择,时钟源等。
四、代码
(1)定时器初始化

初值计算

计算方法
FOSC= 11.0592Mhz
计一个数的时间:
t = 分频比*4/FOSC,T0PS选择64分频比
计5ms计数值:
N = 0.005/t=5*11059200/1000/256 =216
定时器初值:
M = 0xFFFF-N
(2)中断初始化

使能外设、全局和Timer0中断
(3)应用函数
计数并置标志函数,在中断调用

查询标志位并执行函数,在主循环调用

任务函数,分为10ms任务、100ms任务和1s任务






五、应用
调度3个任务,三个按照不同的速度闪烁,分别是10ms、100ms和1s。

示波器测量结果如图:






六、附件
04 - 定时器.rar (35.38 KB, 下载次数: 63)

最新回复

不错,谢谢!  详情 回复 发表于 2017-9-28 22:37
点赞 关注(3)
 

回复
举报

419

帖子

7

TA的资源

纯净的硅(初级)

沙发
 
不错,学习了,楼主用什么下载程序,pickit3吗,用MPLAB哪个版本的开发环境

点评

kit3下载,MPLAB版本都可以,目前8.92  详情 回复 发表于 2016-11-26 22:18
 
 
 

回复

419

帖子

1

TA的资源

一粒金砂(中级)

板凳
 
lansebuluo 发表于 2016-11-26 16:02
不错,学习了,楼主用什么下载程序,pickit3吗,用MPLAB哪个版本的开发环境

kit3下载,MPLAB版本都可以,目前8.92
 
 
 

回复

2

帖子

0

TA的资源

一粒金砂(初级)

4
 
不错,谢谢!
 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/9 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表