由于郭天祥教程使用的板子和本論壇的板子電路圖不一樣,所以程序也不一樣
本論壇的板子點亮一個燈,必須先使P1^4口為低電平,
而且對應LED燈是:D1燈對應P0^7口 D2燈對應P0^6口 D3燈對應P0^5口 …… D8燈對應P0^0口
這個和郭天祥的板子正好相反
//使LED從D1順序到D8依次亮,實現流水燈
#include<reg52.h>
#include<intrins.h>//循環左/右移的頭文件
#define uint unsigned int
#define uchar unsigned char
uchar temp;//全局變量(8位)
sbit deep=P2^2;//蜂鳴器接口
sbit D0=P1^4;
/*聲明函數,帶一個參數*/
void delay(uint);
void main()
{
D0=0;
deep=0;// 打開蜂鳴器
temp=0x7f;//D1燈亮,D1燈對應P0^7口
//D2燈對應P0^6口
P0=temp;//P0口是LED燈
while(1)
{
/*將temp變量循環右移一位,注意:郭天祥的是左移,而且temp初始值是0xfe,因為兩個板子LED燈對應的接口不一樣*/
temp=_cror_(temp,1);
delay(600);
P0=temp;//下一個燈亮
}
}
void delay(uint z)
{
uint x,y;
for(x=100;x>0;x--)
for(y=z;y>0;y--);
}
歡迎光臨 (http://m.zg4o1577.cn/bbs/) | Powered by Discuz! X3.1 |