搜索
查看: 15302|回复: 6

STM8定时器更新事件与中断有什么不同

[复制链接]

该用户从未签到

4

主题

11

帖子

0

蝴蝶豆

新手上路

最后登录
1970-1-1
发表于 2014-3-20 22:32:43 | 显示全部楼层 |阅读模式
 比如,在技术文档中,计数器向上计数模式中,计数器从0计数到用户定义的比较值(TIMx_ARR寄存器的值),然后重新从0
开始计数并产生一个计数器溢出事件,同时,如果TIM1_CR1寄存器的UDIS位是0,将会产生一
个更新事件(UEV)。请问更新事件是什么,为什么当我使能更新事件的时候,定时器不能正常工作。
 
TIM2_TimeBaseInit(TIM2_PRESCALER_16384, 0x23D0);
  TIM2_Cmd(ENABLE);  ///启用定时器2
  TIM2_ITConfig(TIM2_IT_UPDATE, ENABLE);  //使能中断事件
  TIM2_ARRPreloadConfig(DISABLE);//不预计数装载
  TIM2_SetAutoreload(0x23D0);
  
  //TIM2_UpdateDisableConfig(ENABLE);    ///使能更新事件
回复

使用道具 举报

该用户从未签到

5

主题

218

帖子

0

蝴蝶豆

中级会员

最后登录
2020-12-15
发表于 2014-3-26 16:14:37 | 显示全部楼层

回复:STM8定时器更新事件与中断有什么不同

看看下面文档,希望对你有帮组!
 
STM8时基单元.pdf (504 KB, 下载次数: 566)
回复 支持 2 反对 0

使用道具 举报

该用户从未签到

8

主题

39

帖子

0

蝴蝶豆

新手上路

最后登录
1970-1-1
发表于 2014-3-26 17:58:58 | 显示全部楼层

回复:STM8定时器更新事件与中断有什么不同

中断的产生之一就是由于有更新事件发生,如果禁止了更新事件(所谓更新事件一般是指计数器的溢出),那么如果通过计数溢出产生中断将不能发生。
楼主加入TIM2_UpdateDisableConfig(ENABLE)(这个函数变量赋值为ENABLE,表示禁止更新事件发生,并将其值存入影子寄存器),程序将不能进入中断。
所以TIM2_UpdateDisableConfig(ENABLE)实际是禁止更新事件,并非楼主说的允许更新事件。遇到不懂的函数建议查看原函数代码
回复 支持 1 反对 0

使用道具 举报

该用户从未签到

2

主题

297

帖子

0

蝴蝶豆

初级会员

最后登录
2018-4-6
发表于 2014-3-27 15:40:37 | 显示全部楼层

RE:STM8定时器更新事件与中断有什么不同

楼上说得对
回复 支持 反对

使用道具 举报

该用户从未签到

24

主题

580

帖子

2

蝴蝶豆

高级会员

最后登录
2021-1-7
发表于 2014-4-12 16:59:53 | 显示全部楼层

RE:STM8定时器更新事件与中断有什么不同

楼主是TIM2_UpdateDisableConfig函数用错了吧,可以联机仿真,设置断点,看看相应的寄存器是不是配置正确
回复 支持 反对

使用道具 举报

该用户从未签到

0

主题

4

帖子

0

蝴蝶豆

初级会员

最后登录
2020-10-5
发表于 2017-4-16 11:54:10 | 显示全部楼层
回复 支持 反对

使用道具 举报

该用户从未签到

1

主题

120

帖子

2

蝴蝶豆

中级会员

最后登录
2018-5-15
发表于 2017-4-17 09:12:57 | 显示全部楼层
更新事件是个中断源,而且是个可屏蔽的中断源。

当你不再屏蔽它并且打开中断允许的时候。

当更新事件发生,就会进对应中断。
回复 支持 反对

使用道具 举报

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

本版积分规则

关闭

站长推荐上一条 /3 下一条

Archiver|手机版|小黑屋|论坛-意法半导体STM32/STM8技术社区

GMT+8, 2024-5-8 23:00 , Processed in 0.197153 second(s), 40 queries .

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.

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