keil出现错误 error C129: missing ';' before 'data'怎么回事啊,求高手解答 10
receivedatadata40h;displaydatadata39h;ORG0000HJMPSTARTORG0023HJMPCOMMJUDGEORG0100HSTA...
receivedata data 40h;
displaydata data 39h;
ORG 0000H
JMP START
ORG 0023H
JMP COMMJUDGE
ORG 0100H
START:MOV SP, #60H
MOV SCON, #50H;
MOV PCON, #80H;
MOV TMOD, #20H;
MOV TL1, #0FAH;
MOV TH1, #0FAH
SETB EA
SETB ES
SETB TR1;
HERE:JMP HERE 展开
displaydata data 39h;
ORG 0000H
JMP START
ORG 0023H
JMP COMMJUDGE
ORG 0100H
START:MOV SP, #60H
MOV SCON, #50H;
MOV PCON, #80H;
MOV TMOD, #20H;
MOV TL1, #0FAH;
MOV TH1, #0FAH
SETB EA
SETB ES
SETB TR1;
HERE:JMP HERE 展开
1个回答
展开全部
定义变量的时候data前面有问题,有可能时你定义的数据类型写错了,或者使用的数据类型没有被重定义成你写的名字,比如:
常用无符号16位整型数据类型是unsigned int,我们平时习惯写成uint16来代替这个类型,这样做前提是要求将unsigned int类型重定义为uint16才能用。
如果再没有对其重定义的情况下直接写成:uint16 data 变量名;就会出现missing ';' before 'data',将其修改成unsigned int data 变量名,就可以了。
STM一般都会这样重定义相关结构类型,其它很多需要自己再头文件重定义用到的结构类型比如头文件中做如下操作:typedef unsigned int uint16; 就是将unsigned int重定义为uint16,就相当于给从新取个名字一样。
希望对你有用!
常用无符号16位整型数据类型是unsigned int,我们平时习惯写成uint16来代替这个类型,这样做前提是要求将unsigned int类型重定义为uint16才能用。
如果再没有对其重定义的情况下直接写成:uint16 data 变量名;就会出现missing ';' before 'data',将其修改成unsigned int data 变量名,就可以了。
STM一般都会这样重定义相关结构类型,其它很多需要自己再头文件重定义用到的结构类型比如头文件中做如下操作:typedef unsigned int uint16; 就是将unsigned int重定义为uint16,就相当于给从新取个名字一样。
希望对你有用!
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询