[应用相关] stm8s103中断定时不起作用

[复制链接]
1226|5
 楼主| lefeng 发表于 2016-10-18 20:03 | 显示全部楼层 |阅读模式
void TIM1_Init(void)
{
  TIM1_IER=0X00;
  TIM1_EGR=0X00;
  TIM1_PSCRH=0X3E;//15999分频,记数周期为1ms
  TIM1_PSCRL=0X7F;
  TIM1_ARRH=0X01;//自动重载寄存器为500,每计数500次产生一次中断
  TIM1_ARRL=0XF4;
  TIM1_CNTRH=0X00;
  TIM1_CNTRL=0X00;
  TIM1_CR1=0X81;
  TIM1_IER=0X01;
}
#pragma vector=TIM1_OVR_UIF_vector
__interrupt void TIM1_OVR_UIF(void)
{
  i++;
  TIM1_SR1=0X00;
  if(i==10)
  {PWMOFF();}
}
编译环境为IAR,目的是10s后pwm输出关闭,硬件测试进不去中断
拉克丝 发表于 2016-10-18 20:41 | 显示全部楼层
看寄存器的值或者对寄存器的操作是否正确。
Snow7 发表于 2016-10-18 21:03 | 显示全部楼层
寄存器操作,对照参考手册里面的寄存器的相关说明
sky.sun.zz 发表于 2016-10-18 21:09 | 显示全部楼层
貌似没有开中断?
asm("rim");
米尔豪斯 发表于 2016-10-18 21:26 | 显示全部楼层
网上的资料很多,可以参考
豆腐块 发表于 2016-10-18 21:37 | 显示全部楼层
在debug下看寄存器的值是否和你写的值一致
您需要登录后才可以回帖 登录 | 注册

本版积分规则

200

主题

1087

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部