版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
摘要隨著電子技術(shù)的開展、數(shù)字電路應(yīng)用領(lǐng)域的擴(kuò)展,現(xiàn)今社會,產(chǎn)品智能化、數(shù)字化已成為人們追求的一種趨勢,設(shè)備的性能、價(jià)格、開展空間等備受人們關(guān)注。性能好的電子設(shè)備,對外圍保護(hù)電路要求很高,尤其是精密儀器對光線要求等設(shè)備要求更高,為了延長設(shè)備的使用壽命。所以,在企業(yè)設(shè)備保護(hù)中,設(shè)計(jì)一款智能的光電檢測報(bào)警電路尤為重要。本設(shè)計(jì)采用單片機(jī)作為數(shù)據(jù)處理與控制單元,為了進(jìn)行數(shù)據(jù)處理,通過光敏電阻來感應(yīng)光強(qiáng)弱變化,經(jīng)過ADC0809轉(zhuǎn)換,直接將數(shù)字信號送入到單片機(jī)中進(jìn)行數(shù)據(jù)處理。單片機(jī)數(shù)據(jù)處理之后,將光照強(qiáng)度發(fā)送到LED進(jìn)行顯示,并通過蜂鳴器和LED進(jìn)行聲光報(bào)警。關(guān)鍵詞:單片機(jī),ADC0809,光敏電阻,蜂鳴器ABSTRACTWiththedevelopmentofelectronictechnology,theexpansionofthedigitalcircuitapplications,today'ssociety,theproductofintelligent,digitalhasbecomeatrendforpeopletopursue,equipmentperformance,price,roomfordevelopment,andsomuchattention.Goodperformanceelectronicdevices,highexternalprotectioncircuit,precisioninstruments,lightrequirements,equipmentrequirements,inordertoextendtheusefullifeofequipment.Therefore,intheprotectionofbusinessequipment,thedesignofanintelligentphotoelectricdetectoralarmcircuitisparticularlyimportant.Thisdesignusesamicrocontrollerasdataprocessingandcontrolunitfordataprocessing,theSCMADC0809acquisitionphotoresistorand10Kresistorvoltagedividertosensethelightintensitychange.MCUdataprocessingwillbesentwhenthelightintensitytotheLEDdisplay.SoundandlightalarmbuzzerandLED.Keywords:MCU,ADC0809,Photoresistor,buzzer目錄摘要IABSTRACTII第1章引言11.1課題背景11.2光強(qiáng)檢測的意義與技術(shù)開展11.3課題內(nèi)容2第2章光強(qiáng)檢測報(bào)警器的設(shè)計(jì)方案32.1系統(tǒng)的方案分析32.2單片機(jī)的選型32.3顯示方案選擇42.4AD轉(zhuǎn)換方案4第3章光強(qiáng)檢測報(bào)警器硬件設(shè)計(jì)53.1硬件設(shè)計(jì)53.2AT89S52單片機(jī)63.2.1AT89S52的引腳63.2.2AT89S52的時(shí)鐘電路73.2.3AT89S52的復(fù)位電路8ADC0809電路93.3.1A/D轉(zhuǎn)換器芯片ADC0809簡介9單片機(jī)與ADC0809的接口113.4顯示電路123.5光強(qiáng)采集電路133.6鍵盤電路143.7控制輸出電路15第4章系統(tǒng)程序設(shè)計(jì)164.1設(shè)計(jì)思路與流程圖16子程序17數(shù)據(jù)處理程序18顯示子函數(shù)19按鍵程序20執(zhí)行子程序20第5章系統(tǒng)調(diào)試和功能測試225.1系統(tǒng)硬件調(diào)試225.2系統(tǒng)軟件調(diào)試225.3系統(tǒng)功能測試23結(jié)束語25致謝26參考文獻(xiàn)27附錄電路圖28附錄PCB28第1章引言1.1課題背景隨著電子技術(shù)的開展、數(shù)字電路應(yīng)用領(lǐng)域的擴(kuò)展,現(xiàn)今社會,產(chǎn)品智能化、數(shù)字化已成為人們追求的一種趨勢,設(shè)備的性能、價(jià)格、開展空間等備受人們關(guān)注。性能好的電子設(shè)備,對外圍保護(hù)電路要求很高,尤其是精密儀器對光線要求等設(shè)備要求更高,為了延長設(shè)備的使用壽命。所以,在企業(yè)設(shè)備保護(hù)中,設(shè)計(jì)一款智能的光電檢測報(bào)警電路尤為重要。光強(qiáng)檢測報(bào)警器主要根據(jù)光敏電阻的特性制作的。光敏電阻值隨受到的光照強(qiáng)度的變化而變化〔光照強(qiáng)度越大,電阻值越小〕。將光敏電阻接入電路中,不同光照強(qiáng)度導(dǎo)致光敏電阻值變化,于是光敏電阻上的電壓發(fā)生變化,導(dǎo)致電路的輸出電壓也相應(yīng)變化。根據(jù)電壓-光照度函數(shù)關(guān)系,由電壓計(jì)算得到光照強(qiáng)度值,然后以可視化界面形式輸出〔LED數(shù)碼管顯示〕,以供用戶查看結(jié)果。其中光敏電阻的特性是光敏電阻隨受到的光照強(qiáng)度的變化電阻值發(fā)生變化,光照強(qiáng)度越強(qiáng)電阻越小,在分壓電路中獲得電壓越低。根據(jù)這一特性,結(jié)合光照強(qiáng)度和輸出的模擬電壓之間的關(guān)系,可以得到某一光強(qiáng)度下的對應(yīng)的模擬電壓。將模擬電壓通過AD轉(zhuǎn)化器轉(zhuǎn)換為數(shù)字電壓,以便于計(jì)算機(jī)處理。然后再將數(shù)字電壓轉(zhuǎn)換成光照度。1.2光強(qiáng)檢測的意義與技術(shù)開展光是人類生產(chǎn)生活所必須的一種元素,是一種能量的形態(tài),它可以從一個(gè)物體傳播到另一個(gè)物體,其中無需任何物質(zhì)作媒介?,F(xiàn)在化蔬菜大棚需要控制光照強(qiáng)度,從而使蔬菜快速正常生長;禽舍需要控制光照強(qiáng)度,使動(dòng)物健康正常生長;人們的生活環(huán)境〔學(xué)生的學(xué)習(xí)環(huán)境,辦公室,工廠等〕需要控制光照強(qiáng)度,使人們有一個(gè)好學(xué)習(xí)生活環(huán)境。但是在工業(yè)生產(chǎn)中,光強(qiáng)過強(qiáng)或過弱,就可能引起生產(chǎn)平安、產(chǎn)品質(zhì)量、產(chǎn)品產(chǎn)量等一系列問題。因此對光強(qiáng)的檢測的意義就越來越大。光強(qiáng)檢測系統(tǒng)在工業(yè)生產(chǎn)、科學(xué)研究和人們的生活領(lǐng)域中,得到了廣泛應(yīng)用。在工業(yè)生產(chǎn)過程中,很多時(shí)候都需要對光強(qiáng)進(jìn)行嚴(yán)格的監(jiān)控,以使得生產(chǎn)能夠順利的進(jìn)行,產(chǎn)品的質(zhì)量才能夠得到充分的保證。光強(qiáng)檢測報(bào)警系統(tǒng)是在嵌入式系統(tǒng)設(shè)計(jì)的根底上開展起來的。嵌入式系統(tǒng)雖然起源于微型計(jì)算機(jī)時(shí)代,但是微型計(jì)算機(jī)的體積、價(jià)位、可靠性,都無法滿足廣闊對象對嵌入式系統(tǒng)的要求,因此,嵌入式系統(tǒng)必須走獨(dú)立開展道路。這條道路就是芯片化道路。將計(jì)算機(jī)做在一個(gè)芯片上,從而開創(chuàng)了嵌入式系統(tǒng)獨(dú)立開展的單片機(jī)時(shí)代。單片機(jī)誕生于二十世紀(jì)七十年代末,經(jīng)歷了SCM、MCU和SOC三大階段。1.3課題內(nèi)容本課題是基于單片機(jī)的光強(qiáng)檢測報(bào)警器設(shè)計(jì),其利用單片機(jī)作為系統(tǒng)的主要控制器,通過光敏電阻和10K電阻分壓,經(jīng)過ADC0809轉(zhuǎn)換,直接將數(shù)字信號,送入到單片機(jī)中進(jìn)行數(shù)據(jù)處理,經(jīng)過一定的控制算法后,通過單片機(jī)的輸出I/O口,來控制蜂鳴器和LED燈,到達(dá)報(bào)警的目的,并通過LED顯示,到達(dá)良好的人機(jī)交互。本文運(yùn)用AT89S52單片機(jī)作為主控制單元及數(shù)據(jù)處理單元,控制光敏電阻檢測光強(qiáng)信號,數(shù)據(jù)處理,發(fā)出控制信號對蜂鳴器和LED作用,到達(dá)報(bào)警的目的,同時(shí)實(shí)現(xiàn)光強(qiáng)報(bào)警和光弱報(bào)警功能。實(shí)現(xiàn)根本的人機(jī)對話功能,顯示光強(qiáng)值所在檔位。第2章光強(qiáng)檢測報(bào)警器的設(shè)計(jì)方案2.1系統(tǒng)的方案分析系統(tǒng)總體框圖,如圖2-1:圖2-1系統(tǒng)總體框圖以AT89S52單片機(jī)為核心,在單片機(jī)內(nèi)部完成數(shù)據(jù)的存儲及處理功能,通過數(shù)模轉(zhuǎn)換芯片完成模擬信號到數(shù)字信號的轉(zhuǎn)換及輸入,再將數(shù)據(jù)存入存儲芯片,在單片機(jī)進(jìn)行數(shù)據(jù)處理后再對需要顯示的數(shù)字信號進(jìn)行譯碼顯示在四位一體七段數(shù)碼顯示器上。每個(gè)芯片的電源處有耦合電容相連,當(dāng)電容器充電到達(dá)2V時(shí),此電容就作為電源為電路提供工作電壓。單片機(jī)的RESET口上提供了供電自啟動(dòng),在X1,X2口上提供了12MHZ晶振,以支持單片機(jī)的運(yùn)行與啟動(dòng)。系統(tǒng)完成了采集功能,存儲功能,數(shù)據(jù)處理功能,測量數(shù)據(jù)顯示功能,到達(dá)了設(shè)計(jì)的根本要求。2.2單片機(jī)的選型在本設(shè)計(jì)中單片機(jī)是系統(tǒng)的控制核心,因此,單片機(jī)的選擇,對于所設(shè)計(jì)系統(tǒng)的實(shí)現(xiàn)以及功能的擴(kuò)展有著很大的影響。單片機(jī)種類很多,在眾多51系列單片機(jī)中,較為常用的是ATMEL公司的AT89S52和AT89S52單片機(jī)。AT89S52片內(nèi)4KROM是Flash工藝的,使用專用的編程器自己就可以隨時(shí)對單片機(jī)進(jìn)行電擦除和改寫,片內(nèi)有128字節(jié)的RAM。AT89S52已滿足本次設(shè)計(jì)的要求,同時(shí)我們對于這個(gè)單片機(jī)芯片也較為熟悉,因此,在本次設(shè)計(jì)中選用了ATMEL公司的AT89S52單片機(jī)。2.3顯示方案選擇〔1〕七段LED數(shù)碼顯示在單片機(jī)系統(tǒng)中,發(fā)光二極管(LED)常常作為重要的顯示手段。LED顯示器內(nèi)部由7段發(fā)光二極管組成,因此亦稱之為七段LED顯示器,由于主要用于顯示各種數(shù)字符號,故又稱之為LED數(shù)碼管。每個(gè)顯示器還有一個(gè)圓點(diǎn)型發(fā)光二極管,用于顯示小數(shù)點(diǎn)。但其顯示并不是很直觀,同時(shí)編程相對復(fù)雜,可顯示字符比擬少,但本錢相對很低廉?!?〕液晶顯示模塊芯片LCD為英文LiquidCrystalDisplay的縮寫,即液晶顯示器,是一種數(shù)字顯示技術(shù),可以通過液晶和彩色過濾器過濾光源,在平面面板上產(chǎn)生圖象。在實(shí)際應(yīng)用中,用戶很少直接設(shè)計(jì)LCD顯示器驅(qū)動(dòng)接口,一般是直接使用專用的LCD顯示驅(qū)動(dòng)器和LCD顯示模塊。其中,LCD顯示模塊LCM〔LiquidCrystalDisplayModule〕是把LCD顯示器、背景光源、線路板和驅(qū)動(dòng)集成電路等部件構(gòu)成一個(gè)整體,作為一個(gè)獨(dú)立的部件使用,具有功能較強(qiáng)、易于控制、接口簡單等優(yōu)點(diǎn),在單片機(jī)系統(tǒng)中應(yīng)用較多。而本次選擇的4位一體的LED數(shù)碼顯示模塊,具有價(jià)格低、功耗低、連接方便等特點(diǎn),已經(jīng)成為單片機(jī)應(yīng)用設(shè)計(jì)中最常用的信息顯示器件了。2.4AD轉(zhuǎn)換方案A/D轉(zhuǎn)換采用ADC0809。ADC0809由一個(gè)8路模擬開關(guān)、一個(gè)地址鎖存與譯碼器、一個(gè)A/D轉(zhuǎn)換器和一個(gè)三態(tài)輸出鎖存器組成。多路開關(guān)可選通8個(gè)模擬通道,允許8路模擬量分時(shí)輸入,共用A/D轉(zhuǎn)換器進(jìn)行轉(zhuǎn)換。三態(tài)輸出鎖器用于鎖存A/D轉(zhuǎn)換完的數(shù)字量,當(dāng)OE端為高電平時(shí),才可以從三態(tài)輸出鎖存器取走轉(zhuǎn)換完的數(shù)據(jù)。第3章光強(qiáng)檢測報(bào)警器硬件設(shè)計(jì)3.1硬件設(shè)計(jì)根據(jù)上述的芯片資料和方案的對照考慮,確定光強(qiáng)檢測報(bào)警器的實(shí)現(xiàn)電路,如圖3-1所示。圖3-1系統(tǒng)總體電路圖在設(shè)計(jì)中,用了兩個(gè)主要元件:控制芯片AT89S52單片機(jī)和ADC0809。其中控制芯片AT89S52單片機(jī)的控制功能能滿足電路功能實(shí)現(xiàn)的要求,它主要實(shí)現(xiàn)兩個(gè)功能:1.通過、對ADC0809的引腳START和EOC的控制來實(shí)現(xiàn)模擬數(shù)字轉(zhuǎn)換器ADC0809的轉(zhuǎn)換開始和結(jié)束,并通過對輸出允許信號OE的控制實(shí)現(xiàn)控制三態(tài)輸出鎖存器向單片機(jī)輸出轉(zhuǎn)換得到的數(shù)據(jù);最后在模擬數(shù)字轉(zhuǎn)換結(jié)束后通過P1口從ADC0809的數(shù)據(jù)輸出線D7-D0把數(shù)據(jù)采集進(jìn)來。2.通過P0口把采集進(jìn)來的數(shù)據(jù)送到數(shù)碼管的段信號:A、B、C、D、E、F、G、DP;并通過P2口的控制數(shù)碼管的位信號,實(shí)現(xiàn)數(shù)碼管的動(dòng)態(tài)顯示。另外模擬數(shù)字轉(zhuǎn)換器ADC0809實(shí)現(xiàn)的功能就是完成對采集進(jìn)來的模擬信號的數(shù)字轉(zhuǎn)換。電路中,利用ADC0809的IN0口將模擬數(shù)據(jù)采集進(jìn)來。ALE地址鎖存允許信號和START轉(zhuǎn)換啟動(dòng)信號分別與單片機(jī)的及連接,以實(shí)現(xiàn)對它的控制;進(jìn)行A/D轉(zhuǎn)換時(shí),采用查詢EOC的標(biāo)志信號來檢測A/D轉(zhuǎn)換是否完畢,假設(shè)完畢那么把數(shù)據(jù)通過P1端口讀入,經(jīng)過數(shù)據(jù)處理之后在數(shù)碼管上顯示。AT89S52單片機(jī)89C51系列單片機(jī)最早是由Intel公司開發(fā)和生產(chǎn)的,Intel公司在1980年推出MCS-51單片機(jī),也稱89C51單片機(jī)。AT89S52單片機(jī)是ATMEL公司1989年生產(chǎn)的產(chǎn)品,ATMEL率先把89C51內(nèi)核與Flash技術(shù)相結(jié)合,推出轟動(dòng)業(yè)界的AT89系列單片機(jī)。本設(shè)計(jì)采用ATMEL生產(chǎn)的MCS-51系列的AT89S52單片機(jī)芯片作為主芯片。MCS-51單片機(jī)所占的市場分額很大,在單片機(jī)領(lǐng)域影響力很大,幾十年居于單片機(jī)領(lǐng)域領(lǐng)頭羊地位,其產(chǎn)品大量作為單片機(jī)教材范例使用。AT89S52是一種帶4K字節(jié)閃爍可編程可擦除只讀存儲器〔FPEROM—FlashProgrammableandErasableReadOnlyMemory〕的低電壓、高性能CMOS8位微處理器,俗稱單片機(jī)。該單片機(jī)片內(nèi)含4kbytes的可反復(fù)擦寫的Flash只讀程序存儲器和128bytes的隨機(jī)存取數(shù)據(jù)存儲器〔RAM〕,該器件采用ATMEL高密度非易失存儲器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸出管腳相兼容。由于將多功能8位CPU和閃爍存儲器組合在單個(gè)芯片中,ATMEL的AT89S52是一種高效微控制器,為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價(jià)廉的方案。AT89S52是一個(gè)低功耗高性能單片機(jī),40個(gè)引腳,32個(gè)外部雙向輸入/輸出〔I/O〕端口,同時(shí)內(nèi)含2個(gè)外中斷口,2個(gè)16位可編程定時(shí)計(jì)數(shù)器,2個(gè)全雙工串行通信口,AT89S52可以按照常規(guī)方法進(jìn)行編程,也可以在線編程。其將通用的微處理器和Flash存儲器結(jié)合在一起,特別是可反復(fù)擦寫的Flash存儲器可有效地降低開發(fā)本錢。3.2.1AT89S52的引腳圖3-2為AT89C51的引腳圖。圖3-2AT89S52芯片引腳40只引腳按照其功能來分,可分為3類:電源及時(shí)鐘引腳:Vcc、Vss;XTAL1、XTAL2??刂埔_:PSEN、ALE、EA、RESET。I/O口引腳:P0、P1、P2、P3,為4個(gè)8位I/O口的外部引腳。3.2.2AT89S52的時(shí)鐘電路在AT89S52芯片內(nèi)部有一個(gè)高增益反相放大器,其輸入端為芯片引腳XTAL1,輸出端為引腳XTAL2,在芯片的外部通過這兩個(gè)引腳跨接晶體振蕩器和微調(diào)電容,形成反應(yīng)電路,就構(gòu)成了一個(gè)穩(wěn)定的自激振蕩器。在由多片單片機(jī)組成的系統(tǒng)中,為了各單片機(jī)之間的時(shí)鐘信號的同步,應(yīng)當(dāng)引入唯一的公用外部脈沖信號作為各單片機(jī)的振蕩脈沖。時(shí)鐘電路如圖3-3所示。a)內(nèi)部時(shí)鐘a)內(nèi)部時(shí)鐘b)外部時(shí)鐘3.2.3AT89S52的復(fù)位電路復(fù)位是單片機(jī)的初始化操作,其主要功能是把PC初始化為0000H,使單片機(jī)從0000H單元開始執(zhí)行程序。除了進(jìn)入系統(tǒng)的正常初始化之外,當(dāng)由于程序運(yùn)行出錯(cuò)或者操作錯(cuò)誤使系統(tǒng)處于死鎖狀態(tài)時(shí),為擺脫困境,也需按復(fù)位鍵以重新啟動(dòng)。RST引腳是復(fù)位信號的輸入端,復(fù)位信號是高電平有效,其有效時(shí)間應(yīng)持續(xù)時(shí)間24個(gè)振蕩脈沖周期以上。復(fù)位操作有上電自動(dòng)復(fù)位和按鍵手動(dòng)復(fù)位兩種方式。復(fù)位電路如圖3-4所示。89C5189C51R1+5VR2KRST89C51R1RST+5VC1圖3-4AT89S52復(fù)位電路ADC0809電路3.3.1A/D轉(zhuǎn)換器芯片ADC0809簡介ADC0809由一個(gè)8路模擬開關(guān)、一個(gè)地址鎖存與譯碼器、一個(gè)A/D轉(zhuǎn)換器和一個(gè)三態(tài)輸出鎖存器組成。多路開關(guān)可選通8個(gè)模擬通道,允許8路模擬量分時(shí)輸入,共用A/D轉(zhuǎn)換器進(jìn)行轉(zhuǎn)換。三態(tài)輸出鎖器用于鎖存A/D轉(zhuǎn)換完的數(shù)字量,當(dāng)OE端為高電平時(shí),才可以從三態(tài)輸出鎖存器取走轉(zhuǎn)換完的數(shù)據(jù)。ADC0809的引腳圖如圖3-5所示。圖3-5ADC0809引腳圖1、ADC0809的內(nèi)部結(jié)構(gòu)ADC0809的內(nèi)部邏輯結(jié)構(gòu)圖如圖3-6所示。圖3-6ADC0809內(nèi)部邏輯結(jié)構(gòu)圖3-6中多路開關(guān)可選通8個(gè)模擬通道,允許8路模擬量分時(shí)輸入,共用一個(gè)A/D轉(zhuǎn)換器進(jìn)行轉(zhuǎn)換,這是一種經(jīng)濟(jì)的多路數(shù)據(jù)采集方法。地址鎖存與譯碼電路完成對A、B、C3個(gè)地址位進(jìn)行鎖存和譯碼,其譯碼輸出用于通道選擇,其轉(zhuǎn)換結(jié)果通過三態(tài)輸出鎖存器存放、輸出,因此可以直接與系統(tǒng)數(shù)據(jù)總線相連,表3-1為通道選擇表。表3-1通道選擇表2、信號引腳ADC0809芯片為28引腳為雙列直插式封裝,其引腳排列見圖3-5。對ADC0809主要信號引腳的功能說明如下:IN7~I(xiàn)N0——模擬量輸入通道ALE——地址鎖存允許信號。對應(yīng)ALE上跳沿,A、B、C地址狀態(tài)送入地址鎖存器中。START——轉(zhuǎn)換啟動(dòng)信號。START上升沿時(shí),復(fù)位ADC0809;START下降沿時(shí)啟動(dòng)芯片,開始進(jìn)行A/D轉(zhuǎn)換;在A/D轉(zhuǎn)換期間,START應(yīng)保持低電平。本信號有時(shí)簡寫為ST.A、B、C——地址線。通道端口選擇線,A為低地址,C為高地址,引腳圖中為ADDA,ADDB和ADDC。其地址狀態(tài)與通道對應(yīng)關(guān)系見表9-1。CLK——時(shí)鐘信號。ADC0809的內(nèi)部沒有時(shí)鐘電路,所需時(shí)鐘信號由外界提供,因此有時(shí)鐘信號引腳。通常使用頻率為500KHz的時(shí)鐘信號EOC——轉(zhuǎn)換結(jié)束信號。EOC=0,正在進(jìn)行轉(zhuǎn)換;EOC=1,轉(zhuǎn)換結(jié)束。使用中該狀態(tài)信號即可作為查詢的狀態(tài)標(biāo)志,又可作為中斷請求信號使用。D7~D0——數(shù)據(jù)輸出線。為三態(tài)緩沖輸出形式,可以和單片機(jī)的數(shù)據(jù)線直接相連。D0為最低位,D7為最高OE——輸出允許信號。用于控制三態(tài)輸出鎖存器向單片機(jī)輸出轉(zhuǎn)換得到的數(shù)據(jù)。OE=0,輸出數(shù)據(jù)線呈高阻;OE=1,輸出轉(zhuǎn)換得到的數(shù)據(jù)。Vcc——+5V電源。Vref——參考電源參考電壓用來與輸入的模擬信號進(jìn)行比擬,作為逐次逼近的基準(zhǔn)。其典型值為+5V(Vref(+)=+5V,Vref(-)=-5V).。T89S52單片機(jī)與ADC0809的接口ADC0809與AT89S52單片機(jī)的連接如圖3-7所示。圖3-7ADC0809與MCS-51單片機(jī)的連接電路電路連接主要涉及兩個(gè)問題。一是8路模擬信號通道的選擇,二是A/D轉(zhuǎn)換完成后轉(zhuǎn)換數(shù)據(jù)的傳送。模擬通道選擇信號A、B、C分別接P3.4、P3.5、P3.6,而地址鎖存允許信號ALE由P3.1控制,那么8路模擬通道的地址為0FEF8H~0FEFFH。START信號接由P3.0控制。另外參考電壓直接利用本系統(tǒng)的Vcc,因此要求Vcc為標(biāo)準(zhǔn)的5V電壓。3.4顯示電路顯示電路采用4位一體的數(shù)碼管來實(shí)現(xiàn)。數(shù)碼管動(dòng)態(tài)顯示介面是單片機(jī)中應(yīng)用最為廣泛的一種顯示方式之一,動(dòng)態(tài)驅(qū)動(dòng)是將所有數(shù)碼管的8個(gè)顯示筆劃"a,b,c,d,e,f,g,dp"的同名端連在一起,另外為每個(gè)數(shù)碼管的公共極COM增加位選通控制電路,位選通由各自獨(dú)立的I/O線控制,當(dāng)單片機(jī)輸出字形碼時(shí),所有數(shù)碼管都接收到相同的字形碼,但究竟是那個(gè)數(shù)碼管會顯示出字形,取決于單片機(jī)對位選通COM端電路的控制,所以我們只要將需要顯示的數(shù)碼管的選通控制翻開,該位元就顯示出字形,沒有選通的數(shù)碼管就不會亮。透過分時(shí)輪流控制各個(gè)LED數(shù)碼管的COM端,就使各個(gè)數(shù)碼管輪流受控顯示,這就是動(dòng)態(tài)驅(qū)動(dòng)。在輪流顯示過程中,每位元數(shù)碼管的點(diǎn)亮?xí)r間為1~2ms,由于人的視覺暫留現(xiàn)象及發(fā)光二極體的余輝效應(yīng),盡管實(shí)際上各位數(shù)碼管并非同時(shí)點(diǎn)亮,但只要掃描的速度足夠快,給人的印象就是一組穩(wěn)定的顯示資料,不會有閃爍感,動(dòng)態(tài)顯示的效果和靜態(tài)顯示是一樣的,能夠節(jié)省大量的I/O埠,而且功耗更低。實(shí)現(xiàn)電路如圖3-8所示。8段連接單片機(jī)的P1口,位選通采用NPN9015〔或者8550〕三極管來有效控制它的通斷,分別對應(yīng)單片機(jī)的P2.0、P2.1、P2.2、P2.3。圖3-8顯示電路3.5光強(qiáng)采集電路光強(qiáng)采集,采用光敏電阻進(jìn)行設(shè)計(jì)。敏電阻又稱光導(dǎo)管,常用的制作材料為硫化鎘,另外還有硒、硫化鋁、硫化鉛和硫化鉍等材料。這些制作材料具有在特定波長的光照射下,其阻值迅速減小的特性。這是由于光照產(chǎn)生的載流子都參與導(dǎo)電,在外加電場的作用下作漂移運(yùn)動(dòng),電子奔向電源的正極,空穴奔向電源的負(fù)極,從而使光敏電阻器的阻值迅速下降。采用分壓原理,設(shè)計(jì)電路如圖3-9所示:圖3-9光強(qiáng)檢測電路3.6鍵盤電路按鍵局部實(shí)現(xiàn)的主要原理是單片機(jī)讀取與按鍵相連接的I/O口狀態(tài),來判定按鍵是否按下,到達(dá)系統(tǒng)參數(shù)設(shè)置的目的。鍵盤在單片機(jī)應(yīng)用系統(tǒng)中的作用是實(shí)現(xiàn)數(shù)據(jù)輸入、命令輸入,是人工干預(yù)的主要手段。鍵盤分兩大類:編碼鍵盤和非編碼鍵盤。編碼鍵盤:由硬件邏輯電路完成必要的鍵識別工作與可靠性措施。每按一次鍵,鍵盤自動(dòng)提供被按鍵的讀數(shù),同時(shí)產(chǎn)生一個(gè)選通脈沖通知微處理器,一般還具有反彈跳和同時(shí)按鍵保護(hù)功能。這種鍵盤容易使用,但硬件比擬復(fù)雜,對于主機(jī)任務(wù)繁重的情況,采用8279可編程鍵盤管理接口芯片構(gòu)成編碼式鍵盤系統(tǒng)是很實(shí)用的方案。非編碼鍵盤:只簡單地提供鍵盤的行列與矩陣,其他操作如按鍵的識別,決定按鍵的讀數(shù)等都靠軟件完成,故硬件設(shè)計(jì)較為簡單,但占用CPU較多時(shí)間,非編碼鍵盤有:獨(dú)立式按鍵結(jié)構(gòu)、矩陣式按鍵結(jié)構(gòu)兩種。矩陣式按鍵結(jié)構(gòu)適用于按鍵數(shù)量較多的場合,由行線和列線組成,按鍵位于行列的交叉點(diǎn)上。矩陣鍵盤工作的原理:行線通過上拉電阻接到+5V上。無按鍵,行線處于高電平狀態(tài),有鍵按下,行線電平狀態(tài)將由與此行線相連的列線電平?jīng)Q定。列線電平為低,那么行線電平為低;列線電平為高,那么行線電平為高。矩陣式按鍵結(jié)構(gòu)的優(yōu)點(diǎn)就是節(jié)約單片機(jī)I/O口,適用于按鍵比擬多的場合。獨(dú)立式按鍵結(jié)構(gòu),獨(dú)立式按鍵就是按鍵相互獨(dú)立,每個(gè)按鍵單獨(dú)占用一根I/O口線,每根I/O口線的按鍵的工作狀態(tài),不會影響其他I/O口線上的工作狀態(tài)。各按鍵開關(guān)均需要采用了上拉電阻,是為了保證在按鍵斷開時(shí),各I/O有確定的高電平。當(dāng)輸入口線內(nèi)部已有上拉電阻,外電路的上拉電阻可省去。因此,通過檢測輸入線的電平狀態(tài)就可以很容易判斷是哪個(gè)按鍵被按下了。優(yōu)點(diǎn):電路配置靈活,軟件結(jié)構(gòu)簡單。缺點(diǎn):每個(gè)按鍵需占用一根I/O口線,在按鍵數(shù)量較多時(shí),I/O口浪費(fèi)大,電路結(jié)構(gòu)顯得復(fù)雜。因此,此鍵盤適用于按鍵較少或操作速度較高的場合。在本設(shè)計(jì)當(dāng)中,由于只需要四個(gè)按鍵,所以采用獨(dú)立式鍵盤結(jié)構(gòu),電路連接圖如圖3-10所示:圖3-10鍵盤電路3.7控制輸出電路控制輸出采用3個(gè)不同顏色的LED燈,進(jìn)行顯示報(bào)警,如下列圖3-11:圖3-11LED燈報(bào)警報(bào)警電路實(shí)現(xiàn)的是當(dāng)環(huán)境溫度值超過系統(tǒng)設(shè)置的上限值或者小于系統(tǒng)設(shè)置的下限值時(shí),都將通過I/O口驅(qū)動(dòng)蜂鳴器,進(jìn)行蜂鳴器報(bào)警。而單片機(jī)I/O口輸出的電流無法直接驅(qū)動(dòng)蜂鳴器,所以設(shè)計(jì)了蜂鳴器驅(qū)動(dòng)電路,具體電路連接如圖3-12所示:圖3-12蜂鳴器電路第4章系統(tǒng)程序設(shè)計(jì)本局部詳細(xì)介紹了基于AT89S52單片機(jī)的光強(qiáng)檢測報(bào)警器的軟件設(shè)計(jì)。根據(jù)系統(tǒng)功能,可以將系統(tǒng)設(shè)計(jì)分為假設(shè)干個(gè)子程序進(jìn)行設(shè)計(jì),如光強(qiáng)采集子程序,數(shù)據(jù)處理子程序、顯示子程序、執(zhí)行子程序。采用KeiluVision3集成編譯環(huán)境和匯編語言來進(jìn)行系統(tǒng)軟件的設(shè)計(jì)。本章從設(shè)計(jì)思路、軟件系統(tǒng)框圖出發(fā),先介紹整體的思路后,再逐一分析各模塊程序算法的實(shí)現(xiàn),最終編寫出滿足任務(wù)需求的程序。4.1設(shè)計(jì)思路與流程圖系統(tǒng)要完成光強(qiáng)檢測報(bào)警器,需要實(shí)現(xiàn)光強(qiáng)信號的采集與A/D轉(zhuǎn)換、數(shù)據(jù)處理、數(shù)據(jù)顯示、數(shù)據(jù)輸出等根本功能。從功能上可將其分為光強(qiáng)信號采集及A/D轉(zhuǎn)換、數(shù)據(jù)處理、人機(jī)交互、執(zhí)行四大局部進(jìn)行設(shè)計(jì),軟件系統(tǒng)框圖如圖4-1所示:數(shù)據(jù)處理子程序數(shù)據(jù)處理子程序人機(jī)交互子程序程序光強(qiáng)采集子程序控制執(zhí)行子程序圖4-1軟件系統(tǒng)框圖光強(qiáng)信號采集子程序,主要完成光強(qiáng)信號采集與A/D功能。采集子程序主要包括單片機(jī)給ADC0809寫命令、單片機(jī)ADC0809寫數(shù)據(jù)、單片機(jī)從ADC0809讀數(shù)據(jù)等局部。數(shù)據(jù)處理子程序,當(dāng)單片機(jī)收到溫度傳感器發(fā)送的溫度數(shù)據(jù)后,數(shù)據(jù)處理子程序?qū)υ摂?shù)據(jù)進(jìn)行處理,主要是把采集到的二進(jìn)制的溫度數(shù)據(jù)轉(zhuǎn)換成十進(jìn)制溫度數(shù)據(jù)。人機(jī)交互子程序包括按鍵子程序、LED顯示子程序。LED顯示子程序的功能是,實(shí)現(xiàn)將數(shù)據(jù)處理后的十進(jìn)制光強(qiáng)數(shù)據(jù),使用LED顯示出來。執(zhí)行子程序,該子程序所實(shí)現(xiàn)的功能,是把程序設(shè)置的系統(tǒng)光強(qiáng)限定值與數(shù)據(jù)處理子程序處理后的當(dāng)前光強(qiáng)值進(jìn)行比擬,根據(jù)比擬的結(jié)果,執(zhí)行單片機(jī)的I/O口輸出的狀態(tài)??刂芁ED燈與蜂鳴器。主程序流程圖如圖4-2所示:光強(qiáng)限值設(shè)置子程序光強(qiáng)采集子程序執(zhí)行子程序光強(qiáng)限值設(shè)置子程序光強(qiáng)采集子程序執(zhí)行子程序顯示子程序數(shù)據(jù)處理子程序設(shè)置鍵按下NY初始化采集光強(qiáng)NY開始返回圖4-2主程序流程圖模/數(shù)〔A/D〕轉(zhuǎn)換測量子函數(shù)用來控制對ADC0809的模擬輸入電壓進(jìn)行A/D轉(zhuǎn)換,并將對應(yīng)的數(shù)值移入內(nèi)存單元。其程序流程如圖4-3。開始啟動(dòng)一次轉(zhuǎn)換A/D轉(zhuǎn)換結(jié)束?EOC=1?N開始啟動(dòng)一次轉(zhuǎn)換A/D轉(zhuǎn)換結(jié)束?EOC=1?NY取數(shù)據(jù)〔OE=1〕返回ALE為地址鎖存允許輸入線,高電平有效。ST為轉(zhuǎn)換啟動(dòng)信號。當(dāng)ST上跳沿時(shí),所有內(nèi)部存放器清零;下跳沿時(shí),開始進(jìn)行A/D轉(zhuǎn)換;在轉(zhuǎn)換期間,ST應(yīng)保持低電平。EOC為轉(zhuǎn)換結(jié)束信號。當(dāng)EOC為高電平時(shí),說明轉(zhuǎn)換結(jié)束;否那么,說明正在進(jìn)行A/D轉(zhuǎn)換。OE為輸出允許信號,用于控制三條輸出鎖存器向單片機(jī)輸出轉(zhuǎn)換得到的數(shù)據(jù)。OE=1,輸出轉(zhuǎn)換得到的數(shù)據(jù);OE=0,輸出數(shù)據(jù)線呈高阻狀態(tài)。當(dāng)EOC變?yōu)榈碗娖綍r(shí),這時(shí)給OE為高電平,轉(zhuǎn)換的數(shù)據(jù)就輸出給單片機(jī)了。ADC0809進(jìn)行A/D轉(zhuǎn)換時(shí),通過ALE為高電平,使輸入有效,然后ALE改為低電平,鎖存地址,地址鎖存后將ST置高電平,使ADC0809內(nèi)部存放器清零,再ST置高電平,芯片開始進(jìn)行A/D轉(zhuǎn)換。當(dāng)EOC為高時(shí),轉(zhuǎn)換結(jié)束。這時(shí)把OE置為1,。將轉(zhuǎn)換成功的數(shù)據(jù)送給單片機(jī),完成一次模/數(shù)轉(zhuǎn)換。設(shè)置分辨率為8位轉(zhuǎn)化后得到的數(shù)據(jù),進(jìn)行相應(yīng)的處理,系統(tǒng)根據(jù)數(shù)據(jù)情況進(jìn)行控制處理。光強(qiáng)信號的采集與A/D轉(zhuǎn)換,并把數(shù)據(jù)傳遞給單片機(jī),并保存起來。數(shù)據(jù)處理時(shí),把數(shù)據(jù)取出來,放在一個(gè)整型變量中。首先取出整數(shù)局部進(jìn)行處理,求出數(shù)據(jù)十進(jìn)制表示時(shí)的百位、十位及個(gè)位,再求小數(shù)局部數(shù)據(jù)計(jì)算流程圖如圖4-4所示。整數(shù)局部計(jì)算程序保存數(shù)據(jù)小數(shù)數(shù)據(jù)整數(shù)局部計(jì)算程序保存數(shù)據(jù)小數(shù)數(shù)據(jù)計(jì)算程序保存數(shù)據(jù)1開始返回圖4-4光強(qiáng)值計(jì)算程序流程圖整數(shù)存放器除以100商存入百位存放器整數(shù)存放器除以100商存入百位存放器余數(shù)存入整數(shù)存放器除以10商存入十位存放器余數(shù)存入個(gè)位存放器小數(shù)存放器把小數(shù)局部逐次與00H~0FH比擬假設(shè)相等時(shí)進(jìn)行相應(yīng)置位保存整數(shù)存放器返回返回開始開始圖4-5整數(shù)計(jì)算子程序流程圖圖4-6小數(shù)計(jì)算子程序流程圖因?yàn)轱@示用到4個(gè)LED數(shù)碼管,考慮到AT89S52的I/O口缺乏,所以采用采用動(dòng)態(tài)掃描法實(shí)現(xiàn)4位數(shù)碼管的數(shù)值顯示。通過控制P3口的輸出數(shù)值控制LED亮與不亮,從而到達(dá)動(dòng)態(tài)顯示,節(jié)省I/O口的目的。測量所得的A/D轉(zhuǎn)換數(shù)據(jù)放在定義的ad_data內(nèi)存單元中,測量所得的A/D數(shù)據(jù)在顯示時(shí)需要經(jīng)過轉(zhuǎn)換變成十進(jìn)制BCD碼。在本設(shè)計(jì)當(dāng)中,當(dāng)按鍵被按下時(shí),I/O口電平為低;松開時(shí),I/O口電平為高。按鍵掃描程序通過讀取I/O口的電平即可知道對應(yīng)按鍵的狀態(tài)。按鍵的抖動(dòng)時(shí)間的長短由按鍵的機(jī)械特性決定,一般為5~10ms,這是一個(gè)很重要的參數(shù)。抖動(dòng)過程引起電平信號的波動(dòng),有可能令CPU誤解為屢次按鍵操作,從而引起誤處理[22]。為了確保CPU對一次按鍵動(dòng)作只確認(rèn)一次按鍵,提高按鍵處理的可靠性,應(yīng)在程序中做按鍵消抖處理。按鍵的消抖,通常有軟件,硬件兩種消除方法。硬件消抖主要是采用濾波電路消除干擾,需要消耗大量硬件,本錢比擬高,只適用于按鍵數(shù)目較少的情況。如果按鍵較多,硬件消抖無法到達(dá)預(yù)期效果。所以通常采用軟件消抖。軟件消抖的常用方法是軟件延時(shí)。本系統(tǒng)采用軟件消抖,當(dāng)單片機(jī)第一次檢測到有鍵按下時(shí),即檢測到與按鍵連接的I/O口為低電平是,等待10ms,再去確認(rèn)該I/O口是否仍舊為低電平,如果還是低電平,就一般的機(jī)械按鍵而言,已經(jīng)是出于穩(wěn)定期了,按鍵的抖動(dòng)被消除了。如果10ms之后I/O口不為低電平,那么說明是干擾信號,而不是按鍵被按下。在軟件編寫上,可采用查詢方式,也可采用中斷方式。本系統(tǒng)采用查詢方式。本局部通過單片機(jī)I/O口輸出的高電平或者低電平,LED和蜂鳴器報(bào)警。如圖4-7示:圖4-7控制執(zhí)行子程序流程圖>=上限限比擬程序>=上限限比擬程序<=下限上限報(bào)警控制降溫下限報(bào)警控制升溫YN延時(shí)延時(shí)YN開始返回第5章系統(tǒng)調(diào)試和功能測試單片機(jī)的系統(tǒng)調(diào)試主要包括硬件調(diào)試和軟件調(diào)試,這兩者是不能分開的,許多硬件錯(cuò)誤是在軟件調(diào)試中被發(fā)現(xiàn)和糾正的。但通常是先排除明顯的硬件故障以后,再和軟件結(jié)合起來調(diào)試以進(jìn)一步排除故障??梢娪布恼{(diào)試是根底,如果硬件調(diào)試不通過,軟件設(shè)計(jì)那么是無從做起。系統(tǒng)硬件調(diào)試硬件設(shè)計(jì)方面從布線到焊接安裝完成之后,就開始進(jìn)入硬件調(diào)試階段。首先,我們應(yīng)該排除元器件失效問題。造成這類錯(cuò)誤的原因有兩個(gè):一是元器件買來時(shí)就已壞了;另一個(gè)是由于焊接錯(cuò)誤,造成器件損壞。要排除這種錯(cuò)誤我們可以采取檢查元器件與設(shè)計(jì)要求的型號、規(guī)格和連接是否一致,在保證安裝無誤后,用替換方法排除錯(cuò)誤。其次,排除電源故障問題。在通電前,一定要檢查電源電壓的幅值和極性,否那么很容易造成集成塊損壞。加電后檢查各插件上引腳的電位,一般先檢查VCC與GND之間電位,假設(shè)在5V~之間屬正常。假設(shè)有高壓,聯(lián)機(jī)仿真器調(diào)試時(shí),將會損壞仿真器等,有時(shí)會使應(yīng)用系統(tǒng)中的集成塊發(fā)熱損壞。本次設(shè)計(jì)的硬件調(diào)試順序?yàn)橄蕊@示器后鍵盤。在顯示器調(diào)試通過后,鍵盤調(diào)試就比擬簡單,完全可以借助于顯示器,利用程序進(jìn)行調(diào)試。利用開發(fā)裝置對程序進(jìn)行設(shè)置斷點(diǎn),通過斷點(diǎn)可以檢查程序在斷點(diǎn)前后的鍵值變化,這樣可知鍵盤工作是否正常。硬件上的故障往往由于設(shè)計(jì)和加工制板過程中工藝性錯(cuò)誤所造成的。主要包括錯(cuò)線、開路、短路。排除的方法是首先將實(shí)物連接板認(rèn)真對照原理圖,看兩者是否一致。應(yīng)特別注意電源系統(tǒng)檢查,以防止電源短路和極性錯(cuò)誤,并重點(diǎn)檢查系統(tǒng)總線〔地址總線、數(shù)據(jù)總線和控制總線〕是否存在相互之間短路或與其它信號線路短路。必要時(shí)利用數(shù)字萬用表的短路測試功能,可以縮短排錯(cuò)時(shí)間。5.2系統(tǒng)軟件調(diào)試在確認(rèn)過硬件電路連接及焊接工藝無誤后,我們就開始采用連擊仿真的方式進(jìn)行軟件調(diào)試。一般,我們使用KeilC51uVision2進(jìn)行仿真調(diào)試。KeilC51是美國KeilSoftware公司出品的51系列兼容單片機(jī)C語言軟件開發(fā)系統(tǒng),它提供了包括C編譯器、宏匯編、連接器、庫管理和一個(gè)功能強(qiáng)大的仿真調(diào)試器等在內(nèi)的完整開發(fā)方案,通過一個(gè)集成開發(fā)環(huán)境〔uVision〕將這些部份組合在一起。KeilC51軟件提供豐富的庫函數(shù)和功能強(qiáng)大的集成開發(fā)調(diào)試工具,全Windows界面。同時(shí),編譯后生成的匯編代碼效率很高,多數(shù)語句生成的匯編代碼很緊湊,易于理解。同時(shí),聯(lián)機(jī)仿
溫馨提示
- 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度木材行業(yè)供應(yīng)鏈金融服務(wù)合同4篇
- 二零二四商鋪?zhàn)赓U補(bǔ)充協(xié)議合同范本:全面優(yōu)化租賃條款3篇
- 二零二五版農(nóng)業(yè)機(jī)械出口合同范本4篇
- 二零二五版房地產(chǎn)項(xiàng)目分期付款轉(zhuǎn)讓合同3篇
- 2025年新型建筑材料推廣應(yīng)用合同3篇
- 2025版門店共享合伙人業(yè)務(wù)流程優(yōu)化合作協(xié)議2篇
- 二零二五年度智能家居設(shè)備研發(fā)合作協(xié)議4篇
- 數(shù)字化轉(zhuǎn)型與集中度變化-深度研究
- 2025年度綠色能源項(xiàng)目投資出借信息咨詢與服務(wù)協(xié)議4篇
- 2025版膩?zhàn)尤槟z漆施工與后期維護(hù)服務(wù)合同樣本4篇
- 乳腺癌的綜合治療及進(jìn)展
- 【大學(xué)課件】基于BGP協(xié)議的IP黑名單分發(fā)系統(tǒng)
- 2025年八省聯(lián)考高考語文試題真題解讀及答案詳解課件
- 信息安全意識培訓(xùn)課件
- 2024年山東省泰安市初中學(xué)業(yè)水平生物試題含答案
- 美的MBS精益管理體系
- 2024安全員知識考試題(全優(yōu))
- 中國大百科全書(第二版全32冊)08
- 法律訴訟及咨詢服務(wù) 投標(biāo)方案(技術(shù)標(biāo))
- 格式塔心理咨詢理論與實(shí)踐
- 英語六級詞匯(全)
評論
0/150
提交評論