找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 786|回复: 5
打印 上一主题 下一主题
收起左侧

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

[复制链接]
跳转到指定楼层
楼主
ID:1061638 发表于 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).



分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:883242 发表于 2023-1-28 12:36 | 只看该作者
你的上一个帖子我已经很清楚的告诉了你,#define那行不要加“;”,你根本就不看,反复重复错误,大家还有必要给你回复什么吗?
回复

使用道具 举报

板凳
ID:161164 发表于 2023-1-28 12:48 | 只看该作者
你看到的是if (key==KEY1_PRESS)
编辑器看到的是if (key==1;)
回复

使用道具 举报

地板
ID:1061638 发表于 2023-1-28 15:26 | 只看该作者
Hephaestus 发表于 2023-1-28 12:36
你的上一个帖子我已经很清楚的告诉了你,#define那行不要加“;”,你根本就不看,反复重复错误,大家还有必 ...

谢谢,知道了
回复

使用道具 举报

5#
ID:1061638 发表于 2023-1-28 17:14 | 只看该作者
lkc8210 发表于 2023-1-28 12:48
你看到的是if (key==KEY1_PRESS)
编辑器看到的是if (key==1;)

这个程序是我看视频讲的,我没有明白为为啥主函数要写一个u8 key=0
回复

使用道具 举报

6#
ID:1061638 发表于 2023-1-28 17:16 | 只看该作者
Hephaestus 发表于 2023-1-28 12:36
你的上一个帖子我已经很清楚的告诉了你,#define那行不要加“;”,你根本就不看,反复重复错误,大家还有必 ...

哥这个是我自学的看的教程,这个程序的主函数我没看懂,能不能讲解一下
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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