51单片机相关的错误C141

51单片机错误141,不知道错在那里,想请问一下

img


#include "regx52.h"
#include "T0_Chu.h"

unsigned int Timecount;
unsigned char IR[4];
unsigned char IR_add;
unsigned char IR_Flagrepeat;
unsigned char Command;
unsigned char Address;
unsigned char Data_Flag;
unsigned char Start;

#include "regx52.h"
unsigned int T;

void T0_Chu(void)
{
    TMOD &=0xF0;
    TMOD |=0x01;
    TH0=0;
    TL0=0;
    TR0=1;
    TF0=0;
    ET0=1;
    EA=1;
    PT0=0;
}

void Time0_setcount(unsigned int m)
{
    TL0 = m % 256;
    TH0 = m / 256;
}

void Time0_run(unsigned char n)
{
    TR0 = n;
}

unsigned int Time0_out(void)
{
    T=(TH0<<8)|TL0;
    return T;
}

unsigned char IR_Repeatcommand(void)
{
    if (IR_Flagrepeat == 1)
    {
        IR_Flagrepeat = 0;
        return 1;
    }
    return 0;
}

void INT0_init(void)
{
    TR0 = 0;
    IT0 = 1; IE0 = 0;
    EX0 = 1; EA = 1; PX0 = 1;
}

void IR_init(void)
{
    T0_Chu(void); INT0_init(void);
}
unsigned char IR_Datacommand(void)
{
    if (Data_Flag == 1)
    {
        Data_Flag = 0;
        return 1;
    }
    return 0;
}

unsigned char IR_address(void)
{
    return Address;
}

unsigned char IR_command(void)
{
    return Command;
}

void INT0_stop() interrupt 0
{
    if(Start==0)
    {
        Time0_setcount(0); Time0_run(1); Start = 1;
    }
    else if (Start)
    {
        Timecount = Time0_out(void); Time0_setcount(0);
        if (Timecount >= 13500 - 500 && Timecount <= 13500 + 500)
        {
             Start=2;
        }
        else if (Timecount >= 11250 - 500 && Timecount <= 11250 + 500)
        {
            Time0_run(0); Start = 0; IR_Flagrepeat = 1;
        }
        else
        {
            Start = 1;
        }
    }
    else
    {
        Timecount = Time0_out(void);
        Time0_setcount(0);
        if (Timecount >= 1120 - 500 && Timecount <= 1120 + 500)
        {
            IR[IR_add / 8] &= ~(0x01 << (IR_add % 8));
            IR_add++;
        }
        else if (Timecount >= 2250 - 500 && Timecount <= 2250 + 500)
        {
            IR[IR_add / 8] |= 0x01 << (IR_add % 8);
            IR_add++;
        }
        else
        {
            IR_add = 0;
            Start = 1;
        }
        if (IR_add >= 32)
        {
            IR_add = 0;
            if(IR[0]==~IR[1] && IR[2]==~IR[3])
            {
                Data_Flag = 1;
                Address = IR[0];
                Command = IR[2];
            }
            Time0_run(0);
            Start = 0;
        }
    }
}

如果函数没参数的话括号里面空即可无需这样(void)写,另外也无需写2个#include "regx52

【以下回答由 GPT 生成】

我很乐意帮助你解决问题。但是你并没有提供具体的问题,请提供一个具体的问题,我将尽力给出解决方案。



【相关推荐】



如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^