中级会员
 
- 积分
- 250
- 金钱
- 250
- 注册时间
- 2017-6-8
- 在线时间
- 46 小时
|
1金钱
最近在学习stm8,做1638的时候想用定时器中断,但是突然发现一个问题:
先简单的说一下我的程序设计,主函数的while(1)设置的是两种状态,想用定时器计时切换状态用中断反转temp的值来实现,temp初值设置的是1。
while(1)
{
if(temp==1)
{
SMG_1_8();
led_allHZ(200); //200的延迟闪
}
if(temp==-1)
{
SMG_8_1();
led_allHZ(100); //100的延时闪
}
然后问题来了,函数首先执行temp==1,但是执行完以后没到定时器设置的时间就直接进入中断反转值进入temp==-1;
然后查了相关资料,stm32也有相关的问题,解决问题是在初始化定时器的时候加上清除标志位,但是我在stm8上的初始化里加清除标志位解决不了,求大神指导,谢谢
|
|