版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、51單片機的七彩LED丁漸變調(diào)光調(diào)色程序/Main.c/Copyright(C)2013ShenyangJYXD./WENBORUI/Toolchain:KEILFull'c'/#pragmaCDOEDBSB/Compilationdirectives#include;#include;#defineucharunsignedchar#defineuintunsignedintuintPeriod;/Period刷新周期uintPWM;uintPulse;/脈沖個數(shù)ucharSpeed;/速度變量ucharcount;uintexcount;bitGra;/漸變/跳變總控制位b
2、itGra7;/七彩漸亮漸滅控制位bitGra3;/紅綠藍漸亮漸滅控制位bitBP;/亮到暗,暗到亮轉(zhuǎn)換位bitLEDdelay;/LED定時到標志位sbitkeyl=P3A1;/花樣組合鍵1sbitkey2=P3A0;/花樣組合鍵2sbitkey3=P3A5;/速度組合鍵1sbitkey4=P3A4;/速度組合鍵2ucharIed112=0x10,0x030,0x20,0x60,0x40,0x50,0x70,0x50,0x40,0x60,0x20,0x30;/紅、黃、綠、青、藍、粉、白、粉、藍、青、綠、黃ucharled224=0x10,0x00,0x30,0x00,0x20,0x00,0x
3、60,0x00,0x40,0x00,0x50,0x00,0x70,0x00,0x50,0x00,0x40,0x00,0x60,0x00,0x20,0x00,0x30,0x00;ucharled33=0x10,0x20,0x40;/紅、綠、藍ucharledcount,ledcount1;*/以下定義函數(shù)/1毫秒延時函數(shù)delayms();花樣及速度掃描函數(shù)keyscan();/*/*voiddelayms(unsignedintms)unsignedchari;while(ms-)(for(i=0;i;跳變無滅燈過程voidPattern2();/花樣2函數(shù)>跳變有滅燈過程voidPat
4、tern34();voidkeyscan()(if(key4=1)&&(key3=1)Speed=20;Period=25;/預設4種速度200Msif(key4=0)&&(key3=1)Speed=50;Period=50;/500MSif(key4=1)&&(key3=0)Speed=100;Period=100;/1Sif(key4=0)&&(key3=0)Speed=150;Period=200;/1.5Sif(key2=1)&&(key1=1)ledcountl=0;Pattern1();/預設4種花樣i
5、f(key2=0)&&(key1=1)ledcount1=0;Pattern2();if(key2=1)&&(key1=0)ledcount=0;Gra3=1;Pattern34();if(key2=0)&&(key1=0)ledcount=0;Gra7=1;Pattern34();voidvalue()if(Speed=20)PWM=Pulse*8;if(Speed=50)PWM=Pulse*4;/脈沖個數(shù)if(Speed=100)PWM=Pulse*2;if(Speed=150)PWM=Pulse;voidReset(void)unsigne
6、dcharcoderst=0xe4,0xc0,0xe0,0xc0,0xe0,0x32;(*(void(*)(void)(rst)();voidmain()_nop_();_nop_();_nop_();P1=0;TMOD=0x11;/11.0592M晶振的10ms定時初值(100分之一秒)TH0=0x0db;TL0=0x0ff;TH1=0x0ff;/0.05ms(20000分之一秒)TL1=0x0D1;EA=1;/開啟總中斷允許ET0=1;/允許T0定時器中斷ET1=1;/允許T1定時器中斷TR0=1;/開啟T0定時器EX0=1;/開外部中斷0IT0=1;/下降沿觸發(fā)while(1)(keys
7、can();)*/Pattern1()花樣函數(shù)1跳變無滅燈過程/*voidPattern1()(/keyscan();Gra=0;/跳變位=0if(LEDdelay)(LEDdelay=0;P1=led1ledcount;ledcount+;if(ledcount>11)(ledcount=0;*跳變有滅燈過/Pattern2()花樣函數(shù)2程/*voidPattern2()(/keyscan();Gra=0;if(LEDdelay)(LEDdelay=0;P1=led2ledcount;ledcount+;if(ledcount>23)(ledcount=0;*/Pattern3(
8、)花樣函數(shù)33彩漸變/*/*voidPattern3()(keyscan();if(Speed=20)Period=25;if(Speed=50)Period=50;if(Speed=100)Period=100;if(Speed=150)Period=200;Gra=1;Gra3=1;*/*彩漸變/Pattern4()花樣函數(shù)47/*voidPattern34()Gra=1;/漸變位=1/*/定時器0中斷服務程序*/voidtime0(void)interrupt1(TR1=0;TF0=0;TH0=0xdb;/重新寫入初值TL0=0xff;if(!Gra)/執(zhí)行跳變程序(count+;if(
9、count>Speed)(LEDdelay=1;count=0;if(Gra)TR1=1;/開啟TR1;if(!BP)/(if(Gra7)(P1=led1ledcount1;/10ms至L亮相應的LED)if(Gra3)(P1=led3ledcount1;/10ms至L亮相應的LEDPulse+;value();if(Pulse>=Period)(Pulse=Period;BP=1;/一個周期完成轉(zhuǎn)換模式)if(BP)(if(Gra7)P1=led1ledcount1;/10ms至L亮相應的LED)if(Gra3)(P1=led3ledcount1;/10ms至L亮相應的LED)value();Pulse-;/脈沖個數(shù)if(Pulse=0)Pulse=0;BP=0;/一個周期完成轉(zhuǎn)換模式ledcount1+;if(Gra7)(if(ledcount1>11)(ledcount1=0;Gra7=0;if(Gra3)(if(ledcount1>2)(ledcountl=0;)Gra3=0;/*/定時器1中斷服務程序/*voidtimer1()interrupt3(PWM-;TH1=0xff;/0.05ms(20000分之一秒)T
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年度戶外展示柜安裝與廣告投放合同3篇
- 幼兒桌游游戲化課程設計
- 英語句子結(jié)構(gòu)的課程設計
- 熱工課程設計自我評價
- (標準員)基礎知識練習(共六卷)
- 幼兒園回憶過年課程設計
- 紅色精神體育課程設計
- 物流行業(yè)配送技巧分享
- 生物實驗教學案例分享計劃
- 網(wǎng)絡實驗課課程設計書
- 電動開啟窗施工方案
- SA8000標準培訓課件
- 文創(chuàng)產(chǎn)品可行性報告
- 江蘇省徐州市2023-2024學年八年級上學期期末抽測道德與法治試題
- 8.1《荷花淀》同步練習()
- 浙江省杭州市2023-2024學年四年級上學期科學高頻易錯期末考前卷(教科版)
- 汽車產(chǎn)量統(tǒng)計研究報告
- 甲烷事故應急預案
- 醫(yī)藥倉儲部人員崗位職責及工作內(nèi)容培訓課件
- 三明醫(yī)改調(diào)研社會實踐報告
- 人員密集場所安全常識
評論
0/150
提交評論