找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1588|回復(fù): 5
收起左側(cè)

想知道程序哪里錯了error C141: syntax error near ';', expected ','

[復(fù)制鏈接]
ID:1061638 發(fā)表于 2023-1-28 12:29 | 顯示全部樓層 |閱讀模式
#include    "reg51.h"

sbit KEY1=P3^1;
sbit KEY2=P3^0;
sbit KEY3=P3^2;
typedef unsigned char u16;
typedef  unsigned int  u8;
sbit LED1=P2^0;

#define KEY1_PRESS  1;
#define KEY2_PRESS  2;
#define KEY3_PRESS  3;
#define KEY_UNPRESS  0;
void delay_10us(u8 ten_us)
{
        while(ten_us--);
        
}
u16 key_scan(u16  mode)
{
     static  u16 key=1;
           if(mode)key=1;
        
        if(key=1&&(KEY1==0||KEY2==0||KEY3==0))
  {
                delay_10us(1000);
         key=0;
  if(KEY1==0)
                return  KEY1_PRESS;
   else if(KEY2==0)
                 return KEY2_PRESS;
         else if(KEY3==0)
         return  KEY3_PRESS;
         
}
else if(KEY1==1&&KEY2==1&&KEY3==1)
{
         key=1;
        
}
return KEY_UNPRESS;

               
        }



void main()
{
        u16 key=0;
        
        while(1)
        {
               
         key=key_scan(0);
               
                if (key==KEY1_PRESS)
                LED1=!LED1;
                        
                        
                }
        }

anjian.c(32): error C141: syntax error near 'else', expected '__asm'
anjian.c(57): error C141: syntax error near ';', expected ','
anjian.c(57): error C141: syntax error near ')', expected '__asm'
anjian.c - 4 Error(s), 0 Warning(s).



回復(fù)

使用道具 舉報

ID:883242 發(fā)表于 2023-1-28 12:36 | 顯示全部樓層
你的上一個帖子我已經(jīng)很清楚的告訴了你,#define那行不要加“;”,你根本就不看,反復(fù)重復(fù)錯誤,大家還有必要給你回復(fù)什么嗎?
回復(fù)

使用道具 舉報

ID:161164 發(fā)表于 2023-1-28 12:48 | 顯示全部樓層
你看到的是if (key==KEY1_PRESS)
編輯器看到的是if (key==1;)
回復(fù)

使用道具 舉報

ID:1061638 發(fā)表于 2023-1-28 15:26 | 顯示全部樓層
Hephaestus 發(fā)表于 2023-1-28 12:36
你的上一個帖子我已經(jīng)很清楚的告訴了你,#define那行不要加“;”,你根本就不看,反復(fù)重復(fù)錯誤,大家還有必 ...

謝謝,知道了
回復(fù)

使用道具 舉報

ID:1061638 發(fā)表于 2023-1-28 17:14 | 顯示全部樓層
lkc8210 發(fā)表于 2023-1-28 12:48
你看到的是if (key==KEY1_PRESS)
編輯器看到的是if (key==1;)

這個程序是我看視頻講的,我沒有明白為為啥主函數(shù)要寫一個u8 key=0
回復(fù)

使用道具 舉報

ID:1061638 發(fā)表于 2023-1-28 17:16 | 顯示全部樓層
Hephaestus 發(fā)表于 2023-1-28 12:36
你的上一個帖子我已經(jīng)很清楚的告訴了你,#define那行不要加“;”,你根本就不看,反復(fù)重復(fù)錯誤,大家還有必 ...

哥這個是我自學(xué)的看的教程,這個程序的主函數(shù)我沒看懂,能不能講解一下
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表