標(biāo)題: keil4錯(cuò)誤QIN.C(23): error C141: syntax error near ')' [打印本頁]

作者: sihunzi    時(shí)間: 2023-4-9 18:08
標(biāo)題: keil4錯(cuò)誤QIN.C(23): error C141: syntax error near ')'
#include <reg51.h>
#include <intrins.h>

#define uchar unsigned char
#define uint unsigned int

sbit EN=P2^0;
sbit RS=P2^1;
sbit RW=P2^2;
sbit CS=P2^3;

sbit MQ2=P1^0;
sbit HW484=P1^1;

uchar count, MQ2_val;
bit HW484_val;

void Init()
{
    // 初始化液晶屏和zigbee模塊
}

void DisplayData(uchar data)
{
    // 在液晶屏上顯示數(shù)據(jù)
}

void SendData(uchar data)
{
    // 通過zigbee模塊發(fā)送數(shù)據(jù)
}

void DelayMs(uint n)
{
    // 延時(shí)函數(shù)
}

void PumpControl(bit status)
{
    if(status == 1)
    {
        EN = 0;
        RW = 0;
        RS = 0;
        P0 = 0x01; // 啟動(dòng)水泵
        DelayMs(1000);
        P0 = 0x00; // 停止水泵
    }
}

void main()
{
    Init();

    while(1)
    {
        MQ2_val = MQ2; // 讀取MQ-2傳感器的數(shù)據(jù)
        if(MQ2_val > 100) // 設(shè)置煙霧濃度閾值
        {
            DisplayData(MQ2_val); // 在液晶屏上顯示煙霧濃度
            SendData(MQ2_val); // 發(fā)送煙霧濃度數(shù)據(jù)到遠(yuǎn)程控制端
        }

        HW484_val = HW484; // 讀取HW-484傳感器的數(shù)據(jù)
        if(HW484_val == 1) // 檢測到火焰
        {
            DisplayData("Fire detected!");
            SendData("Fire detected!");
            PumpControl(1); // 啟動(dòng)水泵進(jìn)行滅火
        }

        DelayMs(500); // 采樣間隔
    }
}

作者: sihunzi    時(shí)間: 2023-4-9 18:09
QIN.C(1): warning C500: LICENSE ERROR (R208: RENEW LICENSE ID CODE (LIC))
QIN.C(28): error C141: syntax error near ')'
作者: xuyaqi    時(shí)間: 2023-4-9 18:35
void DisplayData(uchar data), data是關(guān)鍵字換個(gè)名字。
作者: li64331218    時(shí)間: 2023-4-9 18:48
百度一下應(yīng)該有解決辦法吧。是不是沒有聲明的原因?

作者: Hephaestus    時(shí)間: 2023-4-9 19:39
xuyaqi 發(fā)表于 2023-4-9 18:35
void DisplayData(uchar data), data是關(guān)鍵字換個(gè)名字。

是的,在C51里面data是個(gè)關(guān)鍵字,指的是RAM的低128字節(jié)空間。改成datum就不是關(guān)鍵字了。




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1