freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

畢業(yè)設(shè)計-單片機(jī)控制的循環(huán)彩燈系統(tǒng)設(shè)計(編輯修改稿)

2025-01-08 19:26 本頁面
 

【文章內(nèi)容簡介】 可編程上拉和漏極開路 I/O管腳 P6x。 ? 6個可編程下拉管腳。 LED燈泡一般選用高亮 LED,由于紅色 LED的亮度相對較弱,所以藍(lán)色和綠色LED比紅色少一個。正常工作狀態(tài)下,綠色和藍(lán)色 LED的工作電壓為 ,而紅色 LED的工作電壓為 。紅、綠、藍(lán) 3種 LED的工作電流相同,一般設(shè)定為 18mA。 由電路原理圖 23可知,單片機(jī)利用 I/O口直接驅(qū)動和控制基色 LED燈泡,并采用PWM波形調(diào)節(jié)脈沖寬度,從而改變 LED的占空比,使其平均工作電壓發(fā)生變化,調(diào)節(jié)基色 LED的亮度。這樣,彩燈內(nèi)部的 3種基色 LED即可混色出不同的色彩。 系統(tǒng)技術(shù)方案 本方案中的技術(shù)方案包括 PWM實現(xiàn)技術(shù)、系統(tǒng) 計數(shù)器的使用和系統(tǒng)中斷轉(zhuǎn)換。其中,利用 PWM技術(shù)控制各 LED燈泡的亮度;利用系統(tǒng)計數(shù)器實現(xiàn)彩燈色彩的變換;利用中斷轉(zhuǎn)換實現(xiàn)色彩狀態(tài)子程序的連續(xù)調(diào)用。 ( 1) PWM實現(xiàn)技術(shù) PWM調(diào)制是實現(xiàn)系統(tǒng)功能的關(guān)鍵之一,在次采用兩個計數(shù) /計時器,通過比較它們的狀態(tài)來調(diào)節(jié)基色 LED的亮度。設(shè)兩個計數(shù)器的范圍均為 0~256,記為 CNT1和CNT2,他們向上生長的速度(計數(shù)器累加的速度)快慢不一: CNT1快速的向上計數(shù),計到 256后又開始從 0計數(shù); CNT2則每 10ms向上計數(shù)一次。如果 CNT1的值小于 CNT2,則輸出高電平 ,點亮基色 LED;如果 CNT1的值大于 CNT2,則輸出低電平,基色 LED熄滅;如果兩個計數(shù)器都從 0開始變化,則單片機(jī)控制平均電壓從大到小變化, CNT2湖北經(jīng)濟(jì)學(xué)院本科畢業(yè)(設(shè)計)論文 15 計數(shù)滿一次為 256*10ms=,即經(jīng)過 ,基色 LED由暗到亮變化。 ( 2) PWM編程描述 以藍(lán)色 LED的控制為例,利用 c語言偽代碼描述 PWM的實現(xiàn)過程。 a) 函數(shù)功能描述 本函數(shù)利用 PWM調(diào)節(jié)單片機(jī) I/O口的波形,控制其輸出高 /低電平;根據(jù)相應(yīng)的輸出電平點亮 /熄滅 LED燈泡。 b) 函數(shù)實現(xiàn)描述 如上 系統(tǒng)電路原理圖 23所示, P51~P53是單片機(jī) 的 I/O口,它們連接基色 LED。本函數(shù)利用計數(shù)器狀態(tài)比較來實現(xiàn) PWM,函數(shù)沒有輸入,輸出, CNT1和 CNT2的初始狀態(tài)可進(jìn)行需要的相應(yīng)設(shè)置。 偽碼如下 : Bool LED(void){ for(。t1++) { if(t1t2) red=1。 //點亮藍(lán)色 LED else red=0。 //熄滅藍(lán)色 LED } //flms為定時器中斷產(chǎn) 生的 10ms時間標(biāo)志 if(flms){ flms=0。 //清楚 10ms標(biāo)志 t2++。 //計數(shù)器 2加 1 if(t2=255) return 0。 // , 返回 } return 1。 } ( 3) 系統(tǒng)中斷轉(zhuǎn)換 系統(tǒng)可呈現(xiàn) 7種彩色燈光,分別對應(yīng)圖 21中 T2~T8狀態(tài)。 T1狀態(tài)為系統(tǒng)保留,湖北經(jīng)濟(jì)學(xué)院本科畢業(yè)(設(shè)計)論文 16 它代表白色光。因此,系統(tǒng)主要由這 8種狀態(tài)的模塊組成,每一種狀態(tài)對應(yīng)于設(shè)定的中斷號 。當(dāng)彩燈的色彩發(fā)生變換時,一定會進(jìn)入某個中斷子程序,并且由此中斷的中斷點開始按順序進(jìn)入下一中斷子程序;否則,系統(tǒng)中斷不發(fā)生轉(zhuǎn)換,彩燈固定在一種色彩燈光下。 系統(tǒng)中斷轉(zhuǎn)換由主流程控制,主流程包括主程序模塊和各中斷模塊。下圖 25表示的系統(tǒng)狀態(tài)轉(zhuǎn)換圖則說明了若系統(tǒng)由 T1狀態(tài)開始,發(fā)生順序轉(zhuǎn)換的過程。 圖 25 系統(tǒng)狀態(tài)轉(zhuǎn)換 各中斷模塊的程序?qū)崿F(xiàn)以及中斷實現(xiàn)由后面 T1~T8的程序?qū)崿F(xiàn)來進(jìn)行詳細(xì)的介紹。為了便于控制各中斷的執(zhí)行,使得每一次中斷調(diào)用能保證最終態(tài)的穩(wěn)定,在此湖北經(jīng)濟(jì)學(xué)院本科畢業(yè)(設(shè)計)論文 17 將中斷轉(zhuǎn)換嵌入至各中斷模塊內(nèi)部。如: T1至 T2的狀態(tài)轉(zhuǎn)換程序代碼如下: JBS FLAG,DIRECT_F ;狀態(tài)是否跳轉(zhuǎn) JMP LOOP_T1 ;否!回到本狀態(tài) BC FLAG,DIRECT_F JMP LOOP_T20 ;進(jìn)入 T2,紅燈亮 LT1: BC PORT5,3 ;輸出,紅燈亮 JBS FLAG,DIRECT_F ;狀態(tài)是否跳轉(zhuǎn) JMP LOOP_T1 ;維持 T1 BC FLAG,DIRECT_F ;再次判斷跳轉(zhuǎn) ( 4) 系統(tǒng)計數(shù)器的使用方法 PWM的實現(xiàn)過程中使用了兩個計數(shù)器 CNT1和 CNT2,通過技術(shù)比較來判定 LED燈泡是否點亮:若 CNT1〈 CNTT2, LED燈泡由熄滅狀態(tài)進(jìn)入點亮狀態(tài);若 CNT1〉CNT2, LED燈泡的狀態(tài)進(jìn)入熄滅狀態(tài)。各基色 LED燈泡是串行連接的,并且只需改變一種基色 LED燈泡的狀態(tài)便能實現(xiàn)色彩的變換,因此,系統(tǒng)計數(shù)器 CNT1和 CNT2只設(shè)立一組。如果當(dāng)前改變的是紅色 LED燈泡的亮度,那么綠色和藍(lán)色 LED燈泡的亮度保持原狀態(tài)不變。 系統(tǒng)計數(shù)器的另一個作用是控制色彩變換的頻率,它可以由系統(tǒng)的初值設(shè)定,也可以由用戶來設(shè)定。 系統(tǒng)計數(shù)器的實現(xiàn)代碼將在 。 ( 5) 本系統(tǒng)采用了 EM78P153型號的單片機(jī),用來檢測交流信號,產(chǎn)生色彩變 化的 PWM信號輸出。 EM78P153內(nèi)部集成頻率可編程的 RC振蕩器和復(fù)位電路,大大減小了電路的體積,可使電路能夠容納在一個燈泡里面。 圖 26 EM78P153單片機(jī)外觀 湖北經(jīng)濟(jì)學(xué)院本科畢業(yè)(設(shè)計)論文 18 ( 6) EM78P153單片機(jī)的外觀如上圖 26,其管腳說明如下 /RST:人工復(fù)位信號輸入端 /施密特出發(fā)輸入,當(dāng)該腳保持低電平時單片機(jī)復(fù)位。不接地其他電路時,可將該腳接 VDD。 TCC:定時器 /計數(shù)器輸入腳,施密特觸發(fā) 輸入,當(dāng)該腳不用時,必須接地或 VCC /INT:外部中斷輸入腳,下降沿出發(fā)中斷 OSCI:晶體振蕩器的輸入腳。為單片機(jī)工作提供時鐘脈沖信號 OSCO:晶體振蕩器的輸出腳。通常在 OSCI和 OSCO之間外接一只晶振 VDD:電源正極 VSS:電源負(fù)極或地 P50~P53: P50~P53為雙向 I/O端口。 P60~P67: P60~P67為雙向 I/O端口。 本系統(tǒng)中單片機(jī)的外部接線和端口接線較為簡單, 其詳細(xì)的端口的定義 如圖 24所示。其中 P51接紅 LED, P52接綠色 LED, P53接藍(lán)色 LED。此外,系統(tǒng)還預(yù)留了用戶端口 P61~P67,它們連接了一個如下圖 27所示的撥碼裝置,用來設(shè)置系統(tǒng)狀態(tài)值。 圖 27 撥碼裝置的連接 湖北經(jīng)濟(jì)學(xué)院本科畢業(yè)(設(shè)計)論文 19 第 3章 彩燈硬件設(shè)計實現(xiàn) 系統(tǒng)的實際布線包括 3個部分;單片機(jī)系統(tǒng)、電源電路和 LED控制。具體電路圖如圖 31所示: 圖 31 系統(tǒng)電路圖 系統(tǒng)電源 本系統(tǒng)中的彩燈要求電路體積較小,且直接利用 220v的市電供電。因此,電源部分要采用電容降壓、全橋整流,如圖 32所示。交流市電經(jīng)過 5v穩(wěn)壓管即可得到單片機(jī)所需的 5v直流工作電壓。在本系統(tǒng)設(shè)計中采用全橋整流,它提供的電流比半波整流電流 大 1倍。在電容降壓回路上,串聯(lián)一個 300Ω的電阻,主要防止上電時大電流的沖擊。 湖北經(jīng)濟(jì)學(xué)院本科畢業(yè)(設(shè)計)論文 20 交流檢測電路 圖 32 系統(tǒng)電源電路 此應(yīng)用不需要嚴(yán)格的過零檢測,所以如圖 31交流檢測電路利用一個 1MΩ的電阻與單片機(jī)的 I/O口連接,檢測交流過零。(從電路技術(shù)來說,利用弱電系統(tǒng)檢測交流強(qiáng)電的原理是利用晶振脈沖的上升沿和下降沿檢測此刻的交流電狀態(tài)。如果兩次采樣的交流點狀態(tài)沒有變化,那么此時沒有發(fā)生交流過零;如果兩次采樣的交流電狀態(tài)發(fā)生變化,那么一定發(fā)生交流過零。)這樣連接的目的是當(dāng)很多燈泡同時變化時 ,可以起到同步的作用。系統(tǒng)完全依靠單片機(jī)內(nèi)部的 RC振蕩器,由于它會受溫度的影響,一致性不好,長時間運(yùn)行會使色彩變化不一致,所以通過檢測同一交流電,能保證所有同時上電的彩燈同步變化。交流檢測電路連接了一個 F的電容,如圖 32所示的電容 C5,它能很好地起到抗干擾的作用。 單片機(jī)從外部電路得到交流電壓,并對其進(jìn)行交流過零檢測,這部分功能必須對單片機(jī)編程才能實現(xiàn)。交流檢測電路的實現(xiàn)過程,首先保存 I/O口的初始狀態(tài),在系統(tǒng)運(yùn)行時利用時鐘脈沖間隔不斷檢測 I/O的狀態(tài),如果狀態(tài)發(fā)生改變,則發(fā)生交流過零。為說明此 算法原理,在此利用 C語言偽代碼描述這一過程。 ( 1)函數(shù)功能描述 函數(shù) Dectec_Ac()完成交流電的過零檢測。它的設(shè)計思路是利用函數(shù)的輸出狀湖北經(jīng)濟(jì)學(xué)院本科畢業(yè)(設(shè)計)論文 21 態(tài)確定是否交流過零。 ( 2)函數(shù)實現(xiàn)描述 如圖 31所示, P60//INT是單片機(jī)的 I/O口,用它連接交流檢測電路。本函數(shù)無輸入,函數(shù)輸出為交流過零檢測的結(jié)果: 1( TRUE)表示交流過零; 0( FALSE)表示交流電沒有過零。函數(shù)設(shè)計兩個交流的狀態(tài)值: s0為交流輸入初始狀態(tài)值; s1為當(dāng)前狀態(tài)值;執(zhí)行該函數(shù)時,只需要比較 s0和 s1的值即可。 實現(xiàn)偽代碼如下: Bool Dctect_Ac(void) { Bit Ac_flag。 If(s0==!s1) //s0為交流輸入初始狀態(tài)值; s1為當(dāng)前狀態(tài)值 { .s0=s1。//一次過零后,更改初始值,等待下一過零出現(xiàn) Ac_flag=TRUE。 //過零標(biāo)志置 1 Return Ac_flag。 } Ac_flag=FALSE。 //過零標(biāo)志置 0 Return Ac_flag。 } LED控制電路 LED控制電路如下圖 33所示: 湖北經(jīng)濟(jì)學(xué)院本科畢業(yè)(設(shè)計)論文 22 圖 33 LED控制電路 藍(lán)色 LED和綠色 LED由兩個三極管控制,當(dāng)與單片機(jī) I/O口連接的 NPN截止時,控制 LED的 PNP三極管也截止, LED導(dǎo)通點亮;相反,如果單片機(jī) I/O口輸出高電平,PNP三極管的基極電位為地, PNP三極管的基極電位為地, PNP的 CE極間導(dǎo)通,接在PNP間的 LED被短路、熄滅。兩個 PNP三極管間的電阻要選得恰當(dāng),截止的時候要 求在電阻上產(chǎn)生的壓降小于幾個 LED的電亮電壓。 一般說來, PNP管和 NPN管的選取原則是:放大系數(shù)、截止特性曲線應(yīng)保證基本一致;盡量選擇同一廠家的產(chǎn)品;產(chǎn)品型號若能接近則最近。 湖北經(jīng)濟(jì)學(xué)院本科畢業(yè)(設(shè)計)論文 23 第 4章 彩燈軟件設(shè)計實現(xiàn) 編程語言的選擇 根據(jù)系統(tǒng)設(shè)計的分工,硬件系統(tǒng)設(shè)計完成后,下一步工作就是應(yīng)用系統(tǒng)的軟件編制。所謂軟件,是指完成各種功能的計算機(jī)程序的綜合,如:操作、監(jiān)控、管理、控制、計算和自診斷程序等。所以軟件可以說是微機(jī)系統(tǒng)的神經(jīng)中樞,整個系統(tǒng)的動作都是在軟件的指揮下協(xié)調(diào)和完成的。然而軟件是 由語言來實現(xiàn)的,且語言并非一種,按使用語言的類別來區(qū)分,語言大致可分為機(jī)器語言,匯編語言和高級語言 3種,所以選擇語言要視具體情況而定。 因為本設(shè)計要實現(xiàn)的功能具有比較強(qiáng)的實時性,同時為了節(jié)約成本,提高其性價比。又由單片機(jī)選型原則可知其要盡可能的利用自身所帶的資源,充分發(fā)揮自身的功能。考慮到匯編語言具有這兩方面的特性,所以在設(shè)計中我選擇了用匯編語言來實現(xiàn)軟件功能。 下圖 41所示是系統(tǒng)的總體流程以及各狀態(tài)內(nèi)的實現(xiàn)流程。 ( a)系統(tǒng)主流程 ( b)狀態(tài)內(nèi)部程序流程 圖 41 系統(tǒng)流程圖 湖北經(jīng)濟(jì)學(xué)院本科畢業(yè)(設(shè)計)論文 24 系統(tǒng)總流程 由系統(tǒng)流程圖 41( a)可以看出,系統(tǒng)加電后首先完成初始化過程,給內(nèi)部寄存器賦值,然后從單片機(jī)外部讀入各參數(shù)值和用戶設(shè)定值。完成上述初始化步驟后,系統(tǒng)進(jìn)入循環(huán),由一個狀態(tài)進(jìn)入到另一個狀態(tài)。系統(tǒng)總共定義了 8種狀態(tài),每進(jìn)到一個狀態(tài),執(zhí)行相應(yīng)代碼,這種狀態(tài)的連續(xù)變化就使得彩燈的色彩不斷變化。 系統(tǒng)總的流程描述如下: ( 1)單片機(jī)上電后,初始化寄存器。 單片機(jī)上電后,主函數(shù)模塊將調(diào)用 CALL指令進(jìn)入初始 化函數(shù)模塊,初始化工作包括 4個方面: 1. 定義全部寄存器和單片機(jī)端口。 2. 初始化片內(nèi)寄存器和 P P6端口狀態(tài)。 3. 關(guān)閉中斷,初始化中斷標(biāo)志位。
點擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1