流水燈是若干個燈泡依次點亮,視覺上感覺到燈光在流動就叫做流水燈。
選用微控制器的p0埠8只引腳作為輸出腳,1只引腳控制1只led燈。設定p0_0腳為低電平,使得第1只led燈點亮,並延時一點時間,然後設定p0_0腳為高電平,熄滅第1只led,以此同理控制其餘7只引腳。比如:
p0_0腳為低電平,使得第1只led燈點亮
p0_1腳為低電平,使得第2只led燈點亮
p0_2腳為低電平,使得第3只led燈點亮
p0_3腳為低電平,使得第4只led燈點亮
p0_4腳為低電平,使得第5只led燈點亮
p0_5腳為低電平,使得第6只led燈點亮
p0_6腳為低電平,使得第7只led燈點亮
p0_7腳為低電平,使得第8只led燈點亮
程式控制
實現8個led流水燈程式用中文表示為:p0.0低、延時、p0.0高、p0.1低、延時、p0.1高、p0.2低、延時、p0.2高、p0.3低、延時、p0.3高、p0.4低、延時、p0.4高、p0.5低、延時、p0.5高、p0.6低、延時、p0.6高、p0.7低、延時、p0.7高、返回迴圈開始。
#include
//包含特殊功能暫存器定義的標頭檔案
sbit led0 = p0^0;
sbit led1 = p0^1;
sbit led2 = p0^2;
sbit led3 = p0^3;
sbit led4 = p0^4;
sbit led5 = p0^5;
sbit led6 = p0^6;
sbit led7 = p0^7;
void
delaytime10ms
(unsigned
int delayvalue)
;void
main()
//任何乙個 c 程式都必須有且僅有乙個 main 函式
}void
delaytime10ms
(unsigned
int delayvalue)
#include
//包含特殊功能暫存器定義的標頭檔案
void
delaytime10ms
(unsigned
int delayvalue)
;void
main()
}void
delaytime10ms
(unsigned
int delayvalue)
#include
//包含特殊功能暫存器定義的標頭檔案
void
delaytime10ms
(unsigned
int delayvalue)
;unsigned
char led=
;void
main()
}void
delaytime10ms
(unsigned
int delayvalue)
#include
//包含特殊功能暫存器定義的標頭檔案
void
delaytime10ms
(unsigned
int delayvalue)
;unsigned
char led=
;void
main()
}}void
delaytime10ms
(unsigned
int delayvalue)
#include
//包含特殊功能暫存器定義的標頭檔案
void
delaytime10ms
(unsigned
int delayvalue)
;void
main()
temp =
0x7f
;for
(i =
0;i <
8;i++)}
}void
delaytime10ms
(unsigned
int delayvalue)
#include
#include
void
delaytime10ms
(unsigned
int delayvalue)
;void
main()
for(i=
0;i<
7;i++)}
}void
delaytime10ms
(unsigned
int delayvalue)
#include
#include
void
delaytime10ms
(unsigned
int delayvalue)
;void main() }}
void
delaytime10ms
(unsigned
int delayvalue)
C51微控制器 創意流水燈四
include reg52.h 此檔案中定義了微控制器的一些特殊功能暫存器 include 因為要用到左右移函式,所以加入這個標頭檔案 define uchar unsigned char uchar led data1 4 uchar led data2 4 typedef unsigned in...
51微控制器之LED流水燈
在寫流水燈程式之前,我們了解一下資料型別。int在51中為2byte 型別位數 資料範圍 int16 32768 32767 short 16 32768 32767 long 32 2147483648 2147483647 unsigned int16 0 65535 unsigned shor...
51微控制器流水燈教程。
延時函式 delay 的用法是 在這裡無法用程式的格式寫出來,就給大家截圖吧 在這裡插入描述 for和while是迴圈函式,這個高中就會接觸到一點,不做過多的解釋了,第二行的unsigned int x,y 是給x和y定義的,兩個for中,第二個for是第乙個for的,意思就是,第乙個for中的條件...