① 開啟電源: 5S后,所有燈【8個(gè)】亮2S檢測是否正常 ② 播放亮燈模式: 按下*鍵,延遲5S后,自動(dòng)播放上次的亮燈模式【如果第一次使用,默認(rèn)選擇亮燈模式1】 ③ 選擇亮燈模式: 按下相應(yīng)數(shù)字鍵【0-9,3秒內(nèi)按下2個(gè)數(shù)字鍵,默認(rèn)為相應(yīng)的2位數(shù)字,如21】,延遲3S,所有燈閃爍2次,延遲1S后,開始播放相應(yīng)的亮燈模式 ④ 停止播放: 按下#鍵,延遲1S后,所有燈閃爍3次,延遲1S后,停止程序運(yùn)行:所有燈滅 ⑤ 超時(shí)關(guān)機(jī): 未按下任何按鍵,選擇的亮燈模式循環(huán)播放,最多運(yùn)行100個(gè)循環(huán),自動(dòng)停止,所有燈滅 ⑥ 曲首提示: 循環(huán)播放過程中,每次亮燈模式開始,所有燈一起閃爍2 次,延遲1S后,開始播放相應(yīng)的亮燈模式;
單片機(jī)源程序如下:
- #include <reg52.h>
- #include <intrins.h> //
- 包含循環(huán)移動(dòng)函數(shù)的頭文件
- //
- 定義一下
- ,
- 方便使用
- #define uchar unsigned char
- #define uint unsigned int
- /***********
- 延時(shí)函數(shù)(大約一毫秒)
- ****************/
- void delayms(uint z)
- {
- uint x,y;
- for(x=0;x<=76;x++)
- for(y=0;y<=z;y++);
- }
- void main( )//
- 主函數(shù)
- {
- uchar i=0;
- P0=0xfe;//
- 點(diǎn)亮第一個(gè)
- LED
- delayms(500); //
- 延時(shí)(大約)
- 0.5
- 秒
- while(1)//
- 程序循環(huán)
- {
- for(i=0;i<7;i++) //
- 右移
- 7
- 次
- {
- P0=_crol_(P0,1);//
- 循環(huán)右移一位,此處調(diào)用函數(shù)
- _cror_
- 的功能為循環(huán)
- 右移
- delayms(500); //
- 延時(shí)(大約)
- 0.5
- 秒
- }
- for(i=0;i<7;i++) //
- 左移
- 7
- 次
- {
- P0=_cror_(P0,1);//
- 循環(huán)左移一位,此處調(diào)用函數(shù)
- _croL_
- 的功能為循環(huán)
- 左移
- delayms(500); //
- 延時(shí)(大約)
- 0.5
- 秒
- }
- }
- }
復(fù)制代碼
所有資料51hei提供下載:
ST033-八位LED模塊.pdf
(373.79 KB, 下載次數(shù): 8)
2018-11-2 11:20 上傳
點(diǎn)擊文件名下載附件
下載積分: 黑幣 -5
|