找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

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

定時器

[复制链接]

15

主题

102

帖子

1809

积分

四级会员(40)

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

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

EDA365欢迎您!

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

x
請問一下,單晶片計時器設定的觀念# i+ C' X0 W. X  f' T
看完書上還是沒很了解..
+ Q, K: q# N' h, d有沒有人可以跟我說一下我的盲點在哪..! T3 h( v9 t* o- X
( I+ [) X- B8 Z$ X' {$ `! m8 S
單晶片用12MHz的石英震盪器
: ?* N' Y) U1 N6 _/ C* X$ m然後因為8051一個機械周期
8 [  v1 p& x% E# q. y# X* ]' Y需要12個石英震盪器周期1 B3 F. h1 v' k
12MHz /12 = 1MHz =1us 所以每1us就送給8051一個脈波
9 L5 h6 P! y, A0 s9 b8 {$ A& w# M6 {& E7 J! @8 H! t% c9 e9 Z
然後內部計時器是16位元 所以最高數到65536 就產生溢位中斷3 A" G9 L) g% B+ l
每1us就送入一個脈波計時器就加1
* M3 C  e) Q% ~! E當計數器加到65536就中斷 這個意思是每65536us 就溢位中斷一次
! U+ R6 O0 p) x6 _) u
& v, e3 V% f6 ^5 ?* Z/ o- x& F那如果要設定時間間隔為5ms秒的話+ L, g, m: Q& I5 f; x8 [+ N
就代表每送入5000個1us的脈波就中斷一次  
4 m. Q  {1 r8 j; i% g但為什麼 計時器設定數值是
6 Y& X* d$ `% x65536-5000 =60536 再轉16進制 去分高低位元就好了?/ }$ J* F0 y2 ~
60536不是意思是,當計數器內部加到60536 就產生中斷嗎?" R) h1 g8 D/ a! i% Z5 }
這樣不就是60536us中斷一次?
+ h* D/ u' t1 w不是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这么理解:
& }  \: O& V8 o; S初值是60536,
" O8 [9 E- Y: A8 Y6 q所以从60536开始加
# |* ?; U  m+ N! J加到65536溢出中断
: o8 g; A! S* `* ^  @' P8 I需要加5000次6 f( `2 ]0 ~/ p0 n* ?0 F
所以是5ms
淘沙就不怕鬼,怕鬼就不淘沙

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

22

主题

132

帖子

1676

积分

四级会员(40)

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

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

本版积分规则

关闭

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

巢课

技术风云榜

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

GMT+8, 2024-9-20 00:40 , Processed in 0.055584 second(s), 31 queries , Gzip On.

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

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

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