欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索

stm32單片機定時中斷的問題

查看數: 1145 | 評論數: 1 | 收藏 0
關燈 | 提示:支持鍵盤翻頁<-左 右->
    組圖打開中,請稍候......
發布時間: 2024-9-17 14:45

正文摘要:

我在使用STM32F103RCT6做定時器中斷實驗的時候發現,當使用定時器5,6,7都不能觸發定時器中斷進入服務函數,但是使用定時器12348卻可以,配置完全一樣,按道理也不應該有區別才對呀,搞了一天也不知道為什么

回復

ID:404160 發表于 2024-9-18 12:00
可能原因分析
時鐘配置問題:
APB1/APB2時鐘使能: 確保定時器5、6、7所在的APB1時鐘已經正確使能。
時鐘源選擇: 檢查時鐘源是否正確選擇,尤其是對于不同組的定時器,時鐘源可能有所不同。
NVIC中斷配置問題:
中斷優先級: 確認定時器5、6、7對應中斷的優先級是否設置過高,導致被其他中斷搶占。
中斷分組: 檢查NVIC中斷分組是否正確,確保定時器中斷可以被正常響應。
試試下面的代碼看可行否?
void Timer5_Init(void) {
    RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM5, ENABLE);

    TIM_TimeBaseInitTypeDef TIM_TimeBaseInitStructure;
    TIM_TimeBaseInitStructure.TIM_ClockDivision = TIM_CKD_DIV1;
    TIM_TimeBaseInitStructure.TIM_CounterMode = TIM_CounterMode_Up;
    TIM_TimeBaseInitStructure.TIM_Period = 999;  // 1000 - 1
    TIM_TimeBaseInitStructure.TIM_Prescaler = 7199;  // 7200 - 1
    TIM_TimeBaseInitStructure.TIM_RepetitionCounter = 0;
    TIM_TimeBaseInit(TIM5, &TIM_TimeBaseInitStructure);

    TIM_ClearFlag(TIM5, TIM_FLAG_Update);
    TIM_ITConfig(TIM5, TIM_IT_Update, ENABLE);

    NVIC_InitTypeDef NVIC_InitStructure;
    NVIC_InitStructure.NVIC_IRQChannel = TIM5_IRQn;
    NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 1;
    NVIC_InitStructure.NVIC_IRQChannelSubPriority = 1;
    NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
    NVIC_Init(&NVIC_InitStructure);

    TIM_Cmd(TIM5, ENABLE);
}

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表