打印
[STM8]

STM8S TIM4

[复制链接]
10199|28
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
pzhd52|  楼主 | 2010-10-21 10:56 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
TIM4_ARR寄存器,TIM4_CNTR有什么区别
数据手册上说ARR为自动装载寄存器。CNTR是设定初值寄存器。我觉的自动装载的就是一个初值,干嘛还要弄一个CNTR呢?
沙发
jgphu| | 2010-10-21 13:35 | 只看该作者
TIM4_CNTR 是一个计数器。
TIM4_ARR 是一个自动装载寄存器。

举一个简单的例子。 设定时器向上计数。 当定时器打开会把TIM4_CNTR 清0, 然后TIM4_CNTR会按照设定好的时钟频率自动加1,当TIM4_CNTR等于TIM4_ARR时就会发生更新事件,同时TIM4_CNTR 清0.

使用特权

评论回复
板凳
honami520| | 2010-10-21 15:35 | 只看该作者
相当于一个是秒针,一个是闹钟。

使用特权

评论回复
地板
yybj| | 2010-10-21 18:41 | 只看该作者
明白了,比喻很形象

使用特权

评论回复
5
pzhd52|  楼主 | 2010-10-21 19:45 | 只看该作者
谢谢

使用特权

评论回复
6
waketop| | 2012-3-12 14:55 | 只看该作者
2楼说错一个地方了吧,“当TIM4_CNTR等于TIM4_ARR时就会发生更新事件”这个不对,应该是TIM4_CNTR溢出后的初值由ARR寄存器装入(否则怎么叫自动装载寄存器呢)

使用特权

评论回复
7
lo_xiaohua_ve| | 2012-3-22 16:45 | 只看该作者
实验证实一下就明白了,如下代码,约3.3ms产生一个更新中断:
void BaseTimerInit(void)
{
  CLK_PeripheralClockConfig(CLK_PERIPHERAL_TIMER4, ENABLE);

  //TIMER4
  TIM4_DeInit();

  // Time base configuration   3.33ms timer  (1/(8M/128)) * 208 = 3.33ms
  TIM4_TimeBaseInit(TIM4_PRESCALER_128,208);
  TIM4_ITConfig(TIM4_IT_UPDATE, ENABLE);
  TIM4_SetCounter(208);

  // Enable TIM4
  TIM4_Cmd(ENABLE);
}

INTERRUPT_HANDLER(TIM4_UPD_OVF_IRQHandler, 23)
{
  GPIO_WriteReverse(LED_PORT,LED_PIN);
       
  TIM4_ClearITPendingBit(TIM4_IT_UPDATE);
}

使用特权

评论回复
8
solarmax1969| | 2012-8-22 08:15 | 只看该作者
1# pzhd52

我的理解:
1:TIM4 是向上计数的(只能向上,不能像TIM1能设置向下计数)
2:TIM4_ARR 是计数的TOP值,一旦TIM4_CNTR = TIM4_APP ,就发生溢出中断,同时TIM4_CNTR 自动归0.
3:TIM4_CNTR 是当前计数值,来一个CLK ,TIM4_CNTR 就加1。
4:在TIM1,2,3 中向下计数时,ARR 理解为“自动Load”。呵呵,老外的思路。
    说实在STM的说明书写得难懂,没有Atmel 的说明书容易理解。

使用特权

评论回复
9
捡漏王子| | 2012-8-22 09:43 | 只看该作者
感谢版主的讲解

使用特权

评论回复
10
935623040| | 2012-8-26 22:01 | 只看该作者
呵呵 学习了

使用特权

评论回复
11
huo_shan| | 2012-9-5 14:40 | 只看该作者
轻轻地,我来学习了

使用特权

评论回复
12
cjc2012| | 2012-11-25 20:53 | 只看该作者
学习了

使用特权

评论回复
13
cjc2012| | 2012-11-25 20:53 | 只看该作者
学习了                           :)

使用特权

评论回复
14
cjc2012| | 2012-11-25 20:53 | 只看该作者
学习了 :)

使用特权

评论回复
15
cjc2012| | 2012-11-25 20:54 | 只看该作者
学习了 :):) :) :) :)

使用特权

评论回复
16
cjc2012| | 2012-11-25 20:54 | 只看该作者

RE: STM8S TIM4

学习了 :):) :) :) :)

使用特权

评论回复
17
rabbit0714| | 2012-11-26 12:38 | 只看该作者
同意6楼的说法.

使用特权

评论回复
18
周炎ZHOUYAN| | 2012-11-27 10:44 | 只看该作者
懂了!

使用特权

评论回复
19
幻梦kfc| | 2012-11-27 20:24 | 只看该作者
看看 懂了

使用特权

评论回复
20
libin1009| | 2012-12-2 22:32 | 只看该作者
学习了!!

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

11

帖子

0

粉丝