基于C51單片機(jī)的智能臺燈的設(shè)計(jì)與實(shí)現(xiàn) 物聯(lián)網(wǎng)工程專業(yè)_第1頁
基于C51單片機(jī)的智能臺燈的設(shè)計(jì)與實(shí)現(xiàn) 物聯(lián)網(wǎng)工程專業(yè)_第2頁
基于C51單片機(jī)的智能臺燈的設(shè)計(jì)與實(shí)現(xiàn) 物聯(lián)網(wǎng)工程專業(yè)_第3頁
基于C51單片機(jī)的智能臺燈的設(shè)計(jì)與實(shí)現(xiàn) 物聯(lián)網(wǎng)工程專業(yè)_第4頁
基于C51單片機(jī)的智能臺燈的設(shè)計(jì)與實(shí)現(xiàn) 物聯(lián)網(wǎng)工程專業(yè)_第5頁
已閱讀5頁,還剩19頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

緒論1.1課題研究背景在如今高速發(fā)展的科技生活及社會中,各式各樣的產(chǎn)品都普遍科技化、很多越來越智能化的家具及電器進(jìn)入人們生活,這樣的高科技發(fā)展的前提下人們的工作效率得到非常大的提高、人們的生活也被改善,智能化的生活是人類追求的理想生活,所以這也是科技社會發(fā)展的一個趨勢。智能化產(chǎn)品在各個領(lǐng)域都有出色的應(yīng)用,立足于學(xué)校家庭而言。一款智能臺燈應(yīng)是必不可少的家用電器,目前社會上存在的臺燈大多是按鍵式。但是,社會的不斷發(fā)展及人們對智能化生活的追求,使得傳統(tǒng)臺燈感受到產(chǎn)品更新?lián)Q代的威脅。于是智能化的電子產(chǎn)品成為如今社會發(fā)展的主流。家庭及學(xué)校里,臺燈是必不可少的照明工具,就目前社會上的臺燈樣式而言,立柱樣式的臺燈及帶夾子的臺燈是市場銷售的主流產(chǎn)品,立柱及夾子的臺燈的工作原理是將光線集中在一小塊區(qū)域內(nèi)照明,所以這一小塊區(qū)域的亮度是比較亮的。便于人們學(xué)習(xí)工作。而且,臺燈也越來越小巧化,便于攜帶,出門旅游什么的都很方便。所以得到很多人的選擇。而且,有的臺燈功能豐富,也深受人們的追捧。目前,燈具市場上出售的臺燈種類繁多,一般的臺燈均采用220V交流電源供電,日光燈管、白熾燈泡為光源,手動開關(guān)或觸摸感應(yīng)式開關(guān)來控制。就此而言,這類臺燈同時也存在或隱含著許多危險因素,一是電壓的高幅度充滿危險性,是一個不穩(wěn)重的影響因素,二是日光燈長時間照著,會讓人眼睛感覺疲乏,給身心健康造成一些危害,三是節(jié)能問題,目前市場上的臺燈太多是以日光燈為基礎(chǔ),而日光燈的工作的功率也是蠻大的,所以也會造成電力資源的浪費(fèi)。所以,綜合上面關(guān)于目前社會上的臺燈的種種缺點(diǎn)來說,我們需要一款更加智能化,科技化,而且節(jié)約電力資源的臺燈。1.2智能臺燈的優(yōu)勢這款智能臺燈分為兩種模式,一為自動控制模式,二為手動控制模式。在自動模式下,臺燈能判斷當(dāng)時環(huán)境的光照程度及與人是否在臺燈周圍即是否當(dāng)時有人存在。若存在的人被人體紅外傳感器檢測到時,環(huán)境的光照程度又達(dá)到某個程度的時候(可以設(shè)定與調(diào)節(jié)),臺燈就會開啟,且光線會跟隨當(dāng)時環(huán)境的光照強(qiáng)度的變化而變化。如果環(huán)境光沒有達(dá)到這個程度,臺燈不會開啟。當(dāng)人沒有被人體紅外傳感器檢測到時,無論環(huán)境當(dāng)時有多暗,臺燈也不會開。手動模式是為了使使用者可以通過wifi連接手機(jī)遠(yuǎn)程控制臺燈的開關(guān)和明暗調(diào)節(jié)。智能臺燈最大的優(yōu)點(diǎn)就是省電和方便。方便不用多說了,來之則亮,去之則暗,不用動手。省電是比較重要的,現(xiàn)在全世界都缺少電能,2003年,美國和加拿大大面積停電。我國也是,每到夏天就有很多省市拉閘限。目前的社會上而言,電力資源是不可或缺的資源之一,而環(huán)保節(jié)能也是當(dāng)今世界共同的口號,如果我們每天省下10min的電能,我們采用10W的節(jié)能燈泡,相比于社會上使用的40W燈泡,我們就可以節(jié)省大概6千J的嗲能,一個月的時間,也就是30天,我們大概能省下1萬8千J的電能,一年的話,也就能省下200多萬J的電能,如果說用這節(jié)省的200多萬J的電能,那么全國就能節(jié)省大概7.8億千萬時的電能,這7.8億千瓦時的電能相當(dāng)節(jié)省接近4億人民幣!更加關(guān)心且重要的作用的是環(huán)保。中國有百分之七十的電力資源來自于火力發(fā)電廠,而火力發(fā)電廠少發(fā)一度電會減少1千克的二氧化碳排放。那么節(jié)省3.9億度的電能就等于少向大氣排放39萬噸的二氧化碳,而二氧化碳是溫室效應(yīng)的最歸禍?zhǔn)?。就是因?yàn)槿蛳虼髿馀湃脒^多的二氧化碳,導(dǎo)致了溫室效應(yīng)的加劇,海平面上升,大片的土地被淹沒,氣候變暖,降水和土壤濕度進(jìn)一步減少,氣候逐漸干旱,土地沙漠化和草原退化將變的更加嚴(yán)重。1.3課題研究目標(biāo)及本文主要內(nèi)容本次課題研究主要設(shè)計(jì)一款智能臺燈,可以檢測是否有人靠近從而自動開關(guān)并根據(jù)環(huán)境光調(diào)節(jié)明暗,也可通關(guān)wifi連接手機(jī),遠(yuǎn)程控制臺燈的開關(guān)和明暗。本文主要內(nèi)容安排如下:第一章主要對選題意義及背景進(jìn)行介紹,并提出本課題的設(shè)計(jì)目標(biāo),并對全文結(jié)構(gòu)進(jìn)行介紹。第二章主要介紹系統(tǒng)整體設(shè)計(jì)方案;第三章主要對系統(tǒng)的硬件電路模模塊設(shè)計(jì)進(jìn)行分析;第四章主要對系統(tǒng)程序模塊流程進(jìn)行分析介紹;第五章對本次設(shè)計(jì)的成果模塊進(jìn)行設(shè)計(jì)驗(yàn)證,并對全文進(jìn)行總結(jié)。2系統(tǒng)總體設(shè)計(jì)方案本設(shè)計(jì)為一個智能臺燈,具有人體紅外檢測及環(huán)境光檢測功能,同時配備wifi模塊,可以連接手機(jī)遠(yuǎn)程操控臺燈??偟膩碚f要實(shí)現(xiàn)如下功能:本地模式:檢測周圍是否有人,如果有人靠近則打開臺燈,人走延時燈滅;根據(jù)周圍環(huán)境光強(qiáng)弱調(diào)節(jié)智能臺燈的亮度;遠(yuǎn)程模式:手機(jī)連接wifi,遠(yuǎn)程控制智能臺燈的開關(guān);手機(jī)連接wifi,遠(yuǎn)程控制智能臺燈的光線強(qiáng)弱。2.1總體設(shè)計(jì)方案本系統(tǒng)由單片機(jī)主控、紅外感應(yīng)模塊、環(huán)境光檢測、WiFi模塊、LED燈驅(qū)動電路模塊及電源轉(zhuǎn)換電路組成。使用STC12單片機(jī)編程控制,通過修改程序可方便實(shí)現(xiàn)系統(tǒng)升級。系統(tǒng)的框圖結(jié)構(gòu)見圖2.1所示:圖2.1系統(tǒng)結(jié)構(gòu)框圖2.2模塊選型2.2.1單片機(jī)主控單片機(jī)也習(xí)慣性稱為微控制器(MicrocontrolerUnit,MCU),單片機(jī)也是一種集成的電路芯片,而且它最早在很多工業(yè)領(lǐng)域得到出色的應(yīng)用。單片機(jī)是計(jì)算機(jī)領(lǐng)域的一個重要分支,它不是處理某一項(xiàng)特定功能的芯片,而是集成了計(jì)算機(jī)能作為控制器的最核心部分,它是一個簡化的計(jì)算機(jī)系統(tǒng),能處理運(yùn)算量不高的情況下的控制核心,它是大規(guī)模和超大規(guī)模集成電路發(fā)展的產(chǎn)物。作為計(jì)算機(jī)領(lǐng)域的一個重要分支,單片機(jī)憑借體積小,價格便宜,操作方便,迅速占領(lǐng)了大多數(shù)電子產(chǎn)品,從使用領(lǐng)域上,單片機(jī)大致可以分為通用型/專用型、總線型/非總線型及工控型/家電型。在單片機(jī)發(fā)展的歷史中,最具有意義的便是INTEL的8051。在此之后,單片機(jī)的發(fā)展更是迅速,出現(xiàn)了16位,乃至現(xiàn)在以ARM公司CORTEX作為內(nèi)核32位單片機(jī)。字長在增加的同時,處理速度也在飛速增長,內(nèi)部存儲空間,寄存器數(shù)量,外設(shè)種類也在不斷發(fā)展,而如今我們告別了單片機(jī)系統(tǒng)僅僅時裸機(jī)狀態(tài)下的開發(fā)和應(yīng)用,現(xiàn)在許多公司及企業(yè)大量使用專用的嵌入式操作系統(tǒng)被廣泛應(yīng)用在全系列的單片機(jī)上。從而使得單片機(jī)的功能被開發(fā)的更加強(qiáng)大及多元化。STC12C5A60S2是STC公司推出的一款功耗較低、抗干擾性好、性能強(qiáng)的COMS8bit微控制器。它是高速/低功耗/超強(qiáng)抗干擾的新一代8051單片機(jī),指令代碼完全兼容傳統(tǒng)8051,但速度快8-12倍。內(nèi)部集成MAX810專用復(fù)位電路,2路PWM,8路高速10位A/D轉(zhuǎn)換(250K/S),針對電機(jī)控制,強(qiáng)干擾場合。。STC12C5A60S2使用了傳統(tǒng)的MCS-51內(nèi)核,但具備了一般傳統(tǒng)8051單片機(jī)不具有的功能,速度的提升、存儲空間的增加和更多的寄存器數(shù)量。在單個芯片上,集成了一個8bit的CPU和可編程的FLASH,正是因?yàn)檫@個原因,使得STC12C5A60S2在嵌入式控制系統(tǒng)領(lǐng)域中占有一席之地。具有以下標(biāo)準(zhǔn)功能:8KByte的Flash,12802ByteRAM,44位準(zhǔn)雙向I/O口,并且集成了看門狗定時器,以及內(nèi)置1KBE2PROM,MAX810復(fù)位電路,外部掉電檢測電路,內(nèi)部R/C振蕩器,4個16位定時器/計(jì)數(shù)器,3個時鐘輸出口,7個外部中斷,兩路PWM(脈寬調(diào)制輸出)/PCA(可編程計(jì)數(shù)器陣列),8路10位精度ADC,工作頻率在0~35MHz(相當(dāng)于普通8051的0~420MHz),無需專用編程器和仿真器便可實(shí)現(xiàn)ISP和IAP,通用全雙工異步串行口,由于STC12系列是高速的8051,可再用定時器或者PCA軟件實(shí)現(xiàn)多串口。STC12C5A60S2有40個引腳,如圖2.2所示,引腳說明如下:圖2.2STC12C5A60S2芯片VCC:供電電壓;GND:接地;P0口:P0口為一個8位漏級開路雙向I/O口,每個管腳可吸收8TTL門電流。當(dāng)P0口的管腳寫“1”時,被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲器,它可以被定義為數(shù)據(jù)/地址的第八位。在FLASH編程時,P0口作為原碼輸入口,當(dāng)FLASH進(jìn)行校驗(yàn)時,P0輸出原碼,此時P0外部電位必須被拉高;P1口:P1口是一個內(nèi)部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。P1口管腳寫入“1”后,電位被內(nèi)部上拉為高,可用作輸入,P1口被外部下拉為低電平時,將輸出電流,這是由于內(nèi)部上拉的緣故。在FLASH編程和校驗(yàn)時,P1口作為第八位地址接收;P1口具有第二功能,如表2.1。表2.1P1第二功能表端口引腳第二功能P1.0/ADC0/CLKOUT2ADC輸入通道0;獨(dú)立波特率發(fā)生器的時鐘輸出P1.1/ADC1ADC輸入通道1P1.2/ADC2/ECI/RXD2ADC輸入通道2;PCA計(jì)數(shù)器的外部脈沖輸入腳;第二串口數(shù)據(jù)接收端P1.3/ADC3/CCP0/TXD2ADC輸入通道3;外部信號捕獲、高速脈沖輸出及PWM輸出;第二串口數(shù)據(jù)發(fā)送端P1.4/ADC4/CCP1/SSADC輸入通道4;外部信號捕獲、高速脈沖輸出及PWM輸出;SPI同步串行接口的從機(jī)選擇信號P1.5/ADC5/MOSIADC輸入通道4;SPI同步串行接口的主出從入P1.6/ADC6/MISOADC輸入通道5;SPI同步串行接口的主入從出P1.7/ADC7/SCLKADC輸入通道5;SPI同步串行接口的時鐘信號P2口:P2口為一個內(nèi)部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個TTL門電流,當(dāng)P2口被寫“1”時,其管腳電位被內(nèi)部上拉電阻拉高,且作為輸入。作為輸入時,P2口的管腳電位被外部拉低,將輸出電流,這是由于內(nèi)部上拉的緣故。P2口當(dāng)用于外部程序存儲器或16位地址外部數(shù)據(jù)存儲器進(jìn)行存取時,P2口輸出地址的高八位。在給出地址“1”時,它利用內(nèi)部上拉的優(yōu)勢,當(dāng)對外部八位地址數(shù)據(jù)存儲器進(jìn)行讀寫時,P2口輸出其特殊功能寄存器的內(nèi)容。P2口在FLASH編程和校驗(yàn)時接收高八位地址信號和控制信號;P3口:P3口管腳是8個帶內(nèi)部上拉電阻的雙向I/O口,可接收輸出4個TTL門電流。當(dāng)P3口寫入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入時,由于外部下拉為低電平,P3口將輸出電流(ILL),也是由于上拉的緣故。P3口也可作為AT89C51的一些特殊功能口:P3.0RXD(串行輸入口)P3.1TXD(串行輸出口)P3.2INT0(外部中斷0)P3.3INT1(外部中斷1)P3.4T0(記時器0外部輸入)P3.5T1(記時器1外部輸入)P3.6WR(外部數(shù)據(jù)存儲器寫選通)P3.7RD(外部數(shù)據(jù)存儲器讀選通)同時P3口同時為閃爍編程和編程校驗(yàn)接收一些控制信號;RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時,要保持RST腳兩個機(jī)器周期的高平時間;ALE/PROG:當(dāng)訪問外部存儲器時,地址鎖存允許的輸出電平用于鎖存地址的低位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時,ALE端以不變的頻率周期輸出正脈沖信號,此頻率為振蕩器頻率的1/6。因此它可用作對外部輸出的脈沖或用于定時目的。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲器時,將跳過一個ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時,ALE只有在執(zhí)行MOVX,MOVC指令時ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無效;PSEN:外部程序存儲器的選通信號。在由外部程序存儲器取址期間,每個機(jī)器周期PSEN兩次有效。但在訪問內(nèi)部部數(shù)據(jù)存儲器時,這兩次有效的PSEN信號將不出現(xiàn);EA/VPP:當(dāng)EA保持低電平時,訪問外部ROM;注意加密方式1時,EA將內(nèi)部鎖定為RESET;當(dāng)EA端保持高電平時,訪問內(nèi)部ROM。在FLASH編程期間,此引腳也用于施加12V編程電源(VPP);XTAL1:反向振蕩放大器的輸入及內(nèi)部時鐘工作電路的輸入;XTAL2:來自反向振蕩器的輸出;2.2.2ESP8266WIFI模塊ESP8266芯片是一款串口轉(zhuǎn)無線模芯片,內(nèi)部自帶固件,用戶操作簡單,無需編寫時序信號等。ESP8266特性:802.11b/g/n內(nèi)置低功耗32位CPU:可以兼作應(yīng)用處理器內(nèi)置10bit高精度ADC內(nèi)置TCP/IP協(xié)議棧內(nèi)置TR開關(guān)、balun、LNA、功率放大器和匹配網(wǎng)絡(luò)內(nèi)置PLL、穩(wěn)壓器和電源管理組件支持天線分集STBC、1x1MIMO、2x1MIMOMPDU、A-MSDU的聚合和0.4s的保護(hù)間隔WiFi@2.4GHz,支持WPA/WPA2安全模式支持STA/AP/STA+AP工作模式支持SmartConfig功能(包括Android和iOS設(shè)備)SDIO2.0、(H)SPI、UART、I2C、I2S、IRRemoteControl、PWM、GPIO深度睡眠保持電流為10uA,關(guān)斷電流小于5uA2ms之內(nèi)喚醒、連接并傳遞數(shù)據(jù)包802.11b模式下+20dBm的輸出功率待機(jī)狀態(tài)消耗功率小于1.0mW(DTIM3)工作溫度范圍:-40°C-125°C通過FCC,CE,TELEC,WiFiAlliance及SRRC認(rèn)證2.2.3人體紅外感應(yīng)模塊HC-SR501HC-SR501是基于紅外線技術(shù)的自動控制模塊,采用德國原裝進(jìn)口LHI778探頭設(shè)計(jì),靈敏度高,可靠性強(qiáng),超低電壓工作模式,廣泛應(yīng)用于各類自動感應(yīng)電器設(shè)備,技術(shù)參數(shù)如下:工作電壓:DC5V~20V;靜態(tài)功耗:65mA;電平輸出:高3.3V,低0V;延時時間可調(diào):0.3S~10Min;觸發(fā)方式:L不可重復(fù),H可重復(fù),默認(rèn)值為H;感應(yīng)范圍:小于120°錐角,7米以內(nèi);其中,不可重復(fù)觸發(fā)方式:即感應(yīng)輸出高電平后,延時時間一結(jié)束,輸出將自動從高電平變?yōu)榈碗娖?。可重?fù)觸發(fā)方式:即感應(yīng)輸出高電平后,在延時時間段內(nèi),如果有人體在其感應(yīng)范圍內(nèi)活動,其輸出將一直保持高電平,直到人離開后才延時將高電平變?yōu)榈碗娖?感應(yīng)模塊檢測到人體的每一次活動后會自動順延一個延時時間段,并且以最后一次活動的時間為延時時間的起始點(diǎn))。本次設(shè)計(jì)采用可重復(fù)觸發(fā)方式。2.2.4光敏電阻傳感器模塊該模塊可以檢測周圍環(huán)境的亮度和光強(qiáng),靈敏度可調(diào),工作電壓3.3V-5V,輸出形式為模擬量電壓輸出和數(shù)字開關(guān)量輸出(0和1),其實(shí)物圖如2.3所示。圖2.3模塊實(shí)物圖2.3軟件開發(fā)平臺圖2.4KEIL5界面圖本設(shè)計(jì)選用KEIL5進(jìn)行編程。KeilC51開發(fā)系統(tǒng)兼容51系列單片機(jī)依靠C語言編程的開發(fā)環(huán)境,C語言在結(jié)構(gòu)性、可維護(hù)性可讀性和功能上與其他匯編語言相比具有更多的優(yōu)勢,更方便操作掌握,提供了一個完美的集成開發(fā)環(huán)境。將宏匯編、連接器、C編譯器等高效的結(jié)合成一個整體。Keil軟件可在WIN98、NT、WIN2000、WINXP、WIN7等操作系統(tǒng)上運(yùn)行。由于其有強(qiáng)大的仿真功能,因此我選擇Keil軟件。KeilC51編程環(huán)境中集成了大量的庫函數(shù)支持庫函數(shù)編程而且內(nèi)置了許多很常用的工具箱,這為我們的開發(fā)過程提供了極大的方便。在編譯過程中我們可以查看寄存器,查看I/O端口的狀態(tài)等等。如果編譯出錯我們還可以在窗口中及時查找報錯原因。KeilC51編程環(huán)境中標(biāo)準(zhǔn)配備的仿真器使用的晶振頻率是11.0592MHz。但是在實(shí)際項(xiàng)目中我們可以依據(jù)實(shí)際情況選用適當(dāng)晶振頻率的晶振。為了保證實(shí)現(xiàn)準(zhǔn)確分頻,本設(shè)計(jì)選用11.0592MHz的晶振。KeilC51編程環(huán)境中的工具箱的完整結(jié)構(gòu)如下:uVision和Ishell分別是C51forWindows與forDos集成的開發(fā)環(huán)境,雖然DOS在51開發(fā)中不經(jīng)常用到但是KeilC51編程環(huán)境仍然保留了這部分。我們可以利用這些工具箱實(shí)現(xiàn)編譯、仿真調(diào)試等所有軟件開發(fā)所必須的步驟。我們可以進(jìn)行源代碼級的調(diào)試。在對目標(biāo)文件進(jìn)行調(diào)試時我們不但可由仿真器直接調(diào)試,也能夠直接將其寫入程序存儲器中。3硬件電路實(shí)現(xiàn)3.1單片機(jī)最小系統(tǒng)3.1.1復(fù)位電路考慮到設(shè)計(jì)要求,本設(shè)計(jì)中的復(fù)位電路集手動復(fù)位及上電自動復(fù)位于一體,通過按鍵S1實(shí)現(xiàn)系統(tǒng)的手動復(fù)位。1)上電自動復(fù)位通過外部復(fù)位電路的電容C3的充電來實(shí)現(xiàn),只要電源VCC的上升時間不超過1ms,就可以實(shí)現(xiàn)自動上電復(fù)位。2)按鍵手動復(fù)位是通過使復(fù)位端經(jīng)電阻與VCC接通而實(shí)現(xiàn)的。圖3.1單片機(jī)最小系統(tǒng)3.1.2時鐘振蕩電路STC12C5A60S2單片機(jī)內(nèi)部集成RC振蕩器作為時鐘源,如果不外接晶體振蕩器,可以直接使用內(nèi)部RC振蕩器,但是內(nèi)部RC振蕩器的精度不高,考慮系統(tǒng)運(yùn)行速度,采用11.0592MHZ的外接石英晶振,并使用兩個小電容作為微調(diào)電容,具體設(shè)計(jì)見圖3.1。3.2WIFI模塊及電源電路本次設(shè)計(jì)的wifi模塊與MCU連接電路如圖3.2所示。圖3.2wifi與MCU連接原理如圖3.2,wifi模塊的供電電源為3.3V,而單片機(jī)及其他模塊的供電電源為5V,為此需要為WIFI模塊增加電源轉(zhuǎn)換電路。本次設(shè)計(jì)采用ASM1117-3.3模塊,這是一種輸出電壓為3.3V的正向低壓降穩(wěn)壓器,接線圖如圖3.3所示。圖3.35V轉(zhuǎn)3.3V電源3.3HC-SR501人體紅外感應(yīng)電路如第二章所說,HC-SR501模塊輸出為數(shù)字量,可以很方便的搭配STC12單片機(jī)IO口進(jìn)行使用,連線見圖3.4。圖3.4HC-SR501與MCU連線圖3.4環(huán)境光檢測模塊圖3.5光敏電阻接線圖本次設(shè)計(jì)因?yàn)樾枰鶕?jù)環(huán)境光強(qiáng)度調(diào)節(jié)臺燈亮度,因此采用該模塊的模擬量輸出,同時接STC12芯片的P1.1接口,自帶ADC轉(zhuǎn)換功能。3.5LED驅(qū)動電路LED驅(qū)動電路如圖3.6所示,設(shè)計(jì)思路是用單片機(jī)IO口控制PNP型三極管通斷,從而控制LED的亮滅,同時利用的是單片機(jī)的PWM輸出口,通過調(diào)節(jié)占空比從而可以控制LED的亮度。圖3.6LED驅(qū)動電路

4程序設(shè)計(jì)4.1主程序流程圖根據(jù)本次研究課題的任務(wù)目標(biāo)及功能要求,主程序流程圖如圖4.1所示:圖4.1程序主流程圖首先開機(jī)后根據(jù)硬件撥片開關(guān)位置判斷是手機(jī)遠(yuǎn)程操作模式還是本地模式。如果是本地模式則人體紅外感應(yīng)模塊工作,如果檢測到人來,則打開臺燈并時刻調(diào)節(jié)光線,如果是遠(yuǎn)程操作模式,則通過手機(jī)控制臺燈工作狀態(tài)。4.2本地操作模式本地操作模式的主程序如下所示: if(mode==1)//本地模式 { wifi_flag=0; if(infrared==1)//有人進(jìn)入 { if(pwm_flag==0) { pwm_open(); pwm_flag=1; } light_value=(adc10_start(1)*5)/1024; if(light_value<1.5){duty=30;} elseif(light_value<3){duty=100;} elseif(light_value<4){duty=180;} else{duty=240;} set_pwm_duty(duty); } if(infrared==0) { pwm_close(); pwm_flag=0; } }主要編程思想是:首先判斷是否有人靠近,如果有人靠近則開啟PWM輸出,同時進(jìn)行一次AD轉(zhuǎn)換,將當(dāng)前光照強(qiáng)度所對應(yīng)的電壓值傳入單片機(jī)。將電壓值分為四檔,根據(jù)電壓值選擇相應(yīng)的占空比設(shè)值,最后調(diào)用占空比設(shè)值函數(shù),輸出相應(yīng)的PWM波形控制燈光亮度。4.3遠(yuǎn)程操作模式遠(yuǎn)程操作模式因?yàn)樾枰M(jìn)行通信,所以首先需要制定相應(yīng)的通信協(xié)議,本次設(shè)計(jì)采用機(jī)智云提供的通信協(xié)議,主要的通信時序?yàn)椋菏紫葁ifi模塊向MCU詢問當(dāng)前設(shè)備信息,MCU進(jìn)行應(yīng)答握手,握手成功后雙方可以開始控制通信。因?yàn)樾枰獙?shí)現(xiàn)燈的亮滅以及亮度,可見需要控制的量為兩個,一個為布爾類型,一個為數(shù)值類型,兩個都是wifi可寫變量??刂屏鞒虨椋簑ifi主動向MCU發(fā)送控制命令,MCU回復(fù)收到命令,同時主動上報一次設(shè)備的最新狀態(tài)。 case0x03://WiFi模組與設(shè)備交互 if(usartbuf[3]=0x08&&usartbuf[8]==0x01)//WIFI模組=>MCU { Control_Mcu(); mcu_send_10[5]=sn; for(i=2;i<8;i++) { checksum=checksum+mcu_send_10[i]; } checksum=checksum%256; mcu_send_10[8]=checksum; Usart_SendArrang(mcu_send_10,9);//mcu回復(fù) mcu_send_9[5]=sn; mcu_send_9[10]=duty1; for(i=2;i<11;i++) { checksum=checksum+mcu_send_9[i]; } checksum=checksum%256; mcu_send_9[11]=checksum; Usart_SendArrang(mcu_send_9,12); //mcu主動上報設(shè)備狀態(tài) break; }4.4PWM輸出脈沖寬度調(diào)制(PWM)是英文“PulseWidthModulation”的縮寫,簡稱脈寬調(diào)制。它是利用微處理器的數(shù)字輸出來對模擬電路進(jìn)行控制的一種非常有效的技術(shù),廣泛應(yīng)用于測量,通信,功率控制與變換等許多領(lǐng)域。脈沖寬度調(diào)制(PWM)是一種對模擬信號電平進(jìn)行數(shù)字編碼的方法。通過高分辨率計(jì)數(shù)器的使用,方波的占空比被調(diào)制用來對一個具體模擬信號的電平進(jìn)行編碼。PWM信號仍然是數(shù)字的,因?yàn)樵诮o定的任何時刻,滿幅值的直流供電要么完全有(ON),要么完全無(OFF)。電壓或電流源是以一種通(ON)或斷(OFF)的重復(fù)脈沖序列被加到模擬負(fù)載上去的。通的時候即是直流供電被加到負(fù)載上的時候,斷的時候即是供電被斷開的時候。只要帶寬足夠,任何模擬值都可以使用PWM進(jìn)行編碼。使用STC12單片機(jī)產(chǎn)生PWM波形,主要是配置相關(guān)的寄存器,設(shè)置好占空比,從而實(shí)現(xiàn)需要的PWM波形。源碼如下:voi

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論