|
51單片機(jī)控制的花樣流水燈實(shí)驗(yàn),有仿真有代碼,分享給51黑電子論壇的朋友們.
單片機(jī)LED花樣變化原理圖(proteus工程文件可到本帖附件下載):
單片機(jī)源程序:
- //-------------------------------------------------------------------------------------------------------------------------------
- // 程序名: JSC5-2.c
- // 程序功能:P1輸出,LED進(jìn)行花樣變化
- //------------------------------------------------------------------------------------------------------------------------------
- #include <reg51.h> // 頭文件
- //----------------------------------------------------------
- // 聲明無符號字符數(shù)組TABLE
- //----------------------------------------------------------
- unsigned char code TABLE[ ]={
- 0xff,0xe7,0xc3,0x81,0x00, // 從中間向兩側(cè)點(diǎn)亮控制碼
- 0xff,0x7e,0x3c,0x18,0x00, // 從兩側(cè)向中間點(diǎn)亮控制碼
- 0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f, // 左移控制碼
- 0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe, // 右移控制碼
- 0x00,0xff,0x00,0xff, // 閃爍控制碼
- 0x01 // 結(jié)束碼
- };
- //------------------------------------------- 延時函數(shù)---------------------------------------------
-
- DELAY( ) // 延時函數(shù)
- {
- unsigned int s; // 聲明s為無符號整型變量
- for(s=0;s<30000;s++); // for循環(huán)延時語句
- }
- //--------------------------------------------- 主函數(shù) --------------------------------------------
- main( ) // 主函數(shù)
- {
- unsigned char i; // 聲明無符號字符型變量i
- while(1) // 無限循環(huán)
- {
- if ( TABLE[i]!=0x01 ) // 取碼不等于0x01時,執(zhí)行if{ }內(nèi)的語句
- {
- P1=TABLE[i]; // 輸出
- i++; // 遞加(加1)
- DELAY( ); // 調(diào)用延時函數(shù)DELAY( )
- }
-
- else // 取碼等于0x01時,執(zhí)行"i=0"語句
- {
- i=0; // 重新開始循環(huán)
- }
- } // while(1)循環(huán)體結(jié)束
- } // 主函數(shù)結(jié)束
- //-----------------------------------------------------------------------------------------------------------------
復(fù)制代碼
該系列源碼包含有很多非常經(jīng)典,代碼風(fēng)格十分規(guī)范,而且注釋詳細(xì)的單片機(jī)例程,還帶仿真,對于MCU學(xué)習(xí)特別是初學(xué)者是很有幫助的,全部源碼下載(共25個項目):http://www.torrancerestoration.com/bbs/dpj-79328-1.html
本例程下載(含proteus仿真工程文件與源碼):
5-2單片機(jī)控制LED進(jìn)行花樣變化實(shí)驗(yàn).rar
(52.4 KB, 下載次數(shù): 9)
2017-3-29 21:44 上傳
點(diǎn)擊文件名下載附件
|
|