导航:首页 > 源码编译 > 51编译提示出错

51编译提示出错

发布时间:2022-09-08 13:09:39

① KEIL编译51汇编程序出错,求指教啊

这程序,汗!
不说规范和内容,直接说语法错误吧
1.
不能PUSH
R7,也不能PUSH
A。对A压栈要用PUSH
ACC。
若要对R0-R7压栈,可以用MOV
A,R7
再PUSH
ACC。弹出时,
可以用POP
ACC再MOV
R7,ACC
当然,也可以直接压R7的地址,比如:PUSH
07H(BANK
0),但这样可读性很差。
2.你那儿的T1和TI是不一样的。建议,不要取一些无意义的标号,混乱不堪。

② 51 单片机 汇编 编译错误

DAT:DB 54H, F6H, 1BH, 20H,04H,C1H中逗号必须是半角字符,当十六进制数首位不是数字时,前面要加0。
要这样:DAT:DB 54H,0F6H,1BH, 20H,04H,0C1H
CLR R6; CLR R7是指令应用错误,你不能对R0-R7直接清零。
要这样:MOV R6,#0,MOV R7,#0或者CLR A,MOV R6,A;MOV R7,A

③ 51单片机程序编译完后为什么还是显示错误,工程什么的都已经建立好了。

工程什么的都已经建立好了,只一个起步,不代表什么的。

51单片机程序编译完后为什么还是显示错误,这不可能,只要有错误,编译就不会完成的。
你程序有错误,不等于编译一遍就对了,不找错误,就是编译一百遍也没有用。

④ 51单片机,这个程序错在哪里呢编译器总提示C(32): error C141: syntax error near 'u8'

main函数的while循环里面,调用函数你还给参数加个类型,这是语法错误。

⑤ 51单片机编译出错

函数声明void delay;是错误的,应该是void delay();,你少了括号,所以你程序的11,13,17,22行的错误都指向这个函数。

⑥ 51单片机出编译出错,错在哪里

用 ^ 定义位是不能用define的需要改成sbit

直接用define就相当于P3^(5=0);常量不能给常量赋值,所以就会报错


#define LCM_RS P3^5
#define LCM_E P3^4

改成

sbit LCM_RS= P3^5;
sbit LCM_E = P3^4;

sbit LCM_RW = P3^1;

即可

⑦ 51单片机 keil软件编译时出错 Text1.asm(7): error A45: UNDEFINED SYMBOL (PASS-2)

你编辑的程序开头位置出错了,应该如下
ORG 0000H
LJMP MAIN
ORG 0030H ; 主程序入口
MAIN: SETB P2.6 ; 置无线发射模块为发射状态
CLR P1.0 ; P1.0口置0
MOV A,P2
JNB ACC.4,PR1
以下雷同

⑧ Keil 51编译问题! 用Keil 51编译程序时,出现警告: MISSING DEVICE(SECURITY KEY NOT FOUND) 不知道怎

LL TO SEGMENT

这个问题必须注意,可能引起程序冲突,假设你用于自动化领域,则可能导致信号产生尖峰。 产生这一警告的一个根源是:你在主循环里调用了一个函数(如aaa),而在中断服务函数里,你用调用了这个函数(如aaa)。这样当主循环运行到该函数中是,一旦产生中断,则在中断里又再次调用该函数!这时,很可能出错! 避免这种情况的方法很多:如,在进中断的时候置需调用该函数的标志,而在主循环中调用该函数

你可以在中断函数设置标志 FLAG_Display = 1;

在主函数里判断这个标志:
if(FLAG_Display)
ValueDisplay();
更新后,清除显示标志: FLAG_Display = 0;

⑨ 51单片机工程程序都做好了,编译出错

程序中for语句是圆括号,你却用了大括号
这处
while (1)
{
for (i=0;i<4;i++)//这是圆括号
{
for (j=0;j<4;j++)//这是圆括号

⑩ C51编译时提示出错,但我怎么也找不出错在哪里了

你前面加了头文件(*.h)没有?

我加了个main函数,编译之后 是没有错误的啊
error C141: syntax error near 'void'可能是函数前后少了"{"或者"}",你应该仔细检查一下的
还有,error C202: 'TempCyc': undefined identifier这一句错误可能是在main函数中也使用了TempCyc,而没有在主函数中定义,这个变量在void Delay5Ms(void)中只是局部变量

#include "reg52.h"

void Delay5Ms(void)
{
unsigned int TempCyc;
TempCyc=5552;
while(TempCyc--);
}

//******400ms延时******
void Delay400Ms(void)
{
unsigned char TempCycA=5;
unsigned int TempCycB;
while(TempCycA--)
{
TempCycB=7269;
while(TempCycB--);
}
}

void main()
{
while(1)
{
Delay5Ms();
Delay400Ms();
}
}

阅读全文

与51编译提示出错相关的资料

热点内容
php二维数组合字符串 浏览:995
小程序如何连接云服务器 浏览:240
安卓机连电脑怎么刷机 浏览:916
高清户外运动摄像机用什么app 浏览:487
服务器第一季什么时候开启 浏览:990
刀片服务器怎么保护 浏览:836
穷爸爸与富爸爸pdf 浏览:984
手机值机什么app好 浏览:772
加密微信怎么闪退 浏览:165
keil编译程序怎么看 浏览:259
安卓怎么激活本机密码 浏览:708
数据结构prim算法 浏览:761
phphtml转excel 浏览:141
反编译安卓修改大师 浏览:580
加密狗内部是歪的 浏览:654
java程序员面试题库 浏览:571
如何在公司内网自建云服务器 浏览:430
python元列表 浏览:537
手机里文件夹图片怎么恢复 浏览:52
把qq设置成命令行启动 浏览:685