找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 6411|回复: 1
收起左侧

KEIL教自编程跑马灯程序调试问题

[复制链接]
ID:34023 发表于 2012-2-7 23:20 | 显示全部楼层 |阅读模式

大家好,今天在学KEIL教程的时候看到19页的跑马灯程序,自己仿照写了一段程序。
            #include<AT89X51.H>
void main(void)
{
 unsigned char design[3]={0xFF,0xFD,0xFB};
unsigned int a;
unsigned char b;
do{
for(b=1;b<=3;b++);
{
for(a=0;a<3000;a++);
P1=design;
}
}while(1);
}  
对P1=design设置断点,运行程序,发现P1的值如下附件图1.这个值不符合程序所要的结果。

询问论坛的高手,程序被改成了如下:

#include<AT89X51.H>
void main(void)
{
 unsigned char design[3]={0xFF,0xFD,0xFB};
unsigned int a;
unsigned char b;
for(b=1;b>3;b++);
{

P1=design;
}

while(1);
}
运行后,P1端口的值变成了11111101,正常了。

请教各位,为什么出来的值会是0XFD(11111101)呢?

还有为什么我的程序就显示的不正确呢?

谢谢大家!

 


 
 

 

1.jpg
回复

使用道具 举报

ID:1 发表于 2012-2-8 00:08 | 显示全部楼层
for(b=1;b<=3;b++);    后面的逗号去掉
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表