找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

巢课
电巢直播8月计划
查看: 724|回复: 3
打印 上一主题 下一主题

定時器

[复制链接]

15

主题

102

帖子

1809

积分

四级会员(40)

Rank: 4Rank: 4Rank: 4Rank: 4

积分
1809
跳转到指定楼层
1#
发表于 2012-9-25 17:35 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您!

您需要 登录 才可以下载或查看,没有帐号?注册

x
請問一下,單晶片計時器設定的觀念
/ |* \3 i8 }* w2 ]看完書上還是沒很了解... q; p! T! ~" _! V- b( z3 V- o
有沒有人可以跟我說一下我的盲點在哪..
4 z. ]! h% H! ?6 `# B- N0 {1 N% _4 A: z! F/ F
單晶片用12MHz的石英震盪器- |' f5 ?$ R7 L! l
然後因為8051一個機械周期
3 T# Z; Q' ~4 K2 d' G需要12個石英震盪器周期
$ [/ A( S6 F( z( D3 ]# N12MHz /12 = 1MHz =1us 所以每1us就送給8051一個脈波" K( e$ b8 V) f) z$ C) q0 M

; _+ L) n. R' j% e, K然後內部計時器是16位元 所以最高數到65536 就產生溢位中斷
+ `1 Y# d1 i5 b+ b5 I每1us就送入一個脈波計時器就加1, a# ?! l; s  t/ D8 Y2 t9 Q
當計數器加到65536就中斷 這個意思是每65536us 就溢位中斷一次
: z1 ]' V5 ~$ q2 M' r7 g0 Q* h0 S9 w" D  h) N1 Y
那如果要設定時間間隔為5ms秒的話) i' l9 A6 i! s* o
就代表每送入5000個1us的脈波就中斷一次  
, f0 L% a4 {! C& d; T2 v但為什麼 計時器設定數值是
+ ~2 N, N6 z; ]65536-5000 =60536 再轉16進制 去分高低位元就好了?
, o6 |4 Q- N; m+ _60536不是意思是,當計數器內部加到60536 就產生中斷嗎?& Z) f7 C3 N0 X. B6 I
這樣不就是60536us中斷一次?
/ L2 o, e$ M8 W0 u/ o2 @6 {不是5ms中斷一次
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 支持!支持! 反对!反对!

0

主题

37

帖子

2088

积分

四级会员(40)

Rank: 4Rank: 4Rank: 4Rank: 4

积分
2088
2#
发表于 2012-9-26 18:39 | 只看该作者
可能你理解错了,因为你设置的时候已经将开始计数的起点设为60536,所以还是只有5ms。ps每次计数的起点和你设置的初始值有关,而不是每次都从0开始!

69

主题

983

帖子

3653

积分

EDA365版主(50)

Rank: 5

积分
3653
3#
发表于 2012-9-28 15:49 | 只看该作者
LZ这么理解:
. v" K/ Y5 V  K' F/ M* b. |/ y初值是60536,: x$ b0 d  f$ k* H3 H/ ]
所以从60536开始加
# Q% J- P) @$ V+ _加到65536溢出中断! i1 [& d% G: _$ g
需要加5000次; d% C) j) \, a2 i5 G
所以是5ms
淘沙就不怕鬼,怕鬼就不淘沙

最大的敌人不是粽子或机关,而是自身的恐惧

22

主题

132

帖子

1676

积分

四级会员(40)

Rank: 4Rank: 4Rank: 4Rank: 4

积分
1676
4#
发表于 2012-10-12 09:29 | 只看该作者
顶一个!!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

巢课

技术风云榜

关于我们|手机版|EDA365 ( 粤ICP备18020198号 )

GMT+8, 2025-2-2 08:38 , Processed in 0.058107 second(s), 31 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

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