




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、基于89c52單片機的恒溫控制系統設計摘 要溫度的測量與控制在工業、農業、國防、科研、醫療等行業有著廣泛的應用。隨著電力電子技術的不斷發展,各種高性能的模數轉換器在溫度測控領域得到了極為廣泛的應用。本設計的基于單片機的恒溫控制系統,采用intel公司推出的mcs-51系列單片機89c52為控制核心,具有靈活設定溫度上下限、超限報警、自行調節溫度、置位復位及數字顯示等功能。論文從硬件和軟件兩方面介紹了基于單片機的恒溫控制系統,并對硬件原理圖和程序圖作了簡潔的描述。此次設計的基于單片機的恒溫控制系統主要是由單片機、溫度采集電路、繼電器控制電路、顯示電路等模塊組成,其中溫度采集部分采用adc0808
2、模數轉換器,顯示部分采用led數碼管。adc0808將采集的模擬信號轉換成數字信號送給單片機,單片機對信號進行相應處理,當溫度超過設定的限定值時,單片機控制報警系統進行報警,同時驅動繼電器打開相應的開關使相應的執行機構運行,通過控制繼電器控制外部加熱裝置或制冷裝置使環境溫度處于設定的溫度上下限范圍之內,并把溫度數據送至led顯示,從而實現恒溫控制的目的。本設計不僅擬定了基本原理設計方案,而且進行了keil軟件的調試和protues軟件的仿真操作。關鍵詞:單片機,adc0808,led,恒溫控制iiabstracttemperature measurement and control in in
3、dustry, agriculture, national defense, scientific research, medical and other industries widely used. with the continuous development of power electronics technology, a variety of high-performance analog-in temperature measurement and control field has been very widely used.the design of the tempera
4、ture control system based on single chip, using the company launched intel mcs-51 series 89c52 microcontroller to control the core, with the flexibility to set upper and lower temperature, limit alarm, self-adjust the temperature, set-reset, and digital display.papers from both hardware and software
5、 aspects introduced microcontroller-based temperature control system, and the hardware schematic diagram and made a concise description of the program. the design of microcontroller-based temperature control system is mainly by the microcontroller, temperature acquisition circuit, relay control circ
6、uit, display circuit modules, some of which temperature acquisition using adc0808 adc, some with led digital tube. will be collected adc0808 analog signal into a digital signal to the microcontroller, the microcontroller signals dealt with accordingly, when the temperature exceeds the set limit valu
7、e, the mcu control alarm system, alarm, and drive the relay opens the corresponding switch so that the corresponding actuator operation, by controlling the relay control an external heating means or cooling means that the ambient temperature is set within the upper and lower temperature range, and t
8、he temperature data to the led display, in order to achieve temperature control. this design not only developed the basic principles of design programs, but were protues keil software debugging and simulation software operation.key words: microcontroller,adc0808, led, thermostatically controlledii目
9、錄摘 要iabstractii1 緒論1.1 本課程設計的設計背景11.2 本課程設計的主要內容和意義12 整體方案設計2.1 整體方案32.1.1 系統分析32.1.2 系統功能劃分32.2 方案選擇32.2.1 單片機選擇32.2.2 鍵盤電路選擇42.2.3 顯示電路選擇42.2.4 模數轉換器選擇52.2.5 其它器件選擇52.2.6 軟件程序選擇53 硬件設計3.1 89c52單片機簡介73.2 硬件電路設計概述83.3 時鐘電路設計93.4 復位電路設計93.5 按鍵輸入電路設計103.6 蜂鳴器報警電路設計113.7 繼電器控制加熱電路設計123.8 繼電器控制制冷電路設計133
10、.9 溫度采集電路設計143.10 led數碼管顯示電路設計16iii4 系統軟件程序設計4.1 主程序設計184.1 模數轉換器子程序設計204.1 數碼管顯示子程序設計204.1 中斷子程序設計215 系統調試5.1 keil軟件調試235.2 protues軟件調試255.1 protues軟件仿真296 總結與展望33致 謝35參考文獻36附錄1 電路原理圖37附錄2 程序清單38iv1 緒論1.1 本課程設計的背景在現代化的工業生產中,溫度是常用的主要被控參數,任何化學反應和物理變化過程都與溫度息息相關,因此溫度控制是生產自動化的重要任務。例如:在電力工程、冶金工業、化工生產、機械制
11、造、造紙行業和食品加工等許多領域中,人們都需要對各類加熱爐、熱處理爐、反應爐和鍋爐中的溫度進行檢測和控制。可以毫不夸張的說,溫度控制應用于我們日常生活中的方方面面,在我們的生產生活中是必不可少的一部分。單片機是一種集中央處理器、只讀存儲器 、隨機存儲器、輸入輸出接口和中斷系統等部分于一體的器件,我們只需要外加電源和晶振就可實現對數字信息的控制和處理。因此,單片機廣泛用于現代工業控制中。基于單片機的控制具有價格低、體積小、重量輕、耗電少、靈活機動和可靠性高等很多優點,假如我們能夠利用單片機進行溫度的測量和控制,那么這將會大幅度提高溫度測量和控制的靈活性和可靠性。單片機對溫度的測量和控制過程是借助
12、于模數轉換器以及擴展接口和執行機構來進行的。在閉環控制系統中,模數轉換器實時采集參數,并通過單片機自動記錄、處理并控制執行機構動作來進行調節和控制。因此我們需要對單片機進行擴展和開發,來形成整個單片機的溫度控制系統。常用的溫度控制電路根據所要求的性能指標和應用場合有所不同,例如在工業中,怎樣提高溫度控制對象的運行性能一直以來都是技術人員和控制人員努力解決的問題。這類控制對象不僅滯后現象嚴重,而且慣性大,存在很多不確定的因素,我們難以建立精確的數學模型,從而導致控制系統性能不佳,甚至出現控制不穩定、失控的現象。在很久以前人們使用溫度計來采集溫度,通過人工操作加熱、通風和降溫設備來控制溫度,這樣不
13、僅控制精度低,而且操作人員的勞動強度大。采用單片機對溫度進行控制,不僅具有組態簡單、控制方便和操作靈活等優點,而且可以大大提高被控溫度的技術指標,從而能夠大幅度提高產品的質量和數量。因此,單片機對溫度的控制問題是一個工業中經常遇到的問題。1.2 本課程設計的主要內容和意義基于單片機的恒溫控制系統,以89c52單片機和adc0808模數轉換器為主要功能部件,單片機控制的各個模塊電路聯合作用,可以實現溫度的測量并顯示、超過上下限報警、自動調節溫度等功能。在設計的過程中我充分考慮到性價比和精度的因素,在選用通用元件、低價格的的基礎上,盡量滿足設計要求,并且使恒溫控制系統具有較高的精度。本恒溫控制系統
14、以單片機的控制為核心,實時監測環境的溫度,并設定了這個參數的上下限定值,并且具有相應的報警系統,當超過設定的限定值時,單片機控制報警系統進行報警,而且同時驅動繼電器打開相應的開關使相應的執行機構運行。當環境溫度高于設定溫度上限時,驅動降溫裝置執行降溫工作;當環境溫度低于溫度下限時,驅動升溫裝置執行升溫工作。當參數值恢復到設定值范圍內時,單片機控制執行機構停止運行,使環境的溫度在一定的范圍內得到控制,從而實現恒溫的目的。本論文的設計理念緊扣時代的步伐,順應當今世界科技發展的潮流。基于單片機的恒溫控制系統對于工業生產效率的提高,可以起到非常大的作用。我們都知道科學技術是第一生產力,只要將科學技術運
15、用得當,先進的科學技術不僅能夠節約更多的人力和物力,還可以降低生產過程中的能源材料的消耗,省略一些繁瑣的細節,使各種產品的生產效益更上一個臺階。 本論文是基于當前科學技術發展的潮流趨勢下,我經過慎重考慮后決定執筆的,也是對自己所學知識的一次檢驗,我期望能夠獲得溫故而知新的效果。我只有不斷地學習才能有不斷的進步,通過結合社會發展的實際情況,然后根據自己的愛好和特點,更好的去了解自己,充分挖掘自己的潛力。學以致用是老師要求我們去努力的方向,只有靠自己鍥而不舍的奮發圖強,才能爭取自己的一片美好天地,才能為自己未來的發展打下堅實的基礎!2 整體方案設計2.1 整體方案2.1.1 系統分析基于單片機的恒
16、溫控制系統主要包含單片機、溫度采集電路、輸入控制電路、時鐘電路、復位電路、顯示電路、蜂鳴器報警電路、繼電器控制加熱和制冷電路等電路。其功能模塊圖如圖2.1所示: 時鐘電路 復位電路 溫度采集單片機顯示電路 輸入控制 蜂鳴器報警繼電器控制制冷電路繼電器控制加熱電路圖2.1 基于單片機的恒溫控制系統功能模塊圖2.1.2 系統功能劃分本次設計整個恒溫控制系統主要分為硬件部分和軟件部分。硬件部分是包括該恒溫控制系統各個電路模塊的統稱,是整個設計中的核心;軟件部分是系統能夠實現預期功能的必要保證,也是本系統中必不可少的部分。硬件部分主要包括單片機、溫度采集電路、輸入控制電路、時鐘電路、復位電路、顯示電路
17、、蜂鳴器報警電路、繼電器控制加熱和制冷電路等,其中最主要的部分是單片機控制電路,基于不同型號的單片機可以有不同的功能,選擇不同的單片機會有不同的硬件設計方案。軟件部分指的就是控制單片機實現預期功能所必須的語言程序,就我目前所能掌握的知識來說,可以是匯編程序,也可以是c語言程序。2.2 方案選擇2.2.1 單片機選擇方案一:選擇8031單片機8031單片機是intel公司生產的mcs-51系列單片機中的一種,除無片內只讀存儲器外,其余特性與mcs-51單片機基本一樣。采用40個引腳的8031單片機,有4個8位并行i/o接口:p0、p1、p2、p3和128個字節的片內數據存儲器,但沒有片內程序存儲
18、器,需要擴展程序存儲器,外圍器件較多,功耗較高。方案二: 選擇89c52單片機89c52單片機運行速度快,算術運算功能強,軟件編程靈活,不僅可用軟件編程實現各種算法和邏輯控制 ,而且具有成本低、體積小、功耗低、技術成熟等優點。相對于51系列單片機來說,89c52單片機具有51單片機內核,價格比較便宜,便于程序的下載,而且具有更強的加密性能和抗干擾能力1。基于以上分析擬訂方案二,由89c52單片機作為控制核心,對溫度采集、實時顯示和加熱裝置以及制冷裝置進行控制。2.2.2 鍵盤電路選擇一般鍵盤電路有兩種:獨立式鍵盤和矩陣式鍵盤。方案一:選擇獨立式鍵盤 在獨立式鍵盤中,各按鍵互相獨立,每個按鍵各接
19、一根輸入線,每根輸入線上的按鍵工作狀態不會影響其它輸入線上的工作狀態。所以,我們通過檢測輸入線的電平狀態就可以很容易的判斷按鍵是否被按下了。獨立式鍵盤電路軟件結構簡單,配置靈活。但是每個按鍵都需要占用一根輸入線,在按鍵數量比較多的時候,輸入口浪費較大,電路結構顯得比較繁雜,故獨立式按鍵適用于按鍵較少或操作速度較高的場合2。方案二:選擇矩陣式鍵盤矩陣式鍵盤由列線和行線組成,按鍵位于列、行的交叉點上,分別連接到按鍵開關的兩端。行線由上拉電阻連接到vcc上。在平時沒有按鍵動作的時候,行線處于低電平狀態,而當有按鍵按下的時候,列線為低電平狀態,行線為高電平狀態。這一點是識別矩陣式鍵盤是否被按下的關鍵所
20、在。因此,各按鍵彼此將互相影響,所以必須將列、行線信號配合起來并作適當的處理,才可以確定閉合鍵的位置。我們可以很明顯地看到,在按鍵數量較多的場合,矩陣式鍵盤和獨立式鍵盤相比較,要節省很多的輸入輸出口。由于本設計共使用5個普通按鍵,一個用于置位復位,另外4個用于切換數碼管顯示的內容,調整小數位和整數位,調節溫度上下限,故選擇獨立式鍵盤。2.2.3 顯示電路的選擇在單片機系統中常用的顯示電路有led顯示、lcd顯示。方案一:選擇led顯示led就是我們所說的發光二極管的英文縮寫,這種發光二極管工作的時候耗電量小,時尚簡約,節能環保,工作原理就是把電能直接轉化為光能,不產生熱量或產生少量的熱量,對人
21、體的輻射也比較小。led顯示屏是由發光二極管排列組成的,它采用低電壓掃描驅動,具有耗電少、成本低、使用壽命長、亮度高、視角大、故障少、可視距離遠等特點。同時數碼管采用bcd編碼顯示數字,程序編譯容易,資源占用較少。方案二:選擇lcd顯示液晶顯示屏具有功耗小、輕薄短小、無輻射危險、平面直角顯示以及影象穩定不閃爍,畫面效果好,可視面積大,抗干擾能力強等特點。但由于只需顯示四位溫度值,信息量比較少,且由于液晶是以點陣的模式顯示各種符號,需要利用控制芯片創建字符庫,編程工作量較大,控制器資源占用較多,其成本也偏高。采用4位7段led數碼管用于顯示溫度數據及溫度上下限,完全能夠滿足對于本次設計中的所有英
22、文字母、數字形式溫度值的顯示要求。相對于lcd顯示器件來說,led顯示器原理簡單、價格便宜、壽命更長,如果使用lcd顯示在經濟上不能降低成本,編程也比較繁瑣,反而顯得不合理。故選擇用led作為顯示電路。2.2.4 模數轉換器選擇方案一:adc0832模數轉換器adc0832模數轉換器是美國國家半導體公司生產的一種8位分辨率、雙通道a/d轉換芯片。因為它的體積比較小,兼容性比較好,性價比也比較高而深受單片機愛好者和企業的歡迎,它現在已經有很高的普及率。方案二:adc0808模數轉換器adc0808模數轉換器是采樣分辨率為8位的、以逐次逼近原理進行模數轉換的器件。它的內部有一個8通道多路開關,它可
23、以根據地址碼鎖存譯碼后的信號,只選通8路模擬輸入信號中的一個進行模數轉換,具有內部功能強、轉換速度快等特點 3。adc0832模數轉換器只適應一般的模擬量轉換,而adc0808模數轉換器有可控三態輸出的adc芯片允許輸出線與微機系統的數據總線直接相連,并在轉換結束后利用讀數信號選通三態門,將轉換結果送至總線。基于以上分析,模數轉換器選用方案二。2.2.5 其它器件選擇對于本設計中要用到的繼電器、蜂鳴器、指示燈、二極管、三極管等,我們只要能夠實現功能就行,型號可以隨意選擇。2.2.6 軟件程序選擇方案一:選擇匯編語言匯編語言是面向機器的程序設計語言。用匯編語言設計的程序最終被轉換成機器指令,所以
24、能夠保持機器語言的一致性,具有直接、簡捷等特點,并且能夠像機器指令一樣訪問、控制計算機的各種硬件設備,如中央處理器、存儲器、磁盤、輸入輸出端口等。雖然使用匯編語言,可以訪問所有能夠被訪問的軟、硬件資源,但是在編寫復雜程序時,相對高級語言來說代碼量較大,而且匯編語言依賴于具體的處理器體系結構,所以不可以直接在不同的處理器體系結構之間移植。方案二:選擇c語言c語言是一種通用的程序設計語言,它不僅代碼率高,運算符及數據類型豐富,而且具有良好的程序結構,適用于各種應用的程序設計,是目前使用較廣的單片機編程語言。單片機的c語言采用c51編譯器(簡稱c51),由c51產生的目標代碼短、運行速度快、所需存儲
25、空間小。在本次設計中,出于對c語言具有編程開發周期短、可讀性好、可移植性強和修改方便等優點來考慮,我選擇編寫c語言程序。3 硬件設計3.1 89c52單片機簡介單片機,又稱為微型控制器,它是微型計算機的一個重要的分支。單片機是70年代中期發展起來的一種大規模集成電路芯片,是集中央處理器、只讀存儲器、隨機存儲器、輸入輸出接口和中斷系統于同一硅片的器件。自從80年代以來,單片機產業迅速發展,不斷地涌現了各種新產品,出現了很多高性能新型機種,現在已經逐漸成為工廠自動化和控制領域的支柱產業之一。89c52是51系列單片機的一個型號,它是atmel公司生產的。89c52是一個低電壓、高性能cmos 8位
26、單片機,片內含8k 字節的可反復擦寫的閃存只讀程序存儲器和256 字節的隨機存儲器,器件采用atmel公司的高密度、非易失性存儲技術生產,兼容標準的mcs-51指令系統,片內置有通用的8位中央處理器和可反復擦寫的閃存存儲單元。它有40個引腳,32個外部雙向輸入輸出端口,同時內含2個外中斷口,2個全雙工串行通信口,2個讀寫口,3個16位可編程定時計數器。89c52能夠按照常規的方法進行編程,但是不支持在線編程(s系列的才支持在線編程)。功能強大的89c52單片機能夠為用戶提供很多比較復雜的系統控制應用場合。89c52有pdip、pqfp/tqfp及plcc等三種封裝形式,以適應不同產品的需求4。
27、其引腳功能如下: p0.0p0.7 p0口8位雙向口線(在引腳的3932號端子);p1.0p1.7 p1口8位雙向口線(在引腳的18號端子); p2.0p2.7 p2口8位雙向口線(在引腳的2128號端子); p3.0p3.7 p3口8位雙向口線(在引腳的1017號端子)。 這4個輸入輸出口具有不完全相同的功能,它們各端口的功能分別如下所示: p0口有三個功能: (1)外部擴展存儲器時,當作數據總線(芯片中的d0d7為數據總線接口); (2)外部擴展存儲器時,當作地址總線(芯片中的a0a7為地址總線接口); (3)不擴展時,可做一般的輸入輸出使用,但內部無上拉電阻,作為輸入或輸出時應在外部接上
28、拉電阻。 p1口:只能做輸入輸出口使用,其內部有上拉電阻。 p2口有兩個功能: (1)擴展外部存儲器時,當作地址總線使用;(2)做一般輸入輸出口使用,其內部有上拉電阻。p3口:除了作為輸入輸出使用外(其內部有上拉電阻),還有一些特殊功能,由特殊寄存器來設置,p3口的第二功能如表3.1所示:表3.1 單片機p3.0管腳含義引腳第2功能p3.0rxd(串行口輸入端)p3.1txd(串行口輸出端)p3.2int0(外部中斷0請求輸入端,低電平有效)p3.3int1(外部中斷1請求輸入端,低電平有效)p3.4t0(定時器/計數器0計數脈沖端)p3.5t1(定時器/計數器1計數脈沖端)p3.6wr(外部
29、數據存儲器寫選通信號輸出端,低電平有效)p3.7rd(外部數據存儲器讀選通信號輸出端,低電平有效)ale/prog 地址鎖存控制信號:在訪問片外程序存儲器的時候,每機器周期這個信號出現兩次,它的下降沿用來控制鎖存p0口輸出的低8位地址。就算不在訪問片外程序存儲器的時候,這個信號也以振蕩頻率的1/6出現,因此可以用來作為對外輸出的時鐘脈沖。但是在訪問片外數據存儲器的時候,ale脈沖會跳空一個,那此時作為時鐘輸出就不合適了。/psen 外部程序存儲器讀選通信號:在向片外程序存儲器讀取指令或常數期間,每個機器周期這個信號(低電平)兩次有效,以通過數據總線p0口讀回指令或常數。但是在訪問片外數據存儲器
30、的時候,/psen信號將不會出現。/ea/vdd 訪問程序存儲器控制信號 :這個引腳有效(低電平)的時候只能選用片外程序存儲器,不然計算機上電或者復位后先選用片內程序存儲器。但是對于內部含有可擦除可編程只讀寄存器的機型,我們在編程的時候,這個引腳用作21v編程電源vdd的輸入端。rst 復位信號:在單片機的振蕩器工作的時候,這個引腳上出現持續兩個機器周期的高電平就能夠實現復位的操作,從而使得單片機回復到初始的狀態。上電時,我們考慮到振蕩器有一定的起振時間,這個引腳上高電平必須持續10ms以上的時間才能夠保證有效復位。 xtal1:反向振蕩放大器的輸入及內部時鐘工作電路的輸入。xtal2:來自反
31、向振蕩器的輸出。vcc:接+5v電源正端。vss:接+5v電源地端。3.2 硬件電路設計概述基于單片機的恒溫控制系統其硬件電路方框圖如圖3.1所示:由圖可知,硬件電路由8部分組成,即按鍵輸入電路、時鐘電路、復位電路、溫度采集電路、數碼管顯示電路、蜂鳴器報警電路、繼電器控制加熱和制冷電路等。 單片機 按鍵輸入電路數碼管顯示電路 時鐘電路蜂鳴器報警電路復位電路繼電器控制加熱電路 溫度采集電路繼電器控制制冷電路 圖3.1 硬件電路方框圖下面具體介紹各個電路模塊的基本原理及電路圖原理、主要實現的功能和在應用過程中應當注意的問題。3.3時鐘電路設計單片機最小系統是保證單片機能夠正常工作的最基本的硬件電路
32、,時鐘電路、復位電路都屬于單片機最小系統。單片機工作的時間基準是由時鐘電路提供的。在單片機的xtal1和xtal2管腳,按圖3.2所示接上晶振和電容就構成了單片機的時鐘電路:圖3.2 時鐘電路圖中電容c2、c3對晶振頻率有微調的作用,通常的取值范圍為20-40pf,c2、c3的典型值為30pf。石英晶體選擇12mhz,選擇不同的石英晶體,其結果只是機器周期不相同5。此電路大約延遲10ms后振蕩器起振,在xtal2引腳產生幅度為3v左右的正弦波時鐘信號,其振蕩頻率主要由石英晶體的頻率確定。電路中兩個電容c2、c3的作用有兩個:一是幫助振蕩器起振;二是對振蕩器的頻率進行微調。單片機工作時,由內部振
33、蕩器產生或由外直接輸入的送至內部控制邏輯單元的時鐘信號的周期稱為時鐘周期,其大小是時鐘信號頻率的倒數,時鐘信號頻率常用fosc表示。圖中時鐘頻率為12mhz,即fosc=12mhz,則時鐘周期為1/12s。3.4 復位電路設計單片機的第9腳rst為硬件復位電路,只要在該引腳加上持續4個機器周期的高電平即可實現復位,復位后單片機的各個狀態都恢復到初始化狀態。單片機的復位方式有上電復位和手動復位兩種。本設計系統采用上電自動復位和手動復位組合電路,如圖3.3所示復位電路:圖3.3 復位電路圖3.3中由按鍵s1、電阻r1以及電容c1構成上電復位及手動復位電路。由于單片機是高電平復位,所以當上電復位的時
34、候,接通電源就可以了,在上電以后,電容c1開始緩慢充電,由圖我們可以看到電路由電源到電容和地之間形成一個通路,由于在電阻r1上產生了電壓降,那么單片機的rst腳為高電平,經過一段時間后電容的電充滿,此時電容c1處可視為斷路,單片機rst腳處電壓逐漸降為0v,即處于穩定的低電平狀態,這時單片機就完成了上電復位,程序從0000h開始執行。手動復位時,按一下圖中的按鍵s1就可以了,當按鍵按下的時候,單片機的rst腳處于高電平,此時單片機處于復位狀態。3.5 按鍵輸入電路設計基于單片機的恒溫控制系統工作時應具備以下功能:一、可以調節溫度上下限;二、可以切換顯示實時溫度和溫度上下限的值。要具備這些功能,
35、可以通過按鍵輸入電路來實現。 鍵盤結構可分為矩陣式鍵盤和獨立式鍵盤兩類,由于本系統只采用5個按鍵,因此選用獨立式按鍵。按鍵輸入電路由四個按鍵組成,按鍵采用輕觸開關,如圖3.4所示:圖3.4 按鍵輸入電路各個按鍵的功能為:s2用來切換數碼管顯示界面,當數碼管界面顯示的是溫度上下限時通過按鍵s3可以調節要調整的溫度上下限的整數位和小數位;當數碼管界面顯示為某一位閃動時通過按鍵s4、s5調節閃動位的數值。整數位的數值變化范圍為0-99之間,小數位的數值變化范圍為0-9之間。按鍵s4加數值,按鍵s5減數值 6。3.6 蜂鳴器報警電路設計根據設計的要求,當溫度高于上限或低于下限時,應當具有報警功能。這樣
36、我們就可以用一只蜂鳴器作為三極管的集電極負載,當三極管導通時,蜂鳴器發出蜂鳴聲;當三極管截止時,蜂鳴器不發聲。圖3.5為本設計中的蜂鳴器驅動電路:圖3.5 蜂鳴器驅動電路由圖可以看出:單片機的p1.6管腳通過三極管的基極連接到蜂鳴器。當單片機控制端p1.6=1時,p1.6給三極管q1基極一個高電平,三極管q1導通,蜂鳴器的兩個管腳間獲得接近5v的直流電壓,蜂鳴器中有電流通過,從而產生蜂鳴聲;當單片機控制端p1.6=0時,p1.6給三極管q1基極一個低電平,三極管q1截止,蜂鳴器的兩個管腳間的直流電壓接近于0,蜂鳴器不產生蜂鳴聲,其中r2=1k為限流電阻7。3.7 繼電器控制加熱電路設計按照本次
37、設計的設計要求,當環境溫度低于所設定的下限溫度時,需要通過繼電器驅動加熱裝置來進行升溫。常用的室內升溫裝置有空調、電熱毯、電爐等。對于一些簡易的電熱裝置,其主要部件是電阻加熱器。繼電器控制加熱電路如下圖3.6所示:由圖可知單片機的p1.4端口接ctl0, p1.5端口接ctl1,p1.4端口控制一個雙刀雙擲繼電器rl2,p1.5端口控制一個雙刀雙擲繼電器rl1。當測量的溫度低于設定的溫度下限時,單片機控制端p1.4給三極管q7基級一個高電平,單片機控制端p1.5給三極管q6基極一個高電平,三極管q6和q7均導通,發光二級管d2和d4發紅光,兩個線圈都有電流流過,繼電器rl1和rl2均閉合,此時
38、oven裝置兩端加上正向電壓,裝置開始加熱。加熱一段時間后,當溫度重新回到溫度下限以上時,單片機控制端p1.4給三極管q7基極一個低電平,三極管q7截止,發光二級管d4不發光,繼電器rl2的線圈無電流流過,繼電器rl2斷開,而單片機控制端p1.5依然給三極管q6基級一個高電平,但是三極管q6集電極未接電源,三極管q6也截止,發光二極管d2和d5均不發光,繼電器rl1的線圈也沒有電流流過,繼電器rl1斷開,加熱裝置停止工作8。圖3.6 繼電器控制加熱電路注意:在繼電器rl1和rl2線圈兩端都必須反接一個二極管。這個二極管很重要,當使用電磁繼電器的時候必須連接。其原因為:當線圈通電正常工作的時候,
39、二極管對電路不起作用,當繼電器在斷電的一瞬間會產生一個很強的反向電動勢,在繼電器線圈兩端反向并聯一個二極管用來消耗這個反向電動勢,通常這個二極管叫做消耗二極管,假如不加這個消耗二極管,反向電動勢會直接作用在驅動三極管上,很容易將三極管損壞8。3.8 繼電器控制制冷電路設計按照本次設計的設計要求,當環境溫度高于所設定的上限溫度時,需要通過繼電器驅動制冷裝置來進行降溫。實際中常用的制冷裝置主要有空調、冷藏柜、冷庫等9。繼電器控制制冷電路如下圖3.7所示:由圖可知單片機的p1.4端口接ctl0, p1.5端口接ctl1,p1.4端口控制一個雙刀雙擲繼電器rl2,p1.5端口控制一個雙刀雙擲繼電器rl
40、1。當測量的溫度高于設定的溫度上限時,單片機控制端p1.4給三極管q7基級一個高電平,單片機控制端p1.5給三極管q6基極一個低電平,三極管q7導通,三極管q6截止,發光二級管d4發紅光,發光二極管d5發綠光,繼電器rl1的線圈有電流流過,繼電器rl1閉合,而繼電器rl2繼續保持斷開,此時oven裝置兩端加上反向電壓,裝置開始制冷。制冷一段時間后,當溫度重新回到溫度上限以下時,單片機控制端p1.4給三極管q7基極一個低電平,單片機控制端p1.5依然給三極管q6基級一個低電平,三極管q6和q7均截止,發光二級管d2、d4和d5都不發光,兩個線圈都沒有電流流過,繼電器rl1和rl2均斷開,制冷裝置
41、停止工作。圖3.7 繼電器控制制冷電路3.9 溫度采集電路設計本設計采用adc0808模數轉換器作為溫度采集電路核心部件。在介紹溫度采集電路之前先詳細介紹一下adc0808模數轉換器。 adc0808模數轉換器是采樣分辨率為8位的、以逐次逼近原理進行模數轉換的器件。它的內部有一個8通道多路開關,它可以根據地址碼鎖存譯碼后的信號,只選通8路模擬輸入信號中的一個進行a/d轉換。它的轉換原理就是把輸入電壓vi和一組從參考電壓分層得到的量化電壓進行比較,比較從最大的量化電壓開始,由粗到細逐次進行,通過每次比較的結果來確定相應的位是0還是1。經過不斷地比較,不斷地逼近,直到二者的差別小于某一誤差范圍時就
42、完成了一次轉換10。本設計的溫度采集電路如圖3.8所示:圖3.8 溫度采集電路示意圖工作過程:把電熱爐的輸出通過電阻分壓轉換成05v的模擬信號輸入到in0引腳,然后經過模數轉換后,數字信號從d0d7引腳輸出送給單片機,單片機再對信號進行相應處理。各引腳的功能如下:(1)in0in7:8通道模擬量輸入端;(2)d0d7:結果數據輸出端;(3)start:啟動轉換命令輸入端。在該引腳上加高電平,就開始轉換;(4)eoc:轉換介紹指示腳。在平時它為高電平,在轉換開始后和轉換過程中為低電平,轉換一結束,它又變回了高電平;(5)ale:地址鎖存允許信號;(6)oe:數據輸出允許信號,這個引腳加高電平,即
43、打開輸出緩沖器三態門,讀出數據;(7)clk:時鐘脈沖輸入端。adc0808典型的時鐘頻率為640khz,轉換時間是100us;(8)a,b和c:三位地址輸入線,用于選通8路模擬輸入中的一路;(9)ref(+),ref(-):參考電壓輸入端11。3.10 led數碼管顯示電路設計在單片機應用系統中,通常都需要進行人機對話,這包括人對應用系統的狀態干預與數據輸入以及應用系統向人們顯示運行狀態與運行結果等12。 led數碼管顯示器由8個發光二極管中的7個長條發光二極管按a、b、c、d、e、f、g順序組成“8”字形,另一個點形的發光二極管放在右下方,用來顯示小數點。數碼管按內部連接方式又分為共陽極數
44、碼管和共陰極數碼管兩種。若內部8個發光二極管的陽極連在一起接電源正極,就稱為共陽極數碼管;若8個發光二極管的陰極連在一起接地,則稱為共陰極數碼管。led顯示電路由位驅動電路和段驅動電路組成。因為單片機的并行口不能驅動led顯示器,所以必須采用專門的驅動電路芯片,使之產生足夠大的電流,顯示器才能正常工作。如果驅動電路的驅動能力較差,即負載能力不夠,顯示器亮度就較低,而且驅動電路長期在超負荷狀態下運行容易損壞。 led顯示器的顯示控制方式分為靜態顯示和動態顯示兩種,如果選擇靜態顯示,那么led驅動器的選擇比較簡單,只要驅動器的驅動能力與顯示器的電流相匹配即可,而且一般只需考慮斷的驅動,因為共陽極接
45、5v而共陰極接地所以位的驅動無須考慮;而動態顯示則不一樣,由于一位數據的顯示是由段和位選信號共同配合完成的,因此,要同時考慮段和位的驅動能力,而且段的驅動能力決定了位的驅動能力13。 本系統采用并行驅動動態顯示。采用單片機p2口的低4位作為led的位碼輸出信號,p0口作為段碼輸出信號。該驅動電路如圖3.10所示:p0口作為段碼輸出信號需外接上拉電阻。數碼管用于顯示測量的實際溫度值,設定的溫度上限值以及設定的溫度下限值。共有十位、個位、小數位、上下限顯示位(即h和l)4位顯示。圖3.10 4位led數碼管驅動電路p0口接上拉電阻時應注意的幾點: (1)p0口作為普通i/o口的時候,需要外接上拉電
46、阻;(2)如果外電路可以提供高電平,則p0口是否外接上拉電阻沒什么影響; (3)如果是驅動led數碼管,那么用1k左右的上拉電阻就可以了。如果希望亮度大一些,電阻可以減小些,最小不要小于200,否則電流太大;如果希望亮度小一些,電阻可以增大些,增大到多少主要看亮度情況,以亮度合適為準。一般來說,超過3k以上時,亮度就很弱了,但是對于超高亮度的led,有時候電阻為10k時感覺亮度還夠用。通常選用1k的上拉電阻;(4)對于驅動光耦合器,如果是高電平有效,即耦合器輸入端接端口和地之間,那么和led的情況是一樣的;如果是低電平有效,即耦合器輸入端接端口和vcc之間,那么除了要串聯一個1-4.7k之間的
47、電阻以外,同時上拉電阻的阻值需要用的特別大,用100-500k之間的上拉電阻都可以滿足要求14。 4 系統軟件設計硬件部分設計制作完成后,程序的編寫是關鍵。該系統程序的編寫采用模塊化程序設計,采用模塊化程序設計的優點在于: (1)每個模塊都可以分配給不同的程序員完成,從而縮短開發周期;(2)各個模塊高聚合、模塊之間低耦合,只要模塊之間確定了參數傳遞的接口,不管那個模塊內部的改動,均不會影響其他模塊; (3)系統細化到模塊,條理清晰,系統更加容易理解和實現;(4)容易維護、系統可靠15。 本系統程序主要包括以下幾個部分:主程序(main.c)、按鍵掃描子程序(key.c)、模數轉換器子程序(ad
48、c0808.c)、數碼管顯示子程序(led.c)、中斷子程序 16。4.1 主程序設計主程序通過調用各個子程序,實現溫度的采集、按鍵掃描、數碼管顯示、數據處理等功能。其主程序流程圖如圖4.1所示: 本設計只給出主程序、模數轉換器子程序、數碼顯示管子程序、中斷子程序的流程圖,按鍵掃描子程序的流程圖在這沒有給出。 設置溫度上下限結束開始y閃爍顯示報警并加熱報警并制冷不打開報警和制冷制熱溫度上限判斷溫度數碼管顯示溫度轉換非設置模式設置模式?顯示模式key掃描n圖4.1 主程序流程圖4.2 模數轉換器子程序設計本設計的adc0808模數轉換器子程序的流程圖如圖4.2所示:開始送ale上跳沿鎖存地址送s
49、tarta上跳沿內部寄存器清0yeoc=0n取a/d轉換數據送r0返回圖4.2 模數轉換器子程序流程圖4.3 數碼管顯示子程序設計 本設計的數碼管顯示子程序的流程圖如圖4.3所示:ny結束顯示完畢?送顯示數據送掃描脈沖讀取預顯示內容設置顯示模式系統初始化開始圖4.3 數碼管顯示子程序流程圖4.4 中斷子程序設計本設計的中斷子程序的流程圖如圖4.4所示:yn計數、計時加載th、tl的值執行clk=clk是否產生中斷?初始化打開定時器定義定時中斷圖4.4 中斷子程序流程圖5 系統調試5.1 keil軟件調試keilc51是美國keilsoftware公司出品的51系列兼容單片機c語言軟件開發系統。
50、和匯編語言相比,c語言在結構、功能、可讀性、可維護性上有明顯的優勢,而且易學易用。keilc51提供豐富的庫函數和功能強大的集成開發調試工具,全windows界面,生成的目標代碼效率很高,多數語句生成的匯編代碼也很緊湊,而且容易理解,在開發大型軟件時更能體現高級語言的優勢17。打開keil uvision2軟件,執行【project】|【new project】命令,打開【create new project】對話框,輸入文件名,點擊【保存】,如圖5.1所示:圖5.1 目標文件新建示意圖選擇控制芯片類型。本設計采用intel 89c52,在【select device for target t
51、arget 1】對話框中選擇at89c52,如圖5.2所示:圖5.2 單片機芯片選擇示意圖設置芯片參數。右擊【project workplace】中的【target 1】,選擇【options for target target 1】彈出參數設置對話框,如圖5.3所示:設置頻率為12hz。點擊【output】選項,勾選【create hex file】,點擊【確定】保存。圖5.3 參數設置示意圖創建c文件,執行【file】|【new】命令,或者使用快捷鍵“ctrl+n”新建c文件。輸入并保存程序,編譯鏈接無誤后,調試運行生成hex文件,如圖5.4所示:圖5.4 調試運行示意圖5.2 prote
52、us軟件調試proteus是英國labcenter electronics公司研發的多功能eda軟件。proteus不僅是數字電路、模擬電路、數/模混合電路的設計與仿真平臺,更是目前世界上最先進的單片機和嵌入式系統的設計與仿真平臺。它真正實現了在計算機上完成從原理圖與電路設計、電路分析與仿真、單片機代碼調試與仿真、系統測試與功能驗證到形成pcb的完整的設計和仿真過程18。打開proteus軟件,執行【文件】|【新建】命令,或者使用快捷鍵“ctrl+n”新建dsn文件。按照第三章硬件設計,從原件庫中選擇所需電器元器件并連接電路。系統仿真電路圖如圖5.5所示:圖5.5 基于單片機的恒溫控制系統仿真
53、電路圖根據前面章節的設計,配置元器件的參數。proteus電器檢測并生成元器件清單。執行【工具】|【電器規則檢查】命令,如圖5.6所示:點擊【電器規則檢查】選項,彈出電氣規則檢測結果。如圖5.7所示:圖5.6 電器規則檢查示意圖圖5.7 電氣規則檢測結果選擇【材料清單】,生成材料清單,如表5.1所示:表5.1 系統電路圖元器件清單quantityreferencesvalueresistors4r4,r5,r6,r7 1003r13,r16,r172002r12,r151k1r35k1r110k1r191m1r203.65mcapacitors2c2,c330pf1c110ufintegrated circuits1u1at89c521u3adc0808transistors7q1-q7npnmiscellaneous1ls1buzzer2rl1,rl25v1rp1respack-81ov1oven1x1crystaldiodes2d1,d3 1n4148 1d2,d4led-red 1d5led-green 5.3 proteus軟件仿真在系統電路圖中,雙擊89c52單片機芯片,彈出芯片設置對話框。設置時鐘頻率為12hz,添加程序文件*.hex。點擊【ok】選項,完成89c52設置19。如圖5.8所示:圖5.8
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 預應力張拉方法
- 施工作業人員法律法規告知
- Brand KPIs for neobanking Banco Original in Brazil-英文培訓課件2025.4
- Brand KPIs for hotels:Best Western in the United States-英文培訓課件2025.5
- 雙頻共口徑高隔離陣列天線設計
- 汽車傳感器與檢測技術電子教案:空氣質量傳感器
- 房地產企業計稅成本的扣除變化分析
- 佛山新中源國際商務公寓營銷策劃報告41p
- 城鄉醫療住院管理制度
- 中考地理復習教案第9課時 東南亞南亞西亞歐洲西部極地地區
- DBJ04T 439-2023 房屋建筑和市政基礎設施工程造價指標指數編制標準
- 新版統編版一年級道德與法治下冊全冊教案(完整版)教學設計含教學反思
- 2025年上半年廣東汕尾市城區招聘政府聘員69人易考易錯模擬試題(共500題)試卷后附參考答案
- 2024年不動產登記代理人《地籍調查》考試題庫大全(含真題、典型題)
- 財務服務協議書
- YC/Z 623-2024煙草商業企業卷煙物流應急作業指南
- GB/T 45098-2024營運純電動汽車換電服務技術要求
- 物聯網安全風險與防護
- 包裝產品設計部門規劃
- 2024年中國一次性內褲市場調查研究報告
- 克萊德貝爾格曼吹灰器說明書(Jetblower)
評論
0/150
提交評論