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

查看: 3059|回复: 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管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
微信公众号二维码 微信公众号
手机版二维码 手机版