为什么51芯片无法编译
❶ 51程序,编译不过去
变量精简一下,不要都用全局变量,能用局部的就定义成局部,并且尽量定义成idata。有些布尔量定义的使用不要用字节,要定义到BIT区,还有函数嵌套不要太多层。实在不行,你把程序发出来,大家看看。
❷ 51单片机小程序C语言编译不通过,找不到原因
code是一个定义的前缀,也就是告诉你现在定义的数据是放在程序存储区。
ckcon我在c8051f系列单片机里面见过,是定时器的时钟源的配置寄存器
至于你的第三个问题,我还是菜鸟,没有做过
❸ 按照51单片机视频上写的程序,一模一样为什么还是编译不了
这么短的程序,错误的地方确实多了点。
一,main函数前面的delay函数声明后面没有分号,
二,把for循环里的逗号全部改为分号。
这样之后编译应该就通过了。
❹ 51单片机程序错误,无法编译怎么搞好STC15F
#include <intrins.h>
添加这个头文件就可以了。因为你用到了
_nop_();
_nop_();这个叫内嵌汇编
❺ 在线等~~~~51单片机无法编译问题
把STARTUP.A51文件去掉再汇编试试。
❻ 在51单片机编程时,为什么在编写程序后再次进行编译就出现:target not created
是因为你没有编译就直接连接了,这个意思是目标(.HEX)文件没有创建,肯定是你的程序有错误!
不信你再编译一下,看否是有错误提示·!
❼ 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单片机出编译出错,错在哪里
用 ^ 定义位是不能用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单片机上的DS302时无法使用定时器中断呢,无法编译成功。
用51单片机使用DS1302计时,可以同时使用定时器中断,并不影响编译。你编译不成功,是程序有错误,与使用DS1302,使用定时器都无关,程序中有错,要按编译提示查找错误。
❿ 51单片机汇编,编译无法通过,UNDEFINED SYMBOL (PASS-2)
你都没有指明单片机的起始运行地址,比如开头应该是这样的
ORG 0000H
LJMP MAIN
ORG 000BH
LJMP TT0
ORG 0023H
LJMP RXIO
ORG 0030H
MAIN: CLR B485 ; 禁止发送
。。。。。。