51單片機流水燈原理
在實驗之前必須的準備工作有:
1.單片機 STC90C51
2.編譯軟體keil
3.燒寫軟體
4.面包闆
5.發光二極管

實驗說明:通過單片機晶片,定時在引腳P00,P01,P02,P03循壞輸出高電平,制作流水燈效果
重要端口:
原理說明:(紅色部分為該實驗電路圖)
電流順序:VCC正極進入 》 晶片P0.0觸發一個高電平 》 LED0二極管 》 EA 》 GND負極流出
C語言程式設計燒寫代碼:
/**************************************************************************************
* LED閃爍實驗 *
實作現象:下載下傳程式後訓示燈閃爍
注意事項:無
***************************************************************************************/
#include "reg52.h" //此檔案中定義了單片機的一些特殊功能寄存器
typedef unsigned int u16; //對資料類型進行聲明定義
typedef unsigned char u8;
sbit led0=P0^0; //将單片機的P0.0端口定義為led
sbit led1=P0^1;
sbit led2=P0^2;
sbit led3=P0^3;
/*******************************************************************************
* 函 數 名 : delay
* 函數功能 : 延時函數,i=1時,大約延時10us
*******************************************************************************/
void delay(u16 i)
{
while(i--);
}
/*******************************************************************************
* 函 數 名 : main
* 函數功能 : 主函數
* 輸 入 : 無
* 輸 出 : 無
*******************************************************************************/
void main()
{
while(1)
{
led0=0;
delay(50000); //大約延時450ms
led0=1;
delay(50000); //大約延時450ms
led1=0;
delay(50000); //大約延時450ms
led1=1;
delay(50000); //大約延時450ms
led2=0;
delay(50000); //大約延時450ms
led2=1;
delay(50000); //大約延時450ms
led3=0;
delay(50000); //大約延時450ms
led3=1;
delay(50000); //大約延時450ms
}
}
總結不好多多擔待,文章隻單純個人總結,如不好勿噴,技術有限,有錯漏麻煩指正提出。本人QQ:373965070