基于單片機的倉庫溫濕度檢測系統(tǒng)設計說明_第1頁
基于單片機的倉庫溫濕度檢測系統(tǒng)設計說明_第2頁
基于單片機的倉庫溫濕度檢測系統(tǒng)設計說明_第3頁
基于單片機的倉庫溫濕度檢測系統(tǒng)設計說明_第4頁
基于單片機的倉庫溫濕度檢測系統(tǒng)設計說明_第5頁
已閱讀5頁,還剩66頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、 畢業(yè)設計題目:基于單片機的倉庫溫濕度檢測系統(tǒng)設計學 生 姓 名_學 號 _ 所屬院(系) 電子信息工程 _指 導 教 師 _ 基于單片機的倉庫溫濕度檢測系統(tǒng)設計摘 要防潮、防霉、防腐、防爆是倉庫日常工作的重要容,是衡量倉庫管理質量的重要指標。本文采用較為實用和先進的單片機控制技術,運用溫度傳感器和濕度傳感器對溫濕度的敏感性設計的一種基于多路信號輸入的倉庫溫濕度檢測系統(tǒng)。它直接影響到儲備物資的使用壽命和工作可靠性。為保證日常工作的順利進行,首要問題是加強倉庫溫度與濕度的監(jiān)測工作。本設計系統(tǒng)采用STC89C52單片機為微控制器,STC89C52負責采集室溫度、自動防雨以與手動調節(jié)功能。通過溫度傳

2、感器組成的測控系統(tǒng),間隔的測量室的溫度,并將溫度和日期時間經LCD液晶顯示出來。當遇到雨天,單片機控制系統(tǒng)通過雨滴傳感器的信號,自動的進行關天窗動作。同時為了人性化的設計,本系統(tǒng)還設有手動控制按鈕,可以通過手動按鈕控制窗子的開關。本多功能窗的設計本著安全、方便、節(jié)能、人性化的原則進行,可使現(xiàn)代生活顯著提高。關鍵詞:STC89C52單片機,智能天窗,防雨,溫度采集Design of the warehouse temperature and humidity detection system based on single chip microcomputerAbstractMoisturepr

3、oof, mouldproof, anticorrosion, explosion-proof is the important content of the warehouse daily work, is an important index of warehouse management quality. It directly affects reserves of life and reliability. This article is using more practical and advanced MCU control technology, using the tempe

4、rature sensor of temperature and humidity sensor sensitivity design based on a multi -channel signal input warehouse temperature detection system. To ensure the daily work smoothly, the main issue was to strengthen the temperature and humidity in the warehouse monitoring work. The design system uses

5、 STC89C52 as microcontroller.STC89C52 is responsible for the collection of indoor temperature, automatically anti-rain and manual adjustment function. Measure the indoor temperature in the interval, and displays the temperature and the date and time on the LCD though the control system which compose

6、d of the temperature sensor. When faced with rain, the MCU control system will automatically close the window by the raindrop sensor signal. Meanwhile, in order to user-friendly design, the system also has a manual control button to control the window switch. This system can achieve three functions

7、include automatically anti-rain, the indoor temperature collecting, manually control and automatically control switch. The system will solve the corresponding problem in real life. The design of this multi-function window will be in line with the principles of safe, convenient, energy saving, user-f

8、riendly, and it will make modern life significantly improved.Key Words:STC89C52 microcontroller,Intelligent window,Anti-rain,Temperature collecting目 錄摘要IAbstractII第1章緒論- 1 -1.1 選題的意義- 1 -1.2 課題的國外研究狀況- 1 -1.3 課題的目的任務和要求- 3 -第2章設計方案論證- 5 -2.1溫度檢測方案- 5 -2.2 倉庫溫濕度檢測系統(tǒng)設計方案- 5 -第3章系統(tǒng)硬件設計- 7 -3.1 總體設計- 7

9、-3.2 各單元電路設計- 7 -3.2.1 控制單元設計- 7 -3.2.2 檢測單元設計- 18 -3.2.3 顯示單元設計- 24 -第4章系統(tǒng)軟件設計- 27 -4.1 總體設計- 27 -4.2 各部分子程序- 29 -4.2.1 溫濕度檢測程序- 29 -4.2.2 電機控制系統(tǒng)- 29 -4.2.3 LCD顯示程序設計- 30 -第5章系統(tǒng)調試- 33 -5.1 硬件調試- 33 -5.2 軟件調試- 34 -5.3 整體調試- 35 -結論- 39 -參考文獻- 41 -致- 43 -附錄- 45 - 63 - / 71第1章 緒 論1.1 選題的意義 科學合理的實用倉庫是當今

10、我國與全世界物資儲存的一項重要任務,若使用、管理不當,使重要物資受潮,或需低溫儲藏的物資受高溫環(huán)境影響,將會造成無法估計的損失。最典型的一個例子就是糧食儲備基地的倉庫實用。眾所周知,糧食的儲存需要合適的濕度和溫度,若管理不當,糧食受潮發(fā)霉或生蟲,將會造成大量的糧食浪費。糧食管理中最重要的就是溫度和濕度的變化控制,沒有合理科學的檢測系統(tǒng),就無法談科學的控制系統(tǒng)?,F(xiàn)在,我國在糧倉建設上己實現(xiàn)規(guī)化,但是檢測手段一直未能實現(xiàn)同步現(xiàn)代化。我國許多儲備糧庫每年都因測控設備的不完善而導致部分糧食霉變,許多大型儲備糧庫的測控設備仍需高價進口,因此國家準備在未來的幾年對全國所有的糧庫進行翻新和改造工作,要求規(guī)糧

11、庫管理,實現(xiàn)糧庫管理現(xiàn)代化。 影響儲糧安全的最主要因素是糧堆的大氣條件(相對濕度和溫度的日變化和季節(jié)變化),這就要求能有一種有效的、低成本的儀表來實現(xiàn)監(jiān)測控制功能,使得管理人員能夠方便有效地進行監(jiān)控操作。本課題即以上述問題為出發(fā)點,設計倉庫溫、濕度監(jiān)控系統(tǒng),該系統(tǒng)不僅能采集倉庫的溫、濕度值,而且能夠迅速做出相應的處理。1.2 課題的國外研究狀況在現(xiàn)代工業(yè)現(xiàn)場,隨著科技的進步和自動化發(fā)展,溫濕度檢測系統(tǒng)在某些行業(yè)中要求越來越高,特別是在大中型倉庫管理系統(tǒng)中,由于溫濕度過高或過低引起的倉庫儲藏物本身的水分過高或連續(xù)的高濕天氣將導致儲藏物新代加快而放出熱量,放熱引起的溫升又是代進一步加劇以至發(fā)霉變質

12、,因此倉庫必須重視對空氣溫濕度精確的而又方便的實時檢測,長期以來,由于受經濟條件限制,我國倉庫環(huán)境較差,而且管理落后。 倉庫管理的重點之一就是要經常檢查溫度變化,以便與時發(fā)現(xiàn)儲藏物發(fā)熱點,減少損失。然而,堆積物的熱傳遞又是那樣的緩慢,使人感知極差,需要管理人員經常進入悶熱、嗆人的倉庫觀察溫、濕度,不斷進行翻倉、加濕、通風和降溫設備來控制溫濕度,這樣不但控制精度低、實時性差,而且操作人員的勞動強度大。這種繁重的體力勞動,不僅對人體有極大的傷害,而且不科學、不與時。所以,倉庫儲藏物蟲蛀、霉變的情況時有發(fā)生。我國的儲藏物現(xiàn)均集中存放在地方或國家的倉庫中。按照國家儲藏物保護法,必須定期抽樣檢查糧食的溫

13、、濕度,以確保儲藏質量。這就迫切需要溫濕度監(jiān)控系統(tǒng)來控制倉庫。 近年來,由于超大規(guī)模集成電路技術、網絡通信技術和計算機技術的發(fā)展,是檢測系統(tǒng)在工農業(yè)生產等領域得到廣泛引用,因此,倉庫溫濕度檢測技術的研究在軟、硬件等方面都得到了一定的發(fā)展。1) 硬件技術早期倉庫溫濕度檢測主要采用溫度計量算法,它是將溫度計放入特定的插桿中,根據(jù)經驗插入倉庫的多個測溫點,工作人員定期拔出讀數(shù),決定采取相應的措施。這種方法由于溫度計精度、人工讀數(shù)的人為因素等原因,溫度檢測不僅速度慢而且精度低,抽樣不徹底,局部糧食溫度過高不易被與時發(fā)現(xiàn),局部糧食發(fā)霉變質引起大面積壞掉的情況時有發(fā)生。隨著科技的發(fā)展,溫、濕度檢測系統(tǒng)有了

14、很大的改善和提高,系統(tǒng)在布線上采用矩陣式布線技術,簡化了數(shù)據(jù)采集部分的線路;在傳感器方面應用了熱電偶、半導體等器件;在數(shù)據(jù)傳輸方面減少了傳輸線的根數(shù),采用串行傳輸方式,他可對倉庫的各個測試點進行巡回檢測,檢測的速度、精度大大提高,但由于電阻傳感器靈敏度低,使檢測精度不夠理想。 然后倉庫使用單片機進行溫濕度檢,并采用各種手段提高數(shù)據(jù)傳輸與檢測速度,通過軟硬件技術的結合,檢測的精度和可靠性有較大提高,能滿足一般中小型倉庫的需要。近年來,隨著網絡通信技術和微處理器芯片的發(fā)展,為了簡化倉庫溫濕度檢測系統(tǒng)的設計并降低成本,各公司的科研機構開始致力于相關領域的探索,是的倉庫溫濕度檢測系統(tǒng)數(shù)字化,網絡化成為

15、可能。其中,美國達拉斯公司推出的單總線接口協(xié)議采用單根信號線,既可傳輸數(shù)據(jù)又可傳輸時鐘,而且數(shù)據(jù)傳輸是雙向的,因此單總線技術具有線路簡單,硬件開銷小,便于總線擴展和維護等優(yōu)點。該公司所生產的單總線器件具有無需另附電源、在測試點直接將模擬信號數(shù)字化等特點,一方面減少了系統(tǒng)環(huán)節(jié),另一方面也保證了系統(tǒng)的精度。同時各公司開發(fā)的可視化軟件開發(fā)工具,更是向著效率高、功能強大的方向努力,從而為獲得良好的用戶界面奠定了基礎。國外倉庫的監(jiān)控技術已經發(fā)展的很成熟,高科技的數(shù)字傳感器廣泛應用于倉庫溫、濕度監(jiān)控系統(tǒng)。這種傳感器采用微控制器與半導體集成電路的最新技術,在一個芯片上集成了溫度檢測芯片、數(shù)據(jù)信號轉換芯片、計

16、算機接口芯片,存儲芯片等,除完成溫度檢測功能外,還可完成預置圍溫度、報警、多路A/D轉換、溫度補償?shù)裙δ堋S捎跀?shù)字溫度傳感器直接輸出數(shù)字量,從而解決了溫度信號長距離傳輸問題與傳輸過程中因干擾和衰減而導致的精度降低等問題。目前,國出現(xiàn)了豐富的數(shù)字傳感器配套產品,如中繼器、分線器、插接器、遠程控制模塊等。數(shù)字傳感器技術、通信技術、計算機已成為當今計算機技術的三大基礎,計算機監(jiān)控技術已成為人們關注的熱點。2) 軟件技術近年來,各種計算機軟件開發(fā)平臺有了很大發(fā)展,特別是基于Windows環(huán)境下的Delphi、Power Builder、Visual Basic、Visual C+的不斷升級,數(shù)據(jù)功能增

17、強,能夠使用ODBC驅動程序訪問各種數(shù)據(jù)系統(tǒng),并可使用ADO、DAO等各種應用程序開發(fā)接口,操縱數(shù)據(jù)庫中的數(shù)據(jù),管理數(shù)據(jù)庫,數(shù)據(jù)庫對象與結構方便地對監(jiān)測系統(tǒng)進行顯示、打印、查詢、自動控制等操作,為高性能的測控軟件設計提供了基礎。1.3 課題的目的任務和要求1. 本設計的具體任務我們設計了以AT89C52單片機為中央控制器的智能窗。該智能窗能通過傳感電路不斷循環(huán)檢測室濕度、溫度經處理后傳入單片機。單片機對信號進行運算,然后與由預先設置的參數(shù)臨界值相比較,從而作出開/關窗 的判斷,再結合窗狀態(tài)檢測電路所檢測到的當前窗狀態(tài),再輸出脈沖信號調整步進電機,完成下雨自動關窗等。2. 本設計的要求1)完成該

18、課題必須重點研究單片機控制、溫濕度采集、復位電路等關鍵問題和理論。2)研究方案的設計、研究方法和手段要合理,符合理論。第2章 設計方案論證2.1溫度檢測方案 方案一:溫度檢測采用熱電阻溫度傳感器。熱電阻是利用導體的電阻隨溫度變化的特性制成的測溫元件;現(xiàn)應用較多的有鉑、銅、鎳等熱電阻;其主要的特點為精度高、測量圍大、便于遠距離測量。濕度檢測使用濕敏電阻。方案二:在傳統(tǒng)的模擬信號遠距離溫度測量系統(tǒng)中,需要很好的解決引線誤差補償問題、多點測量切換誤差問題和放大電路零點漂移誤差問題等技術問題,才能夠達到較高的測量精度。另外一般監(jiān)控現(xiàn)場的電磁環(huán)境都非常惡劣,各種干擾信號較強,模擬溫度信號容易受到干擾而產

19、生測量誤差,影響測量精度。因此,在溫度測量系統(tǒng)中,采用抗干擾能力強的新型數(shù)字溫度傳感器是解決這些問題的最有效方案,新型數(shù)字溫度傳感器DS18B20具有體積更小、精度更高、適用電壓更寬在實際應用中取得了良好的測溫效果。DS18B20工作穩(wěn)定可靠,抗干擾能力強,而且電路也比較簡單。 綜合來看方案二測溫系統(tǒng)簡單、測溫精度高、連接方便,所以選用第二種方案。2.2 倉庫溫濕度檢測系統(tǒng)設計方案 方案一 :直流電機驅動電路使用最廣泛的就是H型全橋式電路,這種驅動電路可以很方便實現(xiàn)直流電機的四象限運行,分別對應正轉、正轉制動、反轉、反轉制動。圖2.1 H橋電機驅動電路橋式驅動電路的4只開關管都工作在

20、斬波狀態(tài),S1、S2為一組,S3、S4 為另一組,兩組的狀態(tài)互補,一組導通則 另一組必須關斷。當S1、S2導通時,S3、 S4關斷,電機兩端加正向電壓,可以實 現(xiàn)電機的正轉或反轉制動;當S3、S4導 通時,S1、S2關斷,電機兩端為反向電壓,電機反轉或正轉制動。在窗戶動作的過程中,我們要不斷地使電機在四個象限之間切換,即在正轉和反轉之間切換,也就是在S1、S2導通且S3、Q4關斷,到S1、S2關斷且S3、 S4導通,這兩種狀態(tài)之間轉換。在這種 情況下,理論上要求兩組控制信號完全互補,但是,由于實際的開關器件都存在開通和關斷時間,絕對的互補控制邏輯必然導致上下橋臂直通短路,比如在上橋臂關斷的過程

21、中,下橋臂導通了。上橋臂導通上下直通下橋臂導通圖2.2 窗戶橋臂導通示意圖因此,為了避免直通短路且保證各個開關管動作之間的協(xié)同性和同步性,兩組控制信號在理論上要 求互為倒相的邏輯關系,而實際上卻必須相差一個足夠的死區(qū)時間,這個矯正過程既可以通過硬件實現(xiàn),即在上下橋臂的兩組控制信號之間增加延時,也可以通過軟件實現(xiàn)。方案二:倉庫溫濕度檢測系統(tǒng)是以AT89C52系列單片機為核心構成的檢測系統(tǒng)。本課題提出了一種可以應用于中小型糧倉的溫濕度檢測系統(tǒng)的設計方案。 對倉庫溫濕度檢測系統(tǒng)的功能進行設計,相應的硬件電路和系統(tǒng)軟件設計,并做出控制系統(tǒng),從而達到設計的目的:溫度升高到超過預設值時,電機轉動關閉窗戶;

22、若下雨窗外的濕度傳感器會感應到并把窗戶關閉;通過按鍵可以設置自動開啟窗戶時間與自動關閉窗戶時間,到設定時間會自動關閉或開啟窗戶;可以設置根據(jù)溫濕度控制窗戶開關與根據(jù)時間開啟、關閉窗戶功能。綜合來看AT89C52具有強驅動能力,體積小,電路設計簡單等優(yōu)點,故選用方案二。第3章系統(tǒng)硬件設計3.1總體設計(1)顯示室溫與時間:通過溫度傳感器組成的測控系統(tǒng),間隔的測量室的溫度,并將溫度和日期時間經LCD液晶顯示出來。(2)自動防雨:平時不能與時關窗、出門在外也總有忘記關窗的時候,遇到下雨時,雨滴傳感器檢測到下雨信息,單片機控制板控制電動機動作,窗門自動關閉,使倉庫里免遭雨水侵撓。(3)自動開關窗與手、

23、自動切換:明媚的早上,單片機根據(jù)設定的開窗時間控制板自動打開窗戶,更新室空氣;傍晚太陽落下時窗子自動關閉。且為了人性化的設計,系統(tǒng)還可采用按鍵電路實現(xiàn)手動控制與自動控制的切換。系統(tǒng)由最初的實驗階段到產品的形成過程中,其基本的功能框架如下:顯示單元STC89C52雨滴檢測電路按鍵電路溫度采集電路電機電路圖3.1 系統(tǒng)框圖3.2 各單元電路設計3.2.1 控制單元設計 1.STC89C52單片機芯片圖3.2 MCU核心電路本設計中采用了STC89C52單片機作為主控芯片,STC89C52是一種帶8K字節(jié)閃爍可編程可擦除只讀存儲器(FPEROM-Flash Programmable and Eras

24、able Read Only Memory)的低電壓,高性能CMOS 8位微處理器,該器件采用STC高密度非易失存儲器制造技術制造,與工業(yè)標準的M C S-5 1指令集和輸出管腳相兼容。與傳統(tǒng)的51單片機相比較,STC89C52單片機具有較大的存儲器空間并且可以支持串口直接下載程序,免去了購買價格昂貴的專門編程器來燒寫程序,使得開發(fā)成本得到很好控制。STC89C52具有以下標準功能: 8k字節(jié)flash,256字節(jié)ram,32 位i/o 口線,看門狗定時器,2 個數(shù)據(jù)指針,三個16 位 定時器/計數(shù)器,一個6向量2級中斷結構,全雙工串行口,片晶振與時鐘電路。另外,stc89c52可降至0hz靜

25、態(tài)邏輯操作,支持2種軟件可選擇節(jié)電模式??臻e模式下,cpu 停止工作,允許ram、定時器/計數(shù)器、串口、中斷繼續(xù)工作。掉電保護方式下,ram容被保存,振蕩器被凍結,單片機一切工作停止,直到下一個中斷或硬件復位為止。圖3.3 STC89C52芯片引腳圖1)、STC89C52芯片引腳說明 主電源引腳(2根)VCC(Pin40):電源輸入,接5V電源GND(Pin20):接地線外接晶振引腳(2根)XTAL1(Pin19):片振蕩電路的輸入端XTAL2(Pin20):片振蕩電路的輸出端控制引腳(4根)RST/VPP(Pin9):復位引腳,引腳上出現(xiàn)2個機器周期的高電平將使單片機復位。ALE/PROG(

26、Pin30):地址鎖存允許信號PSEN(Pin29):外部存儲器讀選通信號EA/VPP(Pin31):程序存儲器的外部選通,接低電平從外部程序存儲器讀指令,如果接高電平則從部程序存儲器讀指令。可編程輸入/輸出引腳(32根)STC89C52單片機有4組8位的可編程I/O口,分別位P0、P1、P2、P3口,每個口有8位(8根引腳),共32根。P0口(Pin39Pin32):8位雙向I/O口線,名稱為P0.0P0.7P1口(Pin1Pin8):8位準雙向I/O口線,名稱為P1.0P1.7 P2口(Pin21Pin28):8位準雙向I/O口線,名稱為P2.0P2.7 P3口(Pin10Pin17):8

27、位準雙向I/O口線,名稱為P3.0P3.7l P0端口(P0.0P0.7,3932引腳):P0口是一個漏極開路的8位雙向I/O口。作為輸出端口,每個引腳能驅動8個TTL負載,對端口P0寫入“1”時,可以作為高阻抗輸入。在訪問外部程序和數(shù)據(jù)存儲器時,P0口也可以提供低8位地址和8位數(shù)據(jù)的復用總線。此時,P0口部上拉電阻有效。在Flash ROM編程時,P0端口接收指令字節(jié);而在校驗程序時,則輸出指令字節(jié)。驗證時,要求外接上拉電阻。l P1端口(P1.0P1.7,18引腳):P1口是一個帶部上拉電阻的8位雙向I/O口。P1的輸出緩沖器可驅動(吸收或者輸出電流方式)4個TTL輸入。對端口寫入1時,通

28、過部的上拉電阻把端口拉到高電位,此時可用作輸入口。P1口作輸入口使用時,因為有部上拉電阻,那些被外部拉低的引腳會輸出一個電流(I/L )。此外,p1.0和p1.2分別作定時器/計數(shù)器2的外部計數(shù)輸入(p1.0/t2)和時器/計數(shù)器2 的觸發(fā)輸入(p1.1/t2ex),具體如下表所示。 在flash編程和校驗時,p1口接收低8位地址字節(jié)。引腳號第二功能:p1.0 t2(定時器/計數(shù)器t2的外部計數(shù)輸入),時鐘輸出p1.1 t2ex(定時器/計數(shù)器t2的捕捉/重載觸發(fā)信號和方向控制)p1.5 mosi(在線系統(tǒng)編程用)p1.6 miso(在線系統(tǒng)編程用)p1.7 sck(在線系統(tǒng)編程用)l P2端

29、口(P2.0P2.7,2128引腳):P2口是一個帶部上拉電阻的8位雙向I/O端口。P2的輸出緩沖器可以驅動(吸收或輸出電流方式)4個TTL邏輯電平輸入。對p2端口寫入1時,通過部的上拉電阻把端口拉到高電平,這時可用作輸入口。P2作為輸入口使用時,因為有部的上拉電阻,那些被外部信號拉低的引腳會輸出一個電流。在訪問外部程序存儲器和16位地址的外部數(shù)據(jù)存儲器(如執(zhí)行“MOVX DPTR”指令)時,P2送出高8位地址。在訪問8位地址的外部數(shù)據(jù)存儲器(如執(zhí)行“MOVX R1”指令)時,P2口引腳上的容(就是專用寄存器(SFR)區(qū)中的P2寄存器的容),在整個訪問期間不會改變。在對Flash ROM編程和

30、程序校驗期間,P2也接收高位地址和一些控制信號。l P3端口(P3.0P3.7,1017引腳):P3是一個具有部上拉電阻的8位雙向I/O端口。P3的輸出緩沖器可驅動(吸收或輸出電流方式)4個TTL輸入。對p3端口寫入“1”時,通過部的上拉電阻把端口拉到高電位,這時可用作輸入口。P3做輸入口使用時,因為有部的上拉電阻,那些被外部信號拉低的引腳會輸入一個電流(I/L )。p3口亦作為STC89C52特殊功能(第二功能)使用,如下表所示。在flash編程和校驗時,p3口也接收一些控制信號。引腳號第二功能:P3.0 rxd(串行輸入口)P3.1 txd(串行輸出口)P3.2 into(外中斷0)P3.

31、3 int1(外中斷1)P3.4 to(定時/計數(shù)器0)P3.5 t1(定時/計數(shù)器1)P3.6 wr(外部數(shù)據(jù)存儲器寫選通)P3.7 rd(外部數(shù)據(jù)存儲器讀選通)l RST復位輸入。當振蕩器工作時,RST引腳出現(xiàn)兩個機器周期以上高電平將是單片機復位。l ALE/PROG當訪問外部程序存儲器或數(shù)據(jù)存儲器時,ALE(地址鎖存允許)輸出脈沖用于鎖存地址的低8位字節(jié)。一般情況下,ALE仍以時鐘振蕩頻率的1/6輸出固定的脈沖信號,因此它可對外輸出時鐘或用于定時目的。要注意的是:每當訪問外部數(shù)據(jù)存儲器時將跳過一個ALE脈沖。l 對flash存儲器編程期間,該引腳還用于輸入編程脈沖(PROG)。l 如有必

32、要,可通過對特殊功能寄存器(SFR)區(qū)中的8eh單元的d0位置位,可禁止ALE操作。該位置位后,只有一條MOVX和MOVC指令才能將ALE激活。此外,該引腳會被微弱拉高,單片機執(zhí)行外部程序時,應設置ALE禁止位無效。l PSEN程序儲存允許(PSEN)輸出是外部程序存儲器的讀選通信號,當STC89C52由外部程序存儲器取指令(或數(shù)據(jù))時,每個機器周期兩次PSEN有效,即輸出兩個脈沖,在此期間,當訪問外部數(shù)據(jù)存儲器,將跳過兩次PSEN信號。l EA/VPP外部訪問允許,欲使CPU僅訪問外部程序存儲器(地址為0000h-ffffh),EA端必須保持低電平(接地)。需注意的是:如果加密位lb1被編程

33、,復位時部會鎖存ea端狀態(tài)。l 如EA端為高電平(接VCC端),CPU則執(zhí)行部程序存儲器的指令。l flash存儲器編程時,該引腳加上+12v的編程允許電源VPP,當然這必須是該器件是使用12v編程電壓VPP。2)、STC89C52主要功能如下表所示表3.1 STC89C52的主要功能特性主要功能特性兼容MCS51指令系統(tǒng)8K可反復擦寫Flash ROM32個雙向I/O口256x8bit部RAM3個16位可編程定時/計數(shù)器中斷時鐘頻率0-24MHz2個串行中斷可編程UART串行通道2個外部中斷源共6個中斷源2個讀寫中斷口線3級加密位低功耗空閑和掉電模式軟件設置睡眠和喚醒功能2. DS1302時

34、鐘電路本電路采用DS1302時鐘芯片,DS1302主要特點是采用串行數(shù)據(jù)傳輸,可為掉電保護電源提供可編程的充電功能,并且可以關閉充電功能。采用普通的32768Hz晶振,兩個電源Vcc1與Vcc2接電源VDD,這樣如果沒有交流電的供電也可以由可充電電池供電,起了掉電保護,防止數(shù)據(jù)丟失。2腳X1(晶振引腳)與3腳X2(晶振引腳)接32768Hz的晶振,DS1302的7腳CLK(串行時鐘輸入引腳)與單片機的P1.5相連,6腳I/O(數(shù)據(jù)輸入輸出引腳)與單片機的P1.6相連,5腳RET(復位引腳)與單片機的P1.7相連。DS1302與單片機的連接僅需要3條線:CE引腳、SCLK串行時鐘引腳、I/O串行

35、數(shù)據(jù)引腳,Vcc2為備用電源,外接32.768kHz晶振,為芯片提供計時脈沖。圖3.4 時鐘電路原理圖現(xiàn)在流行的串行時鐘電路很多,如DS1302、 DS1307、PCF8485等。這些電路的接口簡單、價格低廉、使用方便,被廣泛地采用。本文介紹的實時時鐘電路DS1302 是美國DALLAS公司推出的一種高性能、低功耗、帶RAM的實時時鐘電路。它可以對年、月、日、周日、時、分、秒進行計時,具有閏年補償功能,工作電壓為2.5V5.5V。采用三線接口與CPU進行同步通信,并可采用突發(fā)方式一次傳送多個字節(jié)的時鐘信號或RAM數(shù)據(jù)。DS1302部有一個31×8的用于臨時性存放數(shù)據(jù)的RAM寄存器。D

36、S1302是DS1202的升級產品,與DS1202兼容,但增加了主電源/后備電源雙電源引腳,同時提供了對后備電源進行涓細電流充電的能力。它可為掉電保護電源提供可編程的充電功能,并且可以關閉充電功能。采用普通32.768kHz晶振。 Ø 1)、DS1302芯片的引腳說明圖3.5 DS1302芯片的引腳圖Vcc1 、VCC2(8、1):其中Vcc1為后備電源,VCC2為主電源。在主電源關閉的情況下,也能保持時鐘的連續(xù)運行。DS1302由Vcc1或Vcc2兩者中的較大者供電。當Vcc2大于Vcc1+0.2V時,Vcc2給DS1302供電。當Vcc2小于Vcc1時,DS1302由Vcc1供電

37、。X1、X2(2、3):X1和X2是振蕩源,外接32.768kHz晶振。RST(5) :RST是復位/片選線,通過把RST輸入驅動置高電平來啟動所有的數(shù)據(jù)傳送。RST輸入有兩種功能:首先,RST接通控制邏輯,允許地址/命令序列送入移位寄存器;其次,RST提供終止單字節(jié)或多字節(jié)數(shù)據(jù)的傳送手段。當RST為高電平時,所有的數(shù)據(jù)傳送被初始化,允許對DS1302進行操作。如果在傳送過程中RST置為低電平,則會終止此次數(shù)據(jù)傳送,I/O引腳變?yōu)楦咦钁B(tài)。上電運行時,在Vcc>2.0V之前,RST必須保持低電平。只有在SCLK為低電平時,才能將RST置為高電平。I/O (6) :串行數(shù)據(jù)輸入輸出端(雙向)

38、。SCLK(7) :時鐘輸入端。 Ø 2)、DS1302芯片的工作原理DS1302的控制字節(jié)DS1302 的控制字如圖3.12所示。控制字節(jié)的最高有效位(位7)必須是邏輯1,如果它為0,則不能把數(shù)據(jù)寫入DS1302中,位6如果為0,則表示存取日歷時鐘數(shù)據(jù),為1表示存取RAM數(shù)據(jù);位5至位1指示操作單元的地址;最低有效位(位0)如為0表示要進行寫操作,位1表示進行讀操作,控制字節(jié)總是從最低位開始輸出。 圖3.6 DS1302的控制字節(jié)數(shù)據(jù)輸入輸出(I/O)在控制指令字輸入后的下一個SCLK時鐘的上升沿時,數(shù)據(jù)被寫入DS1302,數(shù)據(jù)輸入從低位即位0開始。同樣,在緊跟8位的控制指令字后的

39、下一個SCLK脈沖的下降沿讀出DS1302的數(shù)據(jù),讀出數(shù)據(jù)時從低位0位到高位7。 DS1302的寄存器DS1302有12個寄存器,其中有7個寄存器與日歷、時鐘相關,存放數(shù)據(jù)為BCD碼形式,其日歷、時間寄存器與其控制字見表3.2。 表3.2 DS1302的日歷、時間寄存器與其控制字寄存器名命令字取值圍各位容寫操作讀操作76543210秒寄存器80H81H00-59CH10SECSEC分鐘寄存器82H83H00-59010MINMIN小時寄存器84H85H01-12或00-2312/24010/APHRHR日期寄存器86H87H01-28,29,30,310010DATEDATE月份寄存器88H8

40、9H01-12000IQMMONTH周日寄存器8AH8BH01-0700000DAY年份寄存器8CH8DH00-9910YEARYEAR此外,DS1302 還有年份寄存器、控制寄存器、充電寄存器、時鐘突發(fā)寄存器與與RAM相關的寄存器等。時鐘突發(fā)寄存器可一次性順序讀寫除充電寄存器外的所有寄存器容。DS1302與RAM相關的寄存器分為兩類:一類是單個RAM單元,共31個,每個單元組態(tài)為一個8位的字節(jié),其命令控制字為C0HFDH,其中奇數(shù)為讀操作,偶數(shù)為寫操作;另一類為突發(fā)方式下的RAM寄存器,此方式下可一次性讀寫所有的RAM的31個字節(jié),命令控制字為FEH(寫)、FFH(讀)。DS1302與CPU

41、的連接DS1302與CPU的連接需要三條線,即SCLK(7)、I/O(6)、RST(5)。實際上,在調試程序時可以不加電容器,只加一個32.768kHz 的晶振即可。只是選擇晶振時,不同的晶振,誤差也較大。另外,還可以在上面的電路中加入DS18B20,同時顯示實時溫度。只要占用CPU一個口線即可。DS1302 存在時鐘精度不高,易受環(huán)境影響,出現(xiàn)時鐘混亂等缺點。DS1302可以用于數(shù)據(jù)記錄,特別是對某些具有特殊意義的數(shù)據(jù)點的記錄,能實現(xiàn)數(shù)據(jù)與出現(xiàn)該數(shù)據(jù)的時間同時記錄。這種記錄對長時間的連續(xù)測控系統(tǒng)結果的分析與對異常數(shù)據(jù)出現(xiàn)的原因的查找具有重要意義。傳統(tǒng)的數(shù)據(jù)記錄方式是隔時采樣或定時采樣,沒有具

42、體的時間記錄,因此,只能記錄數(shù)據(jù)而無法準確記錄其出現(xiàn)的時間;若采用單片機計時,一方面需要采用計數(shù)器,占用硬件資源,另一方面需要設置中斷、查詢等,同樣耗費單片機的資源,而且,某些測控系統(tǒng)可能不允許。但是,如果在系統(tǒng)中采用時鐘芯片DS1302,則能很好地解決這個問題。3.復位電路單片機最小應用系統(tǒng)中復位電路使CPU和系統(tǒng)中的其他功能部件都處在一個確定的初始狀態(tài)下,并從這個狀態(tài)開始工作,無論是在控制系統(tǒng)剛開始接上電源時,還是斷電后或者發(fā)生故障后都要復位。本設計采用如圖3.10所示的復位電路,該電路既可以實現(xiàn)上電復位,又可以按鍵復位。1)復位操作復位是單片機的初始化操作。其主要功能是把PC初始化為00

43、00H,使單片機從0000H單元開始執(zhí)行程序。除了進入系統(tǒng)的正常初始化之外,當由于程序運行或操作出錯使系統(tǒng)處于死鎖狀態(tài)時,為擺脫困境,也需按復位鍵重新啟動。除PC之外,復位操作還對其他一些寄存器有影響,它們的復位狀態(tài)如表3.3所示。表3.3 一些寄存器的復位狀態(tài)寄存器復位狀態(tài)寄存器復位狀態(tài)PC0000HTCON00HACC00HTL000HPSW00HTH000H2)復位信號與其產生RST引腳是復位信號的輸入端。復位信號是高電平有效,其有效時間應持續(xù)24個振蕩周期(即二個機器周期)以上。若使用頗率為6MHz的晶振,則復位信號持續(xù)時間應超過4us才能完成復位操作。產生復位信號的電路邏輯如圖3.7

44、所示:RST/VPD復位電路片內RAM施密特觸發(fā)器D2VCCD11VSS圖3.7 復位信號的電路邏輯圖整個復位電路包括芯片、外兩部分。外部電路產生的復位信號(RST)送至施密特觸發(fā)器,再由片復位電路在每個機器周期的S5P2時刻對施密特觸發(fā)器的輸出進行采樣,然后才得到部復位操作所需要的信號。復位操作有上電自動復位與按鍵手動復位兩種方式。其中按鍵手動復位有電平方式和脈沖方式兩種。(a)上電復位 (b)按鍵電平復位 (c)按鍵脈沖復位圖3.8 復位電路 上電自動復位是通過外部復位電路的電容充電來實現(xiàn)的,其電路如圖3.8(a)所示。這佯,只要電源Vcc的上升時間不超過1ms,就可以實現(xiàn)自動上電復位,即

45、接通電源就成了系統(tǒng)的復位初始化。按鍵電平復位是通過使復位端經電阻與Vcc電源接通而實現(xiàn)的,其電路如圖3.8(b)所示;按鍵脈沖復位是利用RC微分電路產生的正脈沖來實現(xiàn)的,其電路如圖3.8(c)所示。本系統(tǒng)的復位電路采用按鍵電平復位方式。圖3.9 單片機復位電路其它模塊通過P0、P1、P2和P3四組I/O口與單片機控制系統(tǒng)相接,從而實現(xiàn)單片機控制系統(tǒng)的總調度任務。3.2.2 檢測單元設計1. DS18B20溫度采集電路DS18B20測溫系統(tǒng)具有測溫系統(tǒng)簡單、測溫精度高、連接方便、占用口線少等優(yōu)點。DS18B20溫度采集電路有三種不同供電方式: 寄生電源供電方式、寄生電源強上拉供電方式、外部電源供

46、電方式。1)DS18B20寄生電源供電方式圖3.10 寄生電源供電方式在寄生電源供電方式下,DS18B20從單線信號線上汲取能量:在信號線DQ處于高電平期間把能量儲存在部 電容里,在信號線處于低電平期間消耗電容上的電能工作,直到高電平到來再給寄生電源(電容)充電。 要想使DS18B20進行精確的溫度轉換,I/O線必須保證在溫度轉換期間提供足夠的能量,由 于每個DS18B20在溫度轉換期間工作電流達到1mA,當幾個溫度傳感器掛在同一根I/O線上進行多點測溫時,只靠4.7K上拉電阻就無法提供足夠的 能量,會造成無法轉換溫度或溫度誤差極大。 因此,圖3.10電路只適應于單一溫度傳感器測溫情況下使用,

47、不適宜采用電池供電系統(tǒng)中。并 且工作電源VCC必須保證在5V,當電源電壓下降時,寄生電源能夠汲取的能量也降低,會使溫度誤差變大。2)DS18B20寄生電源強上拉供電方式圖3.11 DS18B20寄生電源強上拉供電方式寄生電源強上拉供電方式電路圖改進的寄生電源供電方式如圖3.11所示,為了使DS18B20在動態(tài)轉換周期中獲得足夠的電流供應,當進行溫度轉換或拷貝到 E2存儲器操作時,用MOSFET把I/O線直接拉到VCC就可提供足夠的電流,在發(fā)出任何涉與到拷貝到E2存儲器或啟動溫度轉換的指令后,必須在最 多10S把I/O線轉換到強上拉狀態(tài)。在強上拉方式下可以解決電流供應不走的問題,因此也適合于多點

48、測溫應用,缺點就是要多占用一根I/O口線進行強上拉切換。3)DS18B20的外部電源供電方式 圖3.12 DS18B20外部電源供電方式在外部電源供電方式下,DS18B20工作電源由VDD引腳接入,此時I/O線不需要強上拉,不存在電源電流不足的問題,可以保證 轉換精度,同時在總線上理論可以掛接任意多個DS18B20傳感器,組成多點測溫系統(tǒng)。注意:在外部供電的方式下,DS18B20的GND引腳不能懸空 ,否則不能轉換溫度,讀取的溫度總是85。 本設計中DS18B20溫度采集電路采用外部電源供電方式。圖3.13溫度采集電路原理圖2 .DS18B20溫度傳感器芯片美國Dallas 半導體公司的數(shù)字化

49、溫度傳感器DS1820 是世界上第一片支持 "一線總線"接口的溫度傳感器,在其部使用了在板(ON-B0ARD)專利技術。全部傳感元件與轉換電路集成在形如一只三極管的集成電路。一線總線獨特而且經濟的特點,使用戶可輕松地組建傳感器網絡,為測量系統(tǒng)的構建引入全新概念。現(xiàn)在,新一代的數(shù)字溫度傳感器DS18B20 體積更小、精度更高、適用電壓更寬、采用一線總線、可組網,可充分發(fā)揮“一線總線”的優(yōu)點,在實際應用中取得了良好的測溫效果。(1)DS18B20的主要特性 1)適應電壓圍更寬,電壓圍:3.05.5V,在寄生電源方式下可由數(shù) 據(jù)線供電。2)獨特的單線接口方式,DS18B20在與微

50、處理器連接時僅需要一條口線即可實現(xiàn)微處理器與DS18B20的雙向通訊。3)DS18B20支持多點組網功能,多個DS18B20可以并聯(lián)在唯一的三線上,實現(xiàn)組網多點測溫。4)DS18B20在使用中不需要任何外圍元件,全部 傳感元件與轉換電路集成在形如一只三極管的集成電路。5)溫圍55+125,在-10+85時精度為±0.5。6)可編程 的分辨率為912位,對應的可分辨溫度分別為0.5、0.25、0.125和0.0625,可實現(xiàn)高精度測溫。7)在9位分辨率時最多在 93.75ms把溫度轉換為數(shù)字,12位分辨率時最多在750ms把溫度值轉換為數(shù)字,速度更快。8)測量結果直接輸出數(shù)字溫度信號,

51、以"一 線總線"串行傳送給CPU,同時可傳送CRC校驗碼,具有極強的抗干擾糾錯能力。9)負壓特性:電源極性接反時,芯片不會因發(fā)熱而燒毀, 但不能正常工作。 (2)DS18B20的外形和部結構 圖3.14 DS18B20的封裝與引腳圖DS18B20部結構主要由四部分組成:64位光刻ROM 、溫度傳感器、非揮發(fā)的溫度報警觸發(fā)器TH和TL、配置寄存器。 DS18B20芯片引腳說明: 1) DQ為數(shù)字信號輸入/輸出端;2) GND為電源地;3) VDD為外接供電電源輸入端(在寄生電源接線方式時接地)。(3)DS18B20的工作原理DS18B20的讀寫時序和測溫原理與DS1820一樣

52、,只是得到的溫度值的位數(shù)因分辨率不同而不同,且溫度轉換時的延時時間由2s減為750ms。 DS18B20測溫原理如圖3.4所示。圖中低溫度系數(shù)晶振的振蕩頻率受溫度影響很小,用于產生固定頻率的脈沖信號送給計數(shù)器1。高溫度系數(shù)晶振隨溫度變化其振蕩率明顯改變,所產生的信號作為計數(shù)器2的脈沖輸入。計數(shù)器1和溫度寄存器被預置在55所對應的一個基數(shù)值。計數(shù)器1對低溫度系數(shù)晶振產生的脈沖信號進行減法計數(shù),當計數(shù)器1的預置值減到0時,溫度寄存器的值將加1,計數(shù)器1的預置將重新被裝入,計數(shù)器1重新開始對低溫度系數(shù)晶振產生的脈沖信號進行計數(shù),如此循環(huán)直到計數(shù)器2計數(shù)到0時,停止溫度寄存器值的累加,此時溫度寄存器中

53、的數(shù)值即為所測溫度。圖3.9中的斜率累加器用于補償和修正測溫過程中的非線性,其輸出用于修正計數(shù)器1的預置值。DS18B20部結構主要由四部分組成:64位光刻ROM、溫度傳感器、非揮發(fā)的溫度報警觸發(fā)器TH和TL、配置寄存器。該裝置信號線高的時候,部電容器 儲存能量通由1線通信線路給片子供電,而且在低電平期間為片子供電直至下一個高電平的到來重新充電。 DS18B20的電源也可以從外部3V-5 .5V的電壓得到。 DS18B20采用一線通信接口。因為一線通信接口,必須在先完成ROM設定,否則記憶和控制功能將無法使用。主要首先提供以下功能命令之一: 讀ROM, ROM匹配, 搜索ROM, 跳過ROM,

54、 報警檢查。這些指令操作作用在沒有一個器件的64位光刻ROM序列號,可以在掛在一線上多個器件選定某一個器件,同時,總線也可以知道總線上掛有有多少,什么樣的設備。若指令成功地使DS18B20完成溫度測量,數(shù)據(jù)存儲在DS18B20的存儲器。一個控制功能指揮指示DS18B20的演出測溫。測量結果將被放置在DS18B20存中,并可以讓閱讀發(fā)出記憶功能的指揮,閱讀容的片上存儲器。溫度報警觸發(fā)器TH和TL都有一字節(jié)EEPROM 的數(shù)據(jù)。如果DS18B20不使用報警檢查指令,這些寄存器可作為一般的用戶記憶用途。在片上還載有配置字節(jié)以理想的解決溫度數(shù)字轉換。寫TH,TL指令以與配置字節(jié)利用一個記憶功能的指令完

55、成。通過緩存器讀寄存器。所有數(shù)據(jù)的讀,寫都是從最低位開始。斜率增加器器預置比較 低溫度系數(shù)震蕩器計數(shù)器1預置Tx=0溫度寄存器 高溫度系數(shù)震蕩器計數(shù)器2=0 圖3.15 DS18B20的測溫原理框圖DS18B20有六條控制命令,指令約定代碼操作說明如下:l 溫度轉換 44H 啟動DS18B20進行溫度轉換;l 讀暫存器 BEH 讀暫存器9位二進制數(shù)字;l 寫暫存器 4EH 將數(shù)據(jù)寫入暫存器的TH、TL字節(jié);l 復制暫存器 48H 把暫存器的TH、TL字節(jié)寫到E2RAM中;l 重新調E2RAM B8H 把E2RAM中的TH、TL字節(jié)寫到暫存器TH、TL字節(jié);l 讀電源供電方式 B4H 啟動DS1

56、8B20發(fā)送電源供電方式的信號給主CPU。DS18B20的溫度讀?。篋S18B20在出廠時以配置為12位,讀取溫度時共讀取16位,所以把后11位的2進制轉化為10進制后在乘以0.0625便為所測的溫度,還需要判斷正負。前5個數(shù)字為符號位,當前5位為1時,讀取的溫度為負數(shù);當前5位為0時,讀取的溫度為正數(shù)。16位數(shù)字擺放是從低位到高位。3.2.3 顯示單元設計1. LCD1602液晶顯示電路顯示電路設計采用的是液晶LCD1602來顯示實時日期時間、溫度等容。P0口作為數(shù)據(jù)口連接LCD1602的714口,來傳輸數(shù)據(jù)與指令,由于P0口帶負載能力差,故需接上拉電阻。P2.5接LCD1602的4腳RS(數(shù)據(jù)/命令選擇端),P2.6接LCD1602的5腳R/W(讀寫選擇端),P2.7接LCD1602的6腳E(使能信號)。電位器用來調節(jié)LCD1602的亮度。圖3.16 芯片LCD1602LCD1602各引腳說明:第1腳:VS

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論