




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
51單片機彩燈控制器的設(shè)計.z.51單片機彩燈控制器的設(shè)計原題要求如下:1.用16盞以上的LED小燈,實現(xiàn)至少4種彩燈燈光效果〔不含全部點亮,全部熄滅〕;2.可以用輸入按鈕在幾種燈光效果間切換;3.可以通過按鈕暫停彩燈效果,使小燈全亮,再次按下一樣按鈕后繼續(xù)之前的效果;4.增加自動在幾種效果間切換的功能,并設(shè)置一個按鈕可以在自動模式和手動模式間切換;5.使用定時中斷延時。最終作品如下:一共有十鐘燈光效果,分別是:順時針流水燈、逆時針流水燈、交替閃爍、順時針對角燈、逆時針對角燈、順時針逐個點亮、順時針逐個熄滅、逆時針逐個點亮、逆時針逐個熄滅、二進制加法。程序代碼如下:/**************************************************************************************************模塊名稱:51單片機彩燈控制器模塊功能:實現(xiàn)十種循環(huán)彩燈控制編寫日期:2021/12/18**************************************************************************************************/*include<reg51.h>*definefalse0*definetrue1*defineucharunsignedchar*defineuintunsignedintsbitpause_key=P3^0;//暫停按鈕sbitauto_key=P3^1;//手動模式的效果切換sbitchange_key=P3^2;//手動模式效果切換sbitpauseLed=P3^6;//暫停、啟動指示燈sbitautoLed=P3^7;//自動、手動模式指示燈intledCode[8]={0*fe,0*fd,0*fb,0*f7,0*ef,0*df,0*bf,0*7f};//led段碼(單個顯示)intledCode2[8]={0*fe,0*fc,0*f8,0*f0,0*e0,0*c0,0*80,0*00};//led段碼〔半顯示半滅〕intdisCode[10]={0*03,0*9f,0*25,0*0d,0*99,0*49,0*41,0*1f,0*01,0*09};//數(shù)碼管段碼0~9voiddisplayLed(void);//顯示led的主函數(shù)voidkeyScan(void);//鍵盤掃描處理函數(shù)voidDelay10ms(unsignedintn);//延時10msbitisPause=false;//是否暫停bitisAuto=true;//是否自動運行bitisChange=false;//是否要切換下一個效果uchartime;//計時滿0.5suchartypes;//第幾種燈光顯示方案uintcounts;//燈光的第幾個51單片機彩燈控制器的設(shè)計全文共8頁,當前為第1頁。/*******************************************************************************51單片機彩燈控制器的設(shè)計全文共8頁,當前為第1頁。*函數(shù)名:T0_INT*函數(shù)功能:T0定時器中斷函數(shù)*輸入:無*輸出:無*******************************************************************************/voidT0_INT(void)interrupt1{TL0=(65536-50000)/256;TH0=(65536-50000)%256;time++;if(time>=10)//定時時間:0.5s{time=0;if(isChange==true)//可以變換下一種顯示效果了{counts=0;types++;//顯示下一種效果if(types>9)types=0;P0=disCode[types];//更新數(shù)碼管顯示isChange=false;}displayLed();counts++;}}/********************************************************************************函數(shù)名:main*函數(shù)功能:主函數(shù)*輸入:無*輸出:無*******************************************************************************/voidmain(void){TMOD=0*61;//01100001//方式一TL0=(65536-50000)/256;//50msTH0=(65536-50000)%256;TR0=1;//開啟T0ET0=1;//T0中斷允許EA=1;//總中斷開啟time=0;//定時器時間擴種〔0.5s〕counts=0;//燈光的第幾次types=0;//燈光顯示模式pauseLed=0;//暫停指示燈滅51單片機彩燈控制器的設(shè)計全文共8頁,當前為第2頁。P0=disCode[types];//更新數(shù)碼管顯示51單片機彩燈控制器的設(shè)計全文共8頁,當前為第2頁。while(1){keyScan();//鍵盤掃描及處理}}/********************************************************************************函數(shù)名:keyScan*函數(shù)功能:鍵盤掃描處理*輸入:無*輸出:無*******************************************************************************/voidkeyScan(void){if(pause_key==0)//按下了暫停按鈕{Delay10ms(1);if(pause_key==0){isPause=~isPause;pauseLed=isPause;if(isPause==true){ET0=0;//關(guān)閉T0中斷P0=0*fd;//數(shù)碼管顯示"-〞P1=0*00;//所有的燈都亮起來P2=0*00;}else{ET0=1;//T0中斷允許P0=disCode[types];//更新數(shù)碼管顯示displayLed();}while(pause_key==0);//防止按鍵重復(fù)檢測}}if(auto_key==0)//自動、手動切換按鍵按下{Delay10ms(1);if(auto_key==0){isAuto=~isAuto;autoLed=isAuto;}while(auto_key==0);//防止按鍵重復(fù)檢測51單片機彩燈控制器的設(shè)計全文共8頁,當前為第3頁。}51單片機彩燈控制器的設(shè)計全文共8頁,當前為第3頁。if(change_key==0&&isAuto==false)//手動模式,并且效果切換按下{Delay10ms(1);if(change_key==0){isChange=true;}while(change_key==0);//防止按鍵重復(fù)檢測}}/********************************************************************************函數(shù)名:displayLed*函數(shù)功能:顯示led燈*輸入:(全局變量)types:顯示效果;counts:當前效果下的第幾次*輸出:無*******************************************************************************/voiddisplayLed(void){switch(types){case0://順時針旋轉(zhuǎn)led燈{if(counts>=16)counts=0;if(counts>=15){if(isAuto==true)isChange=true;}if(counts<8){P1=0*ff;P2=ledCode[7-counts];}else{P1=ledCode[15-counts];P2=0*ff;}break;}case1://逆時針旋轉(zhuǎn)LED燈{if(counts>=16)counts=0;if(counts>=15)51單片機彩燈控制器的設(shè)計全文共8頁,當前為第4頁。{51單片機彩燈控制器的設(shè)計全文共8頁,當前為第4頁。if(isAuto==true)isChange=true;}if(counts<8){P1=ledCode[counts];P2=0*ff;}else{P1=0*ff;P2=ledCode[counts-8];}break;}case2://穿插替換{if(counts>=16)counts=0;if(counts>=15){if(isAuto==true)isChange=true;}if(counts%2==0)//偶數(shù){P1=0*aa;P2=0*aa;}else{P1=0*55;P2=0*55;}break;}case3://對角順時針{if(counts>=8)counts=0;if(counts>=7){if(isAuto==true)isChange=true;}P1=ledCode[7-counts];P2=ledCode[7-counts];break;51單片機彩燈控制器的設(shè)計全文共8頁,當前為第5頁。}51單片機彩燈控制器的設(shè)計全文共8頁,當前為第5頁。case4://對角逆時針{if(counts>=8)counts=0;if(counts>=7){if(isAuto==true)isChange=true;}P1=ledCode[counts];P2=ledCode[counts];break;}case5://順時針逐個點亮{if(counts>=17)counts=0;if(counts<8){P1=~ledCode2[7-counts];P2=0*ff;}elseif(counts<16){P1=0*00;P2=~ledCode2[15-counts];}else//全亮{P1=0*00;P2=0*00;if(isAuto==true)isChange=true;}break;}case6://順時針逐個又滅掉{if(counts>=17)counts=0;if(counts<8){P1=ledCode2[7-counts];P2=0*00;}elseif(counts<16){P1=0*ff;51單片機彩燈控制器的設(shè)計全文共8頁,當前為第6頁。P2=ledCode2[15-counts];51單片機彩燈控制器的設(shè)計全文共8頁,當前為第6頁。}else//全滅{P1=0*ff;P2=0*ff;if(isAuto==true)isChange=true;}break;}case7://逆時針逐個點亮{if(counts>=17)counts=0;if(counts<8){P1=0*ff;P2=ledCode2[counts];}elseif(counts<16){P1=ledCode2[counts-7];P2=0*00;}else//全亮{P1=0*00;P2=0*00;if(isAuto==true)isChange=true;}break;}case8://逆時針逐個滅掉{if(counts>=17)counts=0;if(counts<8){P1=0*00;P2=~ledCode2[counts];}elseif(counts<16){P1=~ledCode2[counts-7];P2=0*ff;}51單片機彩燈控制器的設(shè)計全文共8頁,當前為第7頁。else//全亮51單片機彩燈控制器的設(shè)計全文共8頁,當前為第7頁。{P1=0*ff;P2=0*ff;
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025房屋租賃合同(精簡版)
- 2025年1月專賣店智能配送合同路線優(yōu)化算法免責
- 2025公司的合同協(xié)議書范本
- 2025年固態(tài)、半固態(tài)食品無菌包裝設(shè)備合作協(xié)議書
- 二零二五版?zhèn)€人欠款還款協(xié)議書范例
- 首席執(zhí)行官聘用協(xié)議書二零二五年
- 二零二五版房屋買賣補充協(xié)議書范例
- 二零二五外貿(mào)獨家代理協(xié)議利弊
- pc構(gòu)件模具合同樣本
- 傳單宣傳合同標準文本標準文本范文
- 餐飲店菜品成本計算表
- 《水土保持監(jiān)測技術(shù)規(guī)范SLT 277-2024》知識培訓
- 2025年江蘇南京事業(yè)單位招聘(787人)高頻重點模擬試卷提升(共500題附帶答案詳解)
- 檔案管理制度培訓宣貫
- GB/T 33136-2024信息技術(shù)服務(wù)數(shù)據(jù)中心服務(wù)能力成熟度模型
- 《保護地球愛護家園》課件
- 霧化吸入療法合理用藥專家共識(2024版)解讀
- 2024年度產(chǎn)學研合作與科研獎勵協(xié)議3篇
- 電力工程線路交叉跨越施工主要工序及特殊工序施工方法
- 【MOOC】軟件度量及應(yīng)用-中南大學 中國大學慕課MOOC答案
- 24秋國家開放大學《兒童發(fā)展問題的咨詢與輔導》周測驗參考答案
評論
0/150
提交評論