#include<reg51.h>
#include<intrins.h>
#define uchar unsigned char
void delay :ms(uchar ms);
void main()
{
uchar led;
uchar i;
while(1)
{
led=0xfe;
for (i=0;i<7;i++)
{
p1=led;
delay_ms(100);
led=_crol_(led,1);
}
for (i=0; i<7;i++)
{
p1=led;
delay_ms(100);
led=_cror_(led,1);
}
}
}
void delay_ms(uchar ms)
{
uchar i;
while(ms--)
for (i=0;i<124;i++);
}
这个错误发现了,但不是这个问题。后来删除了startup.a51,警告消失,但不原因。startup.a51是keil自动 添加的,据说纯C语言可以可以不要,如C混有汇编的话必须用。但有了它往往出错。http://zhidao.baidu.com/question/417487664.html?quesup2&oldq=1
追答我把你这个程序编译了一下
for (i=0;i<7;i++)
{
p1=led;
delay_ms(100);
led=_crol_(led,1);
}
for (i=0; i<7;i++)
{
p1=led;
delay_ms(100);
led=_cror_(led,1);
}
把这里小写的p改成大写的P 这样没警告 没错误
Build target 'Target 1'
compiling 点灯.c...
linking...
Program Size: data=11.0 xdata=0 code=104
creating hex file from "点灯"...
"点灯" - 0 Error(s), 0 Warning(s).
谢谢!这个问题我注意到了,是在删除startup.a51以后发现并修正后,没有出现警告了。但是另外一个程序时C包含汇编的,也出现警告,但删除startup.a51后出现错误。程序见链接:http://www.21ic.com/app/control/201105/83571_3.htm。你能调试一下这个吗?
追答这个不会
proteus 和 keil联调时,Keil弹出对话框:target Dll has been cancelled...
那是你安装的版本较低,破解时需要的DLL文件没有破解成功,建议换个高级点的版本重装即可,如7.2以上,不需要DLL破解。
iar arm生成的hex 给 proteus仿真没反映
Proteus仿真有两种方式:加载HEX和联调方式。加载HEX:需要注意的是,KEIL4产生的HEX与Proteus所要的HEX不是很好兼容,需要把KEIL生成后的HEX文件用记事本打开,删去倒数第二行(不留空行)才行;联调方式不需要这么做,联调的安装方法设置方法:keil与proteus联调的安装方式 第一步:安装KEIL(我用的4.14...
我在keil平台编译好的HEX文件如何导入proteus?
步骤五:确认HEX文件已成功导入后,你的Keil编译结果就能够在Proteus的环境中进行仿真和调试了。只需确保所有设置都正确无误,即可开始你的电路设计和功能验证。
keil中汇编程序运行正确生成了.hex文件加载到proteus的原理图的单片机中...
proteus也要进行设置,双击芯片把时钟大小写进去。在keil里也要设置相关的芯片,与proteus匹配好。如果硬件电路没问题,就可以正常仿真了。
怎样把keil生成的hex文件导入proteus中
1、首先在电脑上用proteus软件打开目标文件。然后用鼠标左键双击51单片机图标,如图所示。然后在出现的窗口中,点击下图中的文件夹图标。然后在电脑文件夹中找到编译好的HEX文件导入。2、keil里编译时,设置输出文件为.HEX文件格式。然后在proteus中打开CPU属性,在程序设定栏填入HEX文件路径及名称(也可以...
我在keil平台编译好的HEX文件如何导入proteus?
在proteus软件中双击51单片机芯片,然后就会出现导入界面。请参照以下步骤。1、首先在电脑上用proteus软件打开目标文件。2、然后用鼠标左键双击51单片机图标,如图所示。3、然后在出现的窗口中,点击下图中的文件夹图标。4、然后在电脑文件夹中找到编译好的HEX文件导入。5、完成以上设置后,即可将keil平台编译...
Keil编译没问题,一调试连接proteus就出现-"Target DLL has been canc...
你拿KEIL和PROTEUS联调的吧,网上很多说下什么联调补丁,我试了很多次都没用,我估计那是老版本的方法 我自己一直是这样弄的,KEIL编译好了以后生成HEX文件,然后在PROTEUS,你的选用的芯片去加载这个HEX文件。然后就在KEIL可以直接修改了,但是不能在线监视了。我用的PROTEUS7.2和7.4的 ...
已在keil下生成了hex文件为什么加载proteus不显示
C语言单片机编程可以用keil和proteus进行联调的
用keil编译生成了hex文件,在proteus里面仿真单片机全部引脚都为高电平...
单片机内部是TTL电频,悬空状态就等效为高电平,当然要看你程序对引脚做定义没
为什么我用keil8.06中文版生成hex文件在proteus运行没有反应?
好好检查一下你的程序和工程设置,如果文件没问题,就是工程文件设置有问题,你将STARTUP.OBJ删除。