找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 7188|回復(fù): 1
打印 上一主題 下一主題
收起左側(cè)

KEIL教自編程跑馬燈程序調(diào)試問題

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:34023 發(fā)表于 2012-2-7 23:20 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式

大家好,今天在學(xué)KEIL教程的時(shí)候看到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);
}  
對(duì)P1=design設(shè)置斷點(diǎn),運(yùn)行程序,發(fā)現(xiàn)P1的值如下附件圖1.這個(gè)值不符合程序所要的結(jié)果。

詢問論壇的高手,程序被改成了如下:

#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);
}
運(yùn)行后,P1端口的值變成了11111101,正常了。

請(qǐng)教各位,為什么出來的值會(huì)是0XFD(11111101)呢?

還有為什么我的程序就顯示的不正確呢?

謝謝大家!

 


 
 

 


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:1 發(fā)表于 2012-2-8 00:08 | 只看該作者
for(b=1;b<=3;b++);    后面的逗號(hào)去掉
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表