epwwm 发表于 2020-3-4 11:31:56

为何STM8S003F3进不了TIM1中断?

第一次中STM8S003F3的中断,用的是固件库,其他还好,当想用中断,弄了半天也进不了定时中断,

定时器初始
void TIMER1_Init(void)
{
CLK_PeripheralClockConfig(CLK_PERIPHERAL_TIMER1, ENABLE);//开时钟
TIM1_DeInit();
TIM1_Cmd(DISABLE);
TIM1_TimeBaseInit(16,TIM1_COUNTERMODE_UP,1000,0);   //16分频,向上计数,每1ms定时中断一次, 重复计数器值为0   
TIM1_ARRPreloadConfig(ENABLE);
TIM1_ITConfig(TIM1_IT_UPDATE , ENABLE);

TIM1_Cmd(ENABLE);
}


stm8s_it.c 的中断入口:

INTERRUPT_HANDLER(TIM1_UPD_OVF_TRG_BRK_IRQHandler, 11)
{
/* In order to detect unexpected events during development,
   it is recommended to set a breakpoint on the following instruction.
*/

//TIMER1_Decrement();
TIM1_ClearITPendingBit(TIM1_IT_UPDATE);
}




主函数:

void main(void)
{

#include "stm8s.h"


   TIMER1_Init();
   enableInterrupts();   

while(1)
{}

}


用IAR for stm8 ,编译,软件仿真,怎么搞也进不了定时1的中断。
到底漏了什么呢??

wenyangzeng 发表于 2020-3-4 14:09:24

这个官方例程参考看看



wudianjun2001 发表于 2020-3-4 14:48:36

ITC->ISPR5 = 0xDF;        //18AD中断优先级设置为1。10为0,01为1,00为2,11为3
ITC->ISPR6 = 0xFF;                //23T1中断优先级设置为3,默认,优先级最高

这两个寄存起设置了吗?我都用的寄存器,没用库

epwwm 发表于 2020-3-4 15:33:04

感谢各位

whstep 发表于 2020-5-22 23:30:56

赞一个

ligg 发表于 2020-5-29 11:54:44

:(:):)
页: [1]
查看完整版本: 为何STM8S003F3进不了TIM1中断?