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

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 3689|回復(fù): 0
收起左側(cè)

[求助]請(qǐng)高手幫我看看下面多多C51程序出了什么問(wèn)題。≈x謝。

[復(fù)制鏈接]
ID:34139 發(fā)表于 2012-2-11 11:52 | 顯示全部樓層 |閱讀模式

//程序用于控制LED漸亮和漸暗;通過(guò)改變占空比實(shí)現(xiàn)。
#include<reg52.h>
void zkb(unsigned char a)     //延時(shí)改變占空比 ;char為什么不能改成int????
{unsigned int b;
while(a--)
{for(b=0;b<1;b++);
}} 
void jianlian()      //漸亮函數(shù)
{unsigned int j=0,i=250;
P0=0XFF;
while(i--)
{
j++;
j=~j;
P0=0XFF;
zkb(j);
j=~j;
P0=0x00;
zkb(j);
 }
}
void jianan()    //漸暗
{unsigned int j=0,i=250;
P1=0x00;
while(i--)
{j++;
  j=~j;
  P1=0X00;
zkb(j);
j=~j;
P1=0xff;
zkb(j);
}}
void main()
{while(1)
{jianlian();
jianan();
}}

 

 

我的LED接在P0和P1口,當(dāng)把zkb函數(shù)的形參改為 unsigned int a 后程序就不能正確運(yùn)行,而當(dāng)形參為 unsigned char a 的時(shí)候程序就能正常實(shí)現(xiàn)LED的漸亮和漸暗!

請(qǐng)問(wèn)這是在哪里出了問(wèn)題?!

不勝感激高手指點(diǎn)。。。!

回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

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