你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

查看: 3011|回复: 2

STM8 第一次进中断不准【悬赏问答】

[复制链接]

6

主题

27

回帖

0

蝴蝶豆

初级会员

最后登录
2019-5-4
发表于 2012-8-24 08:24:49 | 显示全部楼层 |阅读模式
main()
{



char1 b1;
GPIO_1();
D2_ODR=1;

//************************************************************
B4=0xff;
B6=0x00;
while(1)
{
menu_0(); //读取EEROM;
array_0(); //EEROM 写入数组;
for(b1=0;b1=9)
{B2=9;}
}
if(b1==59)
{b1=0;
time[B2]=time[B2]-1;
}

return;

}
void time2_IER(void)
{
CLK_CKDIVR=0B00000000;       
TIM2_PSCR =0B00001000; //定时器分频       
TIM2_ARRH =0xF4;
TIM2_ARRL =0x24;
TIM2_CNTRH =0x00;    //
TIM2_CNTRL =0x00;
TIM2_EGR  =0x01; //事件产生寄存器       

TIM2_SR1  =0x00;
TIM2_IER  =0x01;    //中断寄存器

TIM2_CR1 |=0B00000101;   //开定器; 
}
 
 我这个用LED数码管显示,定时中断时间是1S,但是第一次进中断的时间总是不对。
因为time[B2]在第一次读取的时个,数据是10,但是一上电,显示就是9,只有进入中断后,才会是9,而上电到进中断应该有1S的时间,而一电只看到9,说明第一次时中断时间没有达到1S,不知为何。
在定时子程序里面,我也有加载手动更新。结果第一次进中断的时间还是不对。
 
还请各位指点下,搞了好几天,也没有找到原因。
回复

使用道具 举报

134

主题

4489

回帖

239

蝴蝶豆

版主

最后登录
2020-12-9
发表于 2012-8-24 09:49:18 | 显示全部楼层

RE:STM8 第一次进中断不准;

先开定时器,然后开中断,试试。
回复 支持 反对

使用道具 举报

6

主题

27

回帖

0

蝴蝶豆

初级会员

最后登录
2019-5-4
 楼主| 发表于 2012-8-24 11:27:25 | 显示全部楼层

RE:STM8 第一次进中断不准;

试过,也是不行!
回复 支持 反对

使用道具 举报

关于 意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
13245底部标题123相同标题
12底部标题123相同标题
33333底部标题123相同序号
3435底部标题-无链接
关注我们
st-img 微信公众号
st-img 手机版