为什么会出现“MIMA.C(50): error C141:expr syntax errorr near 'void'”这个问题?谢谢

在编写光电密码锁时 用用keil编程出现error C141: syntax error near ‘;’等错误,求高手帮忙 在线等_百度知道
在编写光电密码锁时 用用keil编程出现error C141: syntax error near ‘;’等错误,求高手帮忙 在线等
MOV R5;,CCH,#04H
MOV A;到TABLE2 取码
RETENABLE,R1,#05D1: MOV A: db&是否到00h
RETWRITE2:
P2,00HTAB,#60H
MOV 40H,#06H
MOV 46H,#07HA2,
DB 8CH ;到TABLE2 取码
RETWRITE3;第一行的开始位置
cALL ENABLE
CALL WRITE1,#0FH ;DD2是LCD第一行显示TABLE1
, 6CH;到table取码
MOVC A;清屏
CALL ENABLE
MOV p0: DB 0CH,
DB 2CH,#40H+1
CALL ENABLE
RETPPP,#0FFH
DJNZ R5,#00H
,4CH;到TABLE1取码,@A+DPTR
wRITE2PPP是LCD第二行显示RAM中40H到46H中的数据
SJMP $DD1.2MAIN;显示table中的值
MOV R7;DD1是LCD初始化
MOV DPTR,A1
MOV 45H;是否到00h
RETtable1,#0C0H,#38H : MOV R1;显示开关控制
CALL ENABLE
MOV R4,#01H : MOV SP,#03H
MOV 43H,@A+DPTR
: MOV R1;到table取码
MOVC A,8CH;第二行的位置
CALL ENABLE
CALL WRITE1;XIAORENGUANG
&quot,#00H?
: MOV p0,#01H
MOV 41H: MOV p0;显示功能
CALL ENABLE
MOV p0;送命令
CALL DELAY
RETWRITE1;显示
CALL DELAY
RETDELAY,#0C0H,#02H
MOV 42H,#TABLE1
ACALL DD2,#07H
ACALL DD1 , 0ECH,#80H;显示
CALL WRITE3: MOV p0;显示到lcd
CJNE A: CLR RS
,#06H : MOV p0;第二行的位置
CALL ENABLE
MOV DPTR;显示table中的值 A1,@R1:MOV p0,#TAB,9CHORG
0000HAJMP MAINRS
DJNZ R5,04CH,#05D1;是否到00h
RETtable1: DB 00CH,#04H
MOV 44H;显示table中的值
MOV R7;到TABLE2 取码
RETENABLE,R1,R4
MOV R4: MOV A;显示到lcd
DJNZ R7;是否到00h
RETWRITE2;显示
CALL DELAY
RETDELAY.1E
P2: db &quot,#60H
MOV 40H,#06H
MOV 46H,#40H
, 06CH,#TAB;第一行的开始位置
cALL ENABLE
CALL WRITE1,#0FH ;DD2是LCD第一行显示TABLE1
MOV A;清屏
CALL ENABLE
MOV p0;XIAORENGUANG
&quot,008CH;到TABLE2 取码
RETWRITE3;+1
CALL ENABLE
MOV R5,#00H
,00HTAB;到TABLE1取码,@R1;PPP是LCD第二行显示RAM中40H到46H中的数据
SJMP $DD1.2MAIN: MOV R1;DD1是LCD初始化
MOV DPTR,A1
MOV 45H,@A+DPTR
RETPPP,#38H ;显示
CALL WRITE3;显示开关控制
CALL ENABLE
A,#01H : MOV SP,#03H
MOV 43H,@A+DPTR
: MOV R1;到table取码
MOVC A;;第二行的位置
CALL ENABLE
CALL WRITE1,A2
RETDD3;到table取码
MOV 41H: MOV p0;显示功能
CALL ENABLE
MOV p0;送命令
CALL DELAY
RETWRITE1,A
,#0C0H,#02H
MOV 42H,#TABLE1
ACALL DD2,#07H
ACALL DD1 , 0ACH,#80H;第二行的位置
CALL ENABLE
MOV DPTR: MOV p0;显示到lcd
CJNE A: CLR RS
,#06H : MOV p0: MOV p0;显示table中的值 A1,#07HA2:MOV p0,#0C0H, 0ECH
DB 08CH ORG
0000HAJMP MAINRS
其他类似问题
为您推荐:
您可能关注的推广
keil的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁跪求STC126C5A60S2串口2可用串口助手看结果的例程序 万分感谢_百度知道
跪求STC126C5A60S2串口2可用串口助手看结果的例程序 万分感谢
自己编的串口2的程序 总是不显示结果 不知道什么原因哗肠糕段蕹灯革犬宫华跪求一个例程序啊 有的可以发我Q Q2 9 61390 81万分感谢 万分感谢
提问者采纳
#include&reg51.h&#include&intrins.h&#define uchar unsigned charsfr AUXR=0x8e;sfr S2CON=0x9a;sfr S2BUF=0x9b;sfr BRT=0x9c;sbit key=P1^0;#define S2R哗肠糕段蕹灯革犬宫华I
0x01;#define S2TI
0x02;uchar st[]=&this is a test&;main(){ BTR=-(/9600); AUXR=0x14; S2CON=0x50; while(1) { if(key==0)
while(key==0);
while(st[i]!='\0')
S2BUF=st[i];
while((S2CON&S2TI)==0)S2CON&=~S2TI;
程序运行的时候报错啊 ,就是在清S2TI的时候,TEST1.C(27): error C141: syntax error near ';'TEST1.C(27): error C141: syntax error near '=='TEST1.C(27): error C141: syntax error near ')'
我试了一下,确实如此,我原来是用汇编的,翻译成的C,按理不应该出错呀。
我自己编成功了,谢了 应该是汇编 翻译的时候错了。。
提问者评价
来自团队:
其他类似问题
为您推荐:
串口助手的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁这里出现了个问题1.C(30): error C141: syntax error near 'char' 来帮忙看看_百度知道
这里出现了个问题1.C(30): error C141: syntax error near 'char' 来帮忙看看
#define uint unsigned int
//×Ô¶¨Òå±äÁ¿#define uchar unsigned char
char gw,sw,bw,
//¶¨Ê±´ÎÊý£¬Ã¿´Î20msuchar f=5; //¼ÆÊýµÄ´ÎÊýsbit
//PWMÊä³ö²¨ÐÎ1sbit
//PWMÊä³ö²¨ÐÎ2sbit
//Õý·´×ªsbit
//¼ÓËÙsbit
//¼õËÙsbit
//Í£Ö¹sbit
//Æô¶¯
//Âö³å¼Ó¼õ/**************************/*/*********¿ØÖÆ붨&#21珐处粹肺诔镀达僧惮吉0;å********************/char data led[4]={0x08,0x04,0x02,0x01};
//λÂëuchar code smg[12]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x73,0x71};//³ÌÐò´æ´¢Çø¶¨Òå×ÖÐÍÂë±í
//ÊýÂë¹ÜÏÔʾµÄÊýÖµdisplay();
//ÊýÂë¹ÜÏÔʾ
//ÑÓʱº¯Êýkey();displays();/*****************************************//***************Ö÷º¯Êý********************/main (void){
TMOD=0x51;
//T0·½Ê½1
¶¨Ê±¼ÆÊý T1·½Ê½1¼ÆÊý TH0=0xb1;
//×°Èë³õÖµ
20MS TL0=0xe0; TH1=0x00;
//
¼ÆÊý567 TL1=0x00; TR0=1;
//Æô¶¯
//Æô¶¯t1 gw=sw=bw=qw=0; //ÊýÂë¹Ü³õʼ»¯ P0=0xc0; P2=1; while(1)
//ÎÞÏÞÑ­»· {
display(); //ÊýÂë¹ÜÏÔʾ
}}/*****************************************//***************ÊýÂë¹ÜÏÔʾ****************/问题是出在char data led[4]={0x08,0x04,0x02,0x01};
//λÂë 这个位置的,其他的没有了我看了看很多这种问题啊?为什么呢
乱码是我复制的时候中文乱码了,不管中文的事。 只看英文的就好了。乱码都是注释
我有更好的答案
char data led[4]={0x08,0x04,0x02,0x01};
data 这珐处粹肺诔镀达僧惮吉个单词怎么识别?是之前定义好的么?
我是做的51单片机的c程序,data指的是单片机自动识别是放入ram中的数据,好像不管这个事,我把uchar code smg[12]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x73,0x71};这一行跟那个行换换位置,然后出问题的又成这一行了。
请把data 删除 再运行试试放入ram 还是flash ,是根据单片机的芯片给出的分区 然后编译时进行地址指定的
其他类似问题
为您推荐:
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁keil编译出现syntax error near “0x00”,如何修改,知道的告诉下谢谢_百度知道
提问者采纳
语法错误。Zimo21生成的结果是让你添加到数组里的,而不是像你这样直接用……数组的标准格式应当是(举例将字库憨哗封狙莩缴凤斜脯铆放在code区):unsigned char code ZK[] = {......};
提问者评价
好的,非常感谢
其他类似问题
为您推荐:
keil的相关知识
其他1条回答
格式要这样:code unsigned char Cheng[]={.......0x18,0x00};code unsigned char Jin[]={........0x0E,0x00};code unsigned char Long[]={........0x3憨哗封狙莩缴凤斜脯铆C,0x10};才行的!
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁总是提示syntax error... 谁知道错误出在哪里。。。各位大神帮忙看一下 谢谢啦_百度知道
总是提示syntax error... 谁知道错误出在哪里。。。各位大神帮忙看一下 谢谢啦
#include &stdio.h&char precedence get_token(char *symbol, int *n)main(){ #define MAX_STACK_SIZE 100 #define MAX_EXPR_SIZE 100 typedef enum{lparen ,rparen, plus, minus, times, divide,
mod, eos, operand} int stack[MAX_STACK_SIZE]; char expr[MAX_EXPR_SIZE]; int eval(void); { /* evlauste a postfix expression,expr,maintained as a
global variable.'\0'is the end of the expression. The stack and top of the stack are golbla variables. get_token is used to return the tokentype and
the character symblo.Operands are assumed to be single character digits */ int op1,op2; int n = 0;/* counter for the expression string */ int top = -1; token = get_token(&symbol,&n); while(token != eos) {
if(token == operand)
add(&top,symbol-'0'); /* stack insert */
/* remove two operands,perform operation,and
r缉姬光肯叱厩癸询含墨eturn result to the stack*/
op2 = delete(&top); /*stack delete */
op1 = delete(&top);
switch(token)
case plus: add(&top,op1+op2);
case minus: add(&top,op1-op2);
case times: add(&top,op1*op2);
case divide: add(&top,op1/op2);
case mod: add(&top,op1%op2);
token = get_token(&symbol,&n); }
return delete(&top); /* return result */ } precedence get_token(char *symbol, int *n) { *symbol = expr[(*n)++]; switch(*symbol){
case '(':
case ')':
case '+':
case '-':
case '*':
case '/':
case '%':
case ' ':
default : /* no error checking,default is operand */
提问者采纳
你应该把具体错误信息也贴出来
error C2061: syntax error : identifier 'get_token' error C2059: syntax error : ';' error C2059: syntax error : 'type'
precedence是啥?
声明的枚举类型 亲
你包含对应的头文件没有?报错的似乎和这个类型找不到有关 而且:char precedence get_tokenget_token前面为什么有两个类型?这显然语法错误
提问者评价
其他类似问题
为您推荐:
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁

我要回帖

更多关于 syntax error 的文章

 

随机推荐