标题: 单片机程序哪里出问题了?i都填好大了,但是还是闪灯很快 [打印本页]

作者: 殿堂之上    时间: 2023-10-12 11:07
标题: 单片机程序哪里出问题了?i都填好大了,但是还是闪灯很快
i都填好大了,但是还是闪灯很快
#include <reg52.h>
#include <intrins.h>
extern int i=0;
sbit led=P1;
void InitTimer1(void)
{
    TMOD = 0x10;
    TH1 = 0x4C;
    TL1 = 0x00;
    EA = 1;
    ET1 = 1;
    TR1 = 1;
}
void main(void)
{
     led=0;
    InitTimer1();
    while(1);
}
void Timer1Interrupt(void) interrupt 3
{
    TH1 = 0x4C;
    TL1 = 0x00;
     i++;
    if(i=20000000)
        {
        led=~led;
        i=0;
        }        
}


作者: lkc8210    时间: 2023-10-12 14:15
是if(i==20),比较是用两个=号
int i 的数据范围是-32768~32767
永不可能到达20000000
作者: 123156fsadf    时间: 2023-10-12 14:17
i=20000改成==
作者: 殿堂之上    时间: 2023-10-12 15:10
lkc8210 发表于 2023-10-12 14:15
是if(i==20),比较是用两个=号
int i 的数据范围是-32768~32767
永不可能到达20000000

我看了半天没看出来是那里问题,20000000只是为了看效果写的那么大




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1