6059|21

48

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

c51 定时器问题 急 [复制链接]

那位能帮忙解释一下,定时器初值是怎么计算的,小弟我是刚学单片机开发。

最新回复

不明LZ在说什么  详情 回复 发表于 2008-5-1 04:36
点赞 关注

回复
举报

88

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
自己顶一下。路过的朋友帮忙说一下
 
 

回复

74

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
按溢出率算的

定时器有8位,16位的分别,无论哪个都是溢出时产生一个定时中断

51是对时钟12分频工作的,这12个时钟内,有一个时钟就是对定时器进行操作的,有一个是检查串口的,有一个是检测中断的(对不对的俺也不知道,好像是这样的)

所以呢,每12个时钟周期定时器
 
 
 

回复

76

帖子

0

TA的资源

一粒金砂(初级)

4
 
每12个时钟周期定时器的数值+1,当TH,TL由全1变成全0时,置位TF,产生中断,拿12M的时钟来说,12分频之后变成1兆。若要产生1MS的定时器,则需要每次执行1000次定时器+1,所以其值应该65536-1000左右(不对的话调整一下)。这64536就是初值,送到初始值中。
 
 
 

回复

74

帖子

0

TA的资源

一粒金砂(初级)

5
 
单片机速度 = 》 指令运行时间

运行时间 * 定时器溢出数

定时器总长 - 初载入数

LZ看看这三个式子,再看一下定时器原理,应该很快就出来了吧?
 
 
 

回复

57

帖子

0

TA的资源

一粒金砂(初级)

6
 
这里太没有人气了,是我们不够活跃,还是搞这行的人太少了呢?
我狂顶!
 
 
 

回复

80

帖子

0

TA的资源

一粒金砂(初级)

7
 
这一版块,太没人气了,是不是大家都成大侠了

如果成大侠了,也常回家看看嘛,家里太冷清了

据说努力顶帖也是一种美德,但我只想大家常回家看看

毕竟每天都有新手需要帮忙,而我能帮的只能是把帖子顶起来
 
 
 

回复

70

帖子

0

TA的资源

一粒金砂(初级)

8
 
晶振频率的1/12是机器周期,一个机器周期定时器+1,直到定时数满引起回0溢出,产生中断
例如用定时器0的方式1,初值是#0ffffh,那么经过一个机器周期定时器就会溢出
若初值是#0000h,那么经#10000h个机器周期定时器才会溢出
 
 
 

回复

82

帖子

0

TA的资源

一粒金砂(初级)

9
 

定时初值= 2^n - t/(12M/Fosc)
其中n由工作方式所确定,t就是你说需要定时的时间(ms级的哈)
 
 
 

回复

62

帖子

0

TA的资源

一粒金砂(初级)

10
 
定时初值=2^n-t/(12M/Fosc)
其中n由定时器工作方式所确定(13,16,8)
t是你所需要定时的时间(ms)
Fosc为晶振
 
 
 

回复

65

帖子

0

TA的资源

一粒金砂(初级)

11
 
计数器不停的加1,溢出时产生中断。。。
 
 
 

回复

76

帖子

0

TA的资源

一粒金砂(初级)

12
 
你先确定自己选择的通道和工作方式,不同的方式下工作是不同的,比如方式2,就是分频的工作方式,进行了N次分频,这时候如果事12M 的时钟晶振,就对此进行了N次分频,分完了之后,可以倒数得到周期,这时再来计数,算出确切的值。 我最近一直在研究这计数器和定时器的确切定时时间问题,刚有点眉目,还在努力中,关键是要靠自悟。。。
 
 
 

回复

83

帖子

0

TA的资源

一粒金砂(初级)

13
 
定时时间= (2^n - 初始值)×晶振周期×12
不同工作模式,不同晶振周期,相应的值不同。代入公式计算就可以得到初装值
 
 
 

回复

80

帖子

0

TA的资源

一粒金砂(初级)

14
 
得先看看你采用的是那种定时方式了.
具体的算法上面的各位讲的很清楚了^_^
 
 
 

回复

72

帖子

0

TA的资源

一粒金砂(初级)

15
 
要搞清楚几个问题:
1.你的定时器是加计数器还是减计数?
2.你的时钟周期和指令周期?一般定时器是以时钟周期计数的,具体看cpu的datasheet;
3.你的定时时间;
下面以减计数器举例计算:(cpu:microchip dsPIC33F,晶振:8M输入倍频至64M,时钟周期:1/64m)
定时1ms,时钟周期:1/64m=1/64000000s=1/64000ms,定时器增计数;
时间=(定时常数-1)* 时钟周期
1ms =(定时常数-1)* 1/64000
定时常数 = 64000+1

其实,这方面的东西,随便找个51的教材或者cpu的datasheet上面都会将,
你要多看,多实践,很快就可以上手。。。

 
 
 

回复

68

帖子

0

TA的资源

一粒金砂(初级)

16
 
我觉得你想知道这个问题的答案很简单,去买本关于 单片机的书!随后你会发现你有更多的东西你不知道,等你把书里的东西都搞会了!你就可以回答别人定时器是怎么用的了!!!
                    一定要静下心自习看看书!!静心!
 
 
 

回复

79

帖子

0

TA的资源

一粒金砂(初级)

17
 
9楼说的对!
 
 
 

回复

88

帖子

0

TA的资源

一粒金砂(初级)

18
 
引用 9 楼 LH806732 的回复:
定时初值=2^n-t/(12M/Fosc)
其中n由定时器工作方式所确定(13,16,8)
t是你所需要定时的时间(ms)
Fosc为晶振
 
 
 

回复

75

帖子

0

TA的资源

一粒金砂(初级)

19
 
我这有个处置计算器(软件)楼主可要?
QQ416269279
 
 
 

回复

67

帖子

0

TA的资源

一粒金砂(初级)

20
 
接分是王道!
 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

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

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

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

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

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

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