找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

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

定時器

[复制链接]

15

主题

102

帖子

1809

积分

四级会员(40)

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

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

EDA365欢迎您!

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

x
請問一下,單晶片計時器設定的觀念7 w' X" ^1 b' ^% G+ i
看完書上還是沒很了解.., h. w4 V4 d+ W/ D( F- O
有沒有人可以跟我說一下我的盲點在哪..0 K2 @0 }) K- |( O7 ]& h: p! C

  Z) P0 x, r9 X8 x單晶片用12MHz的石英震盪器
3 a0 S9 k! g9 j6 ~5 T7 t4 c然後因為8051一個機械周期
5 c2 X) ?' L: f需要12個石英震盪器周期' D8 b% x: O/ c
12MHz /12 = 1MHz =1us 所以每1us就送給8051一個脈波* e4 @. e+ u) y  ^7 `

# e( A2 u, _( Y然後內部計時器是16位元 所以最高數到65536 就產生溢位中斷3 d4 K7 @; ~8 l/ \4 k# i
每1us就送入一個脈波計時器就加1. P$ v7 L% a. V' a  G4 M. ]
當計數器加到65536就中斷 這個意思是每65536us 就溢位中斷一次* d; k" X1 S6 h$ Y# {, h

5 c7 e0 \% a% {7 C  q* I那如果要設定時間間隔為5ms秒的話
2 Z+ |/ d0 K1 I2 U0 G! ]就代表每送入5000個1us的脈波就中斷一次  2 Q# U( m9 \8 F
但為什麼 計時器設定數值是
8 N: @2 D. {3 x/ _& F2 v65536-5000 =60536 再轉16進制 去分高低位元就好了?- g8 v: O3 f, }, \
60536不是意思是,當計數器內部加到60536 就產生中斷嗎?% d7 X  @4 ~3 F1 w7 c
這樣不就是60536us中斷一次?
8 J) z2 ]- c$ K; \! Q不是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这么理解:3 M) d) j3 |& k1 ~8 C
初值是60536,. G$ ~8 B8 W. _  T! q6 c
所以从60536开始加# V5 a2 ]8 v6 F2 ?+ h
加到65536溢出中断
" O' R' k' V- O" Q" o; \5 Z! |需要加5000次
6 D  W9 j0 C6 Q- j- {所以是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 06:45 , Processed in 0.054482 second(s), 31 queries , Gzip On.

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

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

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