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