STM32學(xué)習(xí)之定時器調(diào)試總結(jié)
調(diào)試了兩天終于找到錯誤根源:
錯誤程序:
TIM3->DIER=1<<0; //中斷使能寄存器(TIMx_DIER)位0置位,允許更新中斷
TIM3->DIER=1<<6; //允許觸發(fā)中斷
正確程序:
TIM3->DIER|=1<<0;
TIM3->DIER|=1<<6;
錯因:執(zhí)行TIM3->DIER|=1<<6;時TIM3->DIER第0位又會被清零了?。?!
修改TIMx_DIER寄存器某一位時,不能用賦值符號(=,會影響其他各位),可用|=就會避免此類錯誤?。?!
評論