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