找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1602|回复: 3
收起左侧

单片机程序哪里出问题了?i都填好大了,但是还是闪灯很快

[复制链接]
ID:1095802 发表于 2023-10-12 11:07 | 显示全部楼层 |阅读模式
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;
        }        
}

回复

使用道具 举报

ID:161164 发表于 2023-10-12 14:15 | 显示全部楼层
是if(i==20),比较是用两个=号
int i 的数据范围是-32768~32767
永不可能到达20000000
回复

使用道具 举报

ID:744809 发表于 2023-10-12 14:17 | 显示全部楼层
i=20000改成==
回复

使用道具 举报

ID:1095802 发表于 2023-10-12 15:10 | 显示全部楼层
lkc8210 发表于 2023-10-12 14:15
是if(i==20),比较是用两个=号
int i 的数据范围是-32768~32767
永不可能到达20000000

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

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表