你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

为啥TIM2中断函数每次都会执行两次

[复制链接]
苏柚 提问时间:2015-7-13 10:08 /
FAQ上的网友求助的问题,大家帮忙回答下。https://www.stmcu.org.cn/faq/index/detail/id-70578

本人一开始采用的是STM32F103RC,后来移植到STM32F103RB上,TIM3和TIM4正常,但TIM2中断函数每次都会执行两次,代码几乎都是一样的,不知道为啥。 初始化代码: //TIM2 1s中断一次,
ADC RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM2, ENABLE);
TIM_TimeBaseStructure.TIM_Prescaler = 7199;        
//0.1ms TIM_TimeBaseStructure.TIM_Period = 10000;        
//1s TIM_TimeBaseStructure.TIM_ClockDivision = TIM_CKD_DIV1; TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up; TIM_TimeBaseInit(TIM2,&TIM_TimeBaseStructure);
TIM_ITConfig(TIM2,TIM_IT_Update, ENABLE);
TIM_Cmd(TIM2, ENABLE);


中断函数代码:
void TIM2_IRQHandler(void)
{ USART_SendData(USART1, 0xFF);
while (USART_GetFlagStatus(USART1, USART_FLAG_TC) == RESET);
TIM_ClearITPendingBit(TIM2, TIM_IT_Update); }


<
收藏 评论7 发布时间:2015-7-13 10:08

举报

7个回答
stary666 回答时间:2015-7-13 10:19:11
配置没有放上来
回答时间:2015-7-13 11:29:56
还是把简单的工程发上来吧。。。
moyanming2013 回答时间:2015-7-13 11:44:39
帮顶。。。
左岸右岸 回答时间:2015-7-13 13:40:43
看不出来
数码小叶 回答时间:2015-7-13 19:31:04
我从F103R8移植函数到C8都罢工
yvonn 回答时间:2015-7-13 22:11:35
先把串口相关的去掉,试一下;怀疑是等待标志位的时间拖长了。
xiazhifei1984 回答时间:2015-7-14 07:19:06
我在另外一个论坛上发了帖子,包含了整个工程,供参考:http://www.openedv.com/posts/list/55363.htm,疑问还是没有解决,期待中!

所属标签

相似问题

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版