Xiaxianzi3 2022-07-21 14:07 采纳率: 50%
浏览 296
已结题

stm32f103rct6 tim6和tim7无法进入定时中断

#include "stm32f10x.h" // Device header
extern uint16_t Num;
void Timer_Init(void)
{
//1、RCC开启时钟 通用定时器:TIM6
RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM6, ENABLE);

//2、选择时基单元时钟 
TIM_InternalClockConfig(TIM6);    //使用内部时钟(默认)

//3、配置时基单元
TIM_TimeBaseInitTypeDef TIM_TimeBaseInitStructure;
TIM_TimeBaseInitStructure.TIM_ClockDivision = TIM_CKD_DIV1; //滤波器分频
TIM_TimeBaseInitStructure.TIM_CounterMode = TIM_CounterMode_Up;    //计数方式:向上计数
TIM_TimeBaseInitStructure.TIM_Period = 10000 - 1;    //ARR(0~65535)    CK_CNT_OV = CK_PSC/(PSC+1)/(ARR+1); 1S : 1HZ = 72,000,000/(7200)/(10000)
TIM_TimeBaseInitStructure.TIM_Prescaler = 7200 - 1;    //PSC(0~65535)    
TIM_TimeBaseInitStructure.TIM_RepetitionCounter = 0;    //重复计数器,高级计数器才有
TIM_TimeBaseInit(TIM6, &TIM_TimeBaseInitStructure);

TIM_ClearFlag(TIM6, TIM_FLAG_Update);

//4、使能中断
TIM_ITConfig(TIM6, TIM_IT_Update, ENABLE);

//5、NVIC配置
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);    //优先级分组 2位响应,2位抢占
NVIC_InitTypeDef NVIC_InitStructure;
NVIC_InitStructure.NVIC_IRQChannel = TIM6_IRQn ;    //配置通道
NVIC_InitStructure.NVIC_IRQChannelCmd  = ENABLE; 
NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0;    //抢占优先级
NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0;            //响应优先级
NVIC_Init(&NVIC_InitStructure);


//6、启动定时器
TIM_Cmd(TIM6, ENABLE);

}

void TIM6_IRQHandler(void)
{
if (TIM_GetITStatus(TIM6, TIM_IT_Update) == SET) //更新中断
{
Num++;
TIM_ClearITPendingBit(TIM6, TIM_IT_Update);
}

}

  • 写回答

1条回答 默认 最新

  • 乐观的study123 2022-07-21 14:14
    关注

    RCT6有定时器6和7吗我怎么记着好像就到4

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录

报告相同问题?

问题事件

  • 系统已结题 7月29日
  • 已采纳回答 7月21日
  • 创建了问题 7月21日

悬赏问题

  • ¥20 ML307A在使用AT命令连接EMQX平台的MQTT时被拒绝
  • ¥20 腾讯企业邮箱邮件可以恢复么
  • ¥15 有人知道怎么将自己的迁移策略布到edgecloudsim上使用吗?
  • ¥15 错误 LNK2001 无法解析的外部符号
  • ¥50 安装pyaudiokits失败
  • ¥15 计组这些题应该咋做呀
  • ¥60 更换迈创SOL6M4AE卡的时候,驱动要重新装才能使用,怎么解决?
  • ¥15 让node服务器有自动加载文件的功能
  • ¥15 jmeter脚本回放有的是对的有的是错的
  • ¥15 r语言蛋白组学相关问题