此為單片機(jī)課程設(shè)計(jì),內(nèi)容包含:
智能臺燈課程設(shè)計(jì)說明書;
protues電路仿真;
程序源碼;
全部資料51hei下載地址:
單片機(jī)課設(shè)---智能臺燈.zip
(1.86 MB, 下載次數(shù): 343)
2018-7-4 18:40 上傳
點(diǎn)擊文件名下載附件
智能臺燈課程設(shè)計(jì)說明書
摘要
隨著能源的短缺,節(jié)能環(huán)保越來越被大家所重視。目前有許多臺燈設(shè)計(jì)不合理,以至于能源被大大浪費(fèi)。另外中國青少年的近視率一直居高不下,成為困擾中國家庭的主要問題。隨著科學(xué)技術(shù)的進(jìn)步,科學(xué)家希望通過人工干預(yù)和治療,從根本上解決近視問題。然而現(xiàn)代醫(yī)學(xué)的發(fā)展雖然可以解決很多曾經(jīng)困擾人類的疑難問題,卻仍然不能從根源上預(yù)防和祛除近視。我們通過對影響視力的各種因素進(jìn)行實(shí)驗(yàn),發(fā)現(xiàn)造成青少年視力下降的最主要根源是燈光。傳統(tǒng)護(hù)眼燈為了達(dá)到提高頻率的目的,使用了高頻鎮(zhèn)流器,使得護(hù)眼燈的電磁輻射遠(yuǎn)比一般的電器高得多,是手機(jī)、電腦的數(shù)倍甚至數(shù)十倍,嚴(yán)重影響視力。而LED照明技術(shù)的出現(xiàn),為我們提供了消除僅是問題的途徑。為了使電力得到高效利用,本文提出一種基于單片機(jī)的智能LED臺燈設(shè)計(jì),該臺燈具有手動、自動兩種調(diào)節(jié)方式,能夠在保證正常實(shí)用的狀況下又能使電力得到充分利用。
目錄 摘要 一、設(shè)計(jì)要求 二、設(shè)計(jì)思路 2.1必做項(xiàng)目 2.2選做項(xiàng)目 三、系統(tǒng)設(shè)計(jì) 3.1硬件設(shè)計(jì) 3.1.1矩陣鍵盤掃描電路 3.1.2 LCD1602顯示電路 3.1.3繼電器應(yīng)用電路 3.1.4 ADC0832數(shù)據(jù)采集電路 3.1.5光敏電路 3.1.6以51為核心的中央處理部分 3.1.7數(shù)碼管顯示電路 3.1.8 LED驅(qū)動電路 3.1.9 按鍵及開關(guān)控制電路 3.2軟件設(shè)計(jì) 3.2.1調(diào)光方案的選擇 3.2.2調(diào)光設(shè)計(jì) 3.2.3光敏電阻反饋設(shè)計(jì) 3.2.4總體框圖 4設(shè)計(jì)總結(jié) 5參考文獻(xiàn) 6主程序設(shè)計(jì) 6.1矩陣鍵盤掃描程序 6.2數(shù)碼管動態(tài)顯示程序 6.3 LCD1602液晶顯示程序 6.4串口通訊程序 6.5智能臺燈設(shè)計(jì)程序 一、設(shè)計(jì)要求必做項(xiàng)目: 基本系統(tǒng):在51單片機(jī)開發(fā)系統(tǒng)PCB電路板上完成電子元器件的焊接、調(diào)試、程序下載,并實(shí)現(xiàn)數(shù)碼管顯示、矩陣鍵盤掃描、中斷程序、定時(shí)器程序、串口通訊等基本功能; 2.顯示功能:焊接電路并實(shí)現(xiàn)對1602液晶屏的顯示功能,要求能滾動顯示字符; 3.輸出控制:焊接電路并實(shí)現(xiàn)對繼電器的控制功能; 4.?dāng)?shù)據(jù)采集:焊接電路并實(shí)現(xiàn)對AD0832的數(shù)據(jù)采集功能; 選做項(xiàng)目: 根據(jù)環(huán)境光強(qiáng)度自動調(diào)節(jié)LED亮度,通過光敏元器件采集環(huán)境亮度,通過PWM方式控制LED燈亮度。定時(shí)自動關(guān)燈,設(shè)定關(guān)燈時(shí)間,到時(shí)間由量逐漸變暗。分自動模式和手動模式,手動模式由用戶自行設(shè)置燈光亮度,手燈模式根據(jù)光敏元件的光敏特性保持亮度恒定。 二、設(shè)計(jì)思路2.1必做項(xiàng)目1、矩陣鍵盤掃描電路 2、LCD1602顯示電路 3、繼電器應(yīng)用電路 4、ADC0832數(shù)據(jù)采集電路 2.2選做項(xiàng)目1、光敏電路 2、A/D轉(zhuǎn)換電路 3、以51為核心的中央處理部分 4、數(shù)碼管顯示電路 5、LED驅(qū)動電路 6、按鍵及開關(guān)控制電路 三、系統(tǒng)設(shè)計(jì)3.1硬件設(shè)計(jì) 系統(tǒng)各模塊硬件設(shè)計(jì)原理圖如圖所示: 圖1 系統(tǒng)硬件設(shè)計(jì)原理圖 圖2系統(tǒng)硬件設(shè)計(jì)實(shí)物圖 3.1.1矩陣鍵盤掃描電路矩陣鍵盤又稱為行列式鍵盤,它是用4條I/O線作為行線,4條I/O線作為列線組成的鍵盤。在行線和列線的每一個交叉點(diǎn)上,設(shè)置一個按鍵。這樣鍵盤中按鍵的個數(shù)是4×4個。這種行列式鍵盤結(jié)構(gòu)能夠有效地提高單片機(jī)系統(tǒng)中I/O口的利用率。本項(xiàng)目設(shè)計(jì)矩陣鍵盤電路如圖1所示,行線接P2_4-P2_7,列線接P2_0-P2_3。 圖3 矩陣鍵盤掃描電路原理圖 3.1.2 LCD1602顯示電路LCD1602是一種字符型液晶顯示器,它的主控芯片是HD44780或者其它兼容芯片。有16引腳和14引腳,與16引腳相比,缺少背光電源和地線,共有四種基本操作,與RS和RW口控制,內(nèi)置DDRAM,即顯示數(shù)據(jù)RAM,用來寄存器顯示的字符代碼,共80個字節(jié),電路連接圖如圖2所示。 圖4 LCD1602電路原理圖 3.1.3繼電器應(yīng)用電路 電磁式繼電器一般由鐵芯、線圈、銜鐵、觸點(diǎn)簧片等組成的。只要在線圈兩端加上一定電壓,線圈中就會流過一定電流,從而產(chǎn)生電磁效應(yīng),銜鐵就會在電磁力吸引作用下克服返回彈簧的拉力吸向鐵芯,從而帶動銜鐵的動觸點(diǎn)和靜觸點(diǎn)(常開觸點(diǎn))吸合。當(dāng)線圈斷電時(shí),電磁的吸力也隨之消失,銜鐵就會在彈簧的反作用力返回原來的位置,使動觸點(diǎn)與原來的靜觸點(diǎn)吸合,這樣吸合、釋放,從而達(dá)到了在電路中的導(dǎo)通、切斷目的。對于繼電器的“常開、常閉”觸點(diǎn),可以這樣來區(qū)分,繼電器未通電時(shí),處于斷開狀態(tài)的靜觸點(diǎn),稱為 “常開觸點(diǎn)”,處于接通狀態(tài)的靜觸點(diǎn),稱為 “常閉觸點(diǎn)”。 圖5 繼電器應(yīng)用電路原理圖 3.1.4 ADC0832數(shù)據(jù)采集電路ADC0832是CMOS器件,不僅包括一個8位的逐次逼近型的ADC部分,而且還提供一個8通道的模擬多路開關(guān)和通道尋址邏輯。利用它可直接輸入8個單端的模擬信號分時(shí)進(jìn)行A/D轉(zhuǎn)換。ADC0832的參考電壓設(shè)置成5 V,時(shí)鐘信號通過單片機(jī)P2_7口利用定時(shí)器中斷輸出。滑動變阻器的對地電壓從CH0或CH1口輸入,ADC0832將其轉(zhuǎn)換成數(shù)字量后通過OUT1-7輸出,以便單片機(jī)進(jìn)一步處理,如圖。 圖6 ADC0832電路連接原理圖 3.1.5光敏電路光敏電阻又稱光導(dǎo)管,常用的制作材料為硫化鎘,另外還有硒、硫化鋁、硫化鉛和硫化鉍等材料。這些制作材料具有在特定波長的光照射下,其阻值迅速減小的特性。這是由于光照產(chǎn)生的載流子都參與導(dǎo)電,在外加電的作用下作漂移運(yùn)動,電子奔向電源的正極,空穴奔向電源的負(fù)極,從而使光敏電阻器的阻值迅速下降。光敏電阻器是利用半導(dǎo)體的光電導(dǎo)效應(yīng)制成的一種電阻值隨入射光的強(qiáng)弱而改變的電阻器,又稱為光電導(dǎo)探測器;入射光強(qiáng),電阻減小,入射光弱,電阻增大。還有另一種入射光弱,電阻減小,入射光強(qiáng),電阻大。 圖7 光敏電路原理圖 3.1.6以51為核心的中央處理部分主控芯片采用AT89C51單片機(jī)芯片,AT89C51單片機(jī)芯片有40個外部I/O 口,可用作對外部硬件的控制接口。其中P0.0-P0.7八個I/O口外接10K的電阻作為上拉電阻。40引腳為電平引腳外接五伏電壓,20引腳為接地引腳,18和19 引腳為外部晶振接口,為芯片提供晶振,9引腳為外部復(fù)位電路接口,P1.0-P1.7作為數(shù)碼管位選控制端口和LCD1602數(shù)據(jù)端口,P2.0-P2.7作為矩陣鍵盤掃描端口和其他控制端。中央處理部分主要包括時(shí)鐘電路和復(fù)位電路,如圖所示。 圖8 中央處理部分電路原理圖 3.1.7數(shù)碼管顯示電路 數(shù)碼管顯示電路的作用是顯示當(dāng)前自然光強(qiáng)度即定時(shí)顯示,有八位數(shù)碼管進(jìn)行顯示,A-dp接口為端選信號接口,P1_0-P1_7為位選信號接口,分別由P2口和P1口控制,電路設(shè)計(jì)如下。 圖9 數(shù)碼管顯示電路原理圖 3.1.8 LED驅(qū)動電路三極管在實(shí)際的放大電路中使用時(shí),還需要加合適的偏置電路。首先是由于三極管BE結(jié)的非線性(相當(dāng)于一個二極管),基極電流必須在輸入電壓 大到一定程度后才能產(chǎn)生(對于硅管,常取0.7 V)。當(dāng)基極與發(fā)射極之間的電壓小于0.7 V時(shí),基極電流就可以認(rèn)為是0。但實(shí)際中要放大的信號往往遠(yuǎn)比0.7 V要小,如果不加偏置的話,這么小的信號就不足以引起基極電流的改變(因?yàn)樾∮?.7 V時(shí),基極電流都是0),那么當(dāng)一個小信號跟這個偏置電流疊加在一起時(shí),小信號就會導(dǎo)致基極電流的變化,而基極電流的變化,就會被放大并在集電極上輸出。 LED的亮度受電流控制,通過控制電流調(diào)節(jié)LED燈亮度。利用公式 可知,利用調(diào)整PWM不同的占空比 就可以控制電流的大小。電流通斷的變化用PNP型三極管實(shí)現(xiàn),PWM由P3_3輸出 圖10 LED驅(qū)動電路原理圖 3.1.9 按鍵及開關(guān)控制電路單片機(jī)鍵盤有獨(dú)立鍵盤和矩陣式鍵盤兩種:獨(dú)立鍵盤每一個I/O口上只接一個按鍵,按鍵的另一端接電源或接地(一般接地),這種接法程序比較簡單且系統(tǒng)更加穩(wěn)定;而矩陣式鍵盤式接法程序比較復(fù)雜,但是占用的I/O少。本設(shè)計(jì)選用了獨(dú)立式鍵盤接法。 獨(dú)立式鍵盤的實(shí)現(xiàn)方法是利用單片機(jī)I/O口讀取口的電平高低來判斷是否有鍵按下。將常開按鍵的一端接地,另一端接一個I/O口,程序開始時(shí)將此I/O口置于高電平,平時(shí)無鍵按下時(shí)I/O口保護(hù)高電平。當(dāng)有鍵按下時(shí),此I/O口與地短路迫使I/O口為低電平。按鍵釋放后,單片機(jī)內(nèi)部的上拉電阻使I/O口仍然保持高電平[5]。我們所要做的就是在程序中查尋此I/O口的電平狀態(tài)就可以了解我們是否有按鍵動作了。在用單片機(jī)對鍵盤處理的時(shí)候涉及到了一個重要的過程,那就是鍵盤的去抖動。這里說的抖動是機(jī)械的抖動,是當(dāng)鍵盤在未按到按下的臨界區(qū)產(chǎn)生的電平不穩(wěn)定正常現(xiàn)象,并不是我們在按鍵時(shí)通過注意可以避免的。這種抖動一般10~200毫秒之間,這種不穩(wěn)定電平的抖動時(shí)間對于人來說太快了,而對于時(shí)鐘是微秒的單片機(jī)而言則是慢長的。硬件去抖動就是用部分電路對抖動部分加之處理,軟件去抖動不是去掉抖動,而是避抖動部分的時(shí)間,等鍵盤穩(wěn)定了再對其處理。所以這里選擇了軟件去抖動,實(shí)現(xiàn)法是先查尋按鍵當(dāng)有低電平出現(xiàn)時(shí)立即延時(shí)10~200毫秒以避開抖動(經(jīng)典值為20毫秒),延時(shí)結(jié)束后再讀一次I/O口的值,這一次的值如果為1表示低電平的時(shí)間不到10~200 毫秒,視為干擾信號。當(dāng)讀出的值是0時(shí)則表示有按鍵按下,調(diào)用相應(yīng)的處理程序。 本項(xiàng)目設(shè)計(jì)P2_0、P2_1和P2_2分別與矩陣鍵盤連接,分別用于調(diào)節(jié)燈光的亮度,定時(shí)調(diào)節(jié)。 圖11 鍵盤控制電路 3.2軟件設(shè)計(jì)3.2.1調(diào)光方案的選擇 調(diào)光設(shè)計(jì)有兩種方案來調(diào)節(jié)亮度:用正向電流的方法來調(diào)亮度和采用脈寬調(diào)制來調(diào)光。用正向電流的方法來調(diào)亮度是通過調(diào)整正向電流的大小的改變可以改變LED的亮度,但是通過電流的大小的改變并不是最佳選擇,因?yàn)橥ㄟ^電流的改變,使LED的壽命減少,還容易引起閃爍;LED 是一個二極管,它可以實(shí)現(xiàn)快速開關(guān)。它的開關(guān)速度可以高達(dá)微秒以上。是任何發(fā)光器件所無法比擬的。因此,只要把電源改成脈沖恒流源,用改變脈沖寬度的方法,就可以改變其亮度。這種方法稱為脈寬調(diào)制(PWM)調(diào)光法。假如脈沖的周期為tpwm,脈沖寬度為ton,那么其工作比D(或稱為孔度比)就是ton/tpwm.改變恒流源脈沖的工作比就可以改變LED 的亮度。 3.2.2調(diào)光設(shè)計(jì)由于模擬光是直接改變流過LED電流的大小來實(shí)現(xiàn)亮度調(diào)節(jié),除了亮度會改變以外,也會影響白光的質(zhì)量,即不同電流下發(fā)出的白光存在色偏。因此,本設(shè)計(jì)采用PWM調(diào)光方案,PWM調(diào)光的基本原理是保持LED正向?qū)娏骱愣ǎㄟ^控制電流導(dǎo)通和關(guān)斷的時(shí)間比列,即改變輸入脈沖信號的占空比,使LED產(chǎn)生亮暗變化;并利用人眼的視覺殘留效應(yīng),當(dāng)LED亮暗變化頻率大于120HZ時(shí),人眼就不會感覺到閃爍,而看到的是LED的平均亮度。PWM調(diào)光的優(yōu)勢是LED正向?qū)ǖ碾娏魇呛愣ǖ模琇ED的色度就不會像模擬調(diào)光時(shí)產(chǎn)生變化。 3.2.3光敏電阻反饋設(shè)計(jì)光敏電阻器是利用半導(dǎo)體的光電效應(yīng)制成的一種電阻值隨入射光的強(qiáng)弱而改變的電阻器;入射光強(qiáng),電阻減小,入射光弱,電阻增大。光敏電阻器一般用于光的測量、光的控制和光電轉(zhuǎn)換。因此,不斷采集光敏電阻對地的電壓便可以獲知臺燈周邊光強(qiáng)的變化。在程序中通過ADC0832反饋的數(shù)字信號來調(diào)節(jié)PWM占空比,光度越強(qiáng),光敏電阻阻值越小,電壓對應(yīng)的數(shù)字信號越小,占空比越小,反之,光強(qiáng)越強(qiáng),占空比越大,本項(xiàng)目設(shè)計(jì)利用PWM設(shè)計(jì)了10個檔位。 3.2.4總體框圖圖12 程序設(shè)計(jì)流程圖 4設(shè)計(jì)總結(jié)通過對具體電路的設(shè)計(jì)與分析,成功的完成了電路的仿真測試,并在驗(yàn)證結(jié)果無誤的情況下進(jìn)行實(shí)物制作,但在該過程中,遇到的困難較多,除了數(shù)碼管顯示模糊之外,還遇到光敏電阻不夠精確,采集的信號輸出不穩(wěn)定,調(diào)時(shí)設(shè)置未按預(yù)想的方式工作等,但通過對本課程設(shè)計(jì)的研究,我進(jìn)一步了解了單片機(jī)的工作原理,能夠通過C語言編寫單片機(jī)程序,驗(yàn)證并成功實(shí)現(xiàn)具體功能,同時(shí)提高分析電路的能力,不僅局限于外圍電路,更能從整體出發(fā),從各組成部分的內(nèi)部電路結(jié)構(gòu)和功能原理方面入手,全面透徹的分析整個電路的工作原理同時(shí)分析不同簡單芯片的內(nèi)部結(jié)構(gòu),不斷地獲取新知識,擴(kuò)展自己的知識儲備,并學(xué)會運(yùn)用了protues軟件進(jìn)行仿真,實(shí)物制作過程中遇到與仿真結(jié)果相左的情況時(shí),能通過測試工具對實(shí)際電路進(jìn)行測量調(diào)試,不斷地改進(jìn)電路,提出新的解決方案,提升了“發(fā)現(xiàn)問題解決問題”的能力,是一個長足的進(jìn)步。
|