基于單片機的智能水族箱系統(tǒng)設計畢業(yè)論文.doc_第1頁
基于單片機的智能水族箱系統(tǒng)設計畢業(yè)論文.doc_第2頁
基于單片機的智能水族箱系統(tǒng)設計畢業(yè)論文.doc_第3頁
基于單片機的智能水族箱系統(tǒng)設計畢業(yè)論文.doc_第4頁
基于單片機的智能水族箱系統(tǒng)設計畢業(yè)論文.doc_第5頁
免費預覽已結(jié)束,剩余25頁可下載查看

下載本文檔

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

文檔簡介

師范學院學院本科畢業(yè)論文 i 畢 業(yè) 設 計(論文) 2013 屆 題 目 基于單片機的智能水族箱 專 業(yè) 電子信息工程 學生姓名 學 號 指導教師 論文字數(shù) 完成日期 2012 年 4 月 18 日 基于單片機的智能水族箱系統(tǒng) 摘 要: 隨著我國經(jīng)濟的發(fā)展,人民生活水平的提高。水族箱和觀賞魚也就成為家庭的一種新寵、 一種時尚,越來越被廣大家庭所喜好。但是日常生活中人們沒有更多的時間去照料觀賞魚的換水和 溫度調(diào)控等,雖然市面上也有水族箱的加熱和換水裝置但都是獨立且價格昂貴。因此設計出電路簡 單,體積小,智能的水族箱系統(tǒng)極具現(xiàn)實意義。 本文設計了一個基于單片機的水族箱智能系統(tǒng),由溫控模塊,水位模塊,單片機模塊和液晶顯 示模塊組成。該系統(tǒng)以 stc89c52 單片機作為控制核心,將被測溫度和水位送入到 stc89c52 單片機 中進行對比,通過對比來判斷是否驅(qū)動加熱和水泵,并且在液晶 1602 上實現(xiàn)溫度水位的顯示。 關鍵詞:智能,單片機,控制 smart aquarium system based on mcu abstract:with the development of our national economy, the improvement of peoples living standards. aquariums and aquarium fish has become a family favorite, a fashion, more and more families at large would like.but in everyday life people do not have more time to care for pet fish, water and climate- controlled, while the aquarium is also on the market of heating and water installations but is independent and is expensive. designed circuit is simple, small, intelligent very realistic aquarium system. this article has designed an aquarium based on single-chip microcomputer intelligent systems, temperature control modules, water level modules, scm module and liquid crystal display module. stc89c52 scm as the core control of the system, the measured temperature and water level fed into the stc89c52 mcu for comparison, by comparison to determine whether drive heating and water pumps, and in 1602 lcd display temperature on water level. keywords:smart, mcu,control 目 錄 第一章 緒論 1 1.1 課題背景 .1 1.2 基于單片機的智能水族箱系統(tǒng)的發(fā)展概況 .1 1.3 本文的主要內(nèi)容 .2 第二章 基于單片機的電感測試儀的總體方案設計 3 2.1 系統(tǒng)設計總體方案初步設定 .3 2.2 主要電路模塊設計方案的選擇 .3 2.2.1 水溫檢測和控制的設計方案 .3 2.2.2 水位檢測電路的設計方案 .3 2.3 智能水族箱的總設計方案 4 第三章 系統(tǒng)硬件設計 5 3.1 系統(tǒng)硬件設計 .5 3.2 溫度檢測控制模塊 .5 3.2.1 ds18b20 芯片 .5 3.2.2 水溫檢測電路 .6 3.2.3 溫度控制電路 7 3.3 水位檢測控制模塊 .7 3.3.1 ne555 芯片 .7 3.3.2 水位檢測電路 8 3.3.3 水位控制電路 8 3.4 單片機主控電路 .9 3.4.1 單片機選擇 .9 3.4.2 單片機的引腳及各引腳功能 .9 3.4.3 單片機及最小系統(tǒng) .11 3.5 聲光報警電路 .12 3.6 時鐘電路 .12 3.7 液晶 lcd1602 顯示電路 .13 第四章 軟件系統(tǒng)設計 14 4.1 軟件結(jié)構設計 .14 4.2 整體設計流程圖 .14 4.3 各模塊程序 .16 4.3.1 水溫檢測控制程序 .16 4.3.2 水位檢測控制程序 .16 4.3.3 定時換水程序 .17 4.3.4 液晶顯示程序 .17 4.3.5 時鐘顯示程序 .18 第五章 制作與調(diào)試 20 5.1 系統(tǒng)硬件制作 .20 5.2 系統(tǒng)硬件調(diào)試 .20 5.3 系統(tǒng)軟件調(diào)試 .20 第六章 結(jié) 論 21 參 考 文 獻 22 致 謝 22 附 錄 23 附錄 1:現(xiàn)場測試記錄 .23 附錄 2:系統(tǒng)軟件程序 .24 湖州師范學院求真學院本科畢業(yè)論文 1 第一章 緒論 1.1 課題背景 隨著現(xiàn)代生活的需求,科技的發(fā)展,人們對家居裝飾投入越多的關注,是個人品味和地位的象 征,而如今的高樓大廈越來越高,生活在鋼筋水泥構造的城市中的人們越來越憧憬和崇尚自然,盡 大多數(shù)人不可能居住上親水家園,不能擁有自己的森林、水景,但在家中擺放一個水族箱,就可以 將微縮的海洋水景搬回家,可以近間隔的接觸水草、觀賞魚,能夠感受到回歸自然的靈性和樂山樂 水的情趣。水族箱養(yǎng)魚可以說越來越普遍被大眾所喜愛,不分年齡層次,年輕一代可以當成心愛寵 物飼養(yǎng),又可以美化環(huán)境,中老年可以當做休閑娛樂、更是修身養(yǎng)性的絕美選擇。但是現(xiàn)在的年輕 人,天天都要忙于工作和事業(yè),生活的壓力很大,再遇上一些不順心的事,更是心煩意亂,甚至大 動肝火,對身心健康極為不利。因此勞累一天后回到家里都會身心疲乏,根本沒有更多的時間來打 理水族箱的換水和開啟供氧泵等的工作,久而久之水族箱里的魚越來越少,水草也慢慢枯死。 面對這些水族箱的控制問題市場上也出現(xiàn)了不少的水族箱輔助產(chǎn)品,控制水族箱水溫、水位、 排水的設備,如過濾器、加熱器等改善水環(huán)境的設備。但是由于產(chǎn)品繁多,功能不統(tǒng)一,往往需要 購置多個設備分別安裝,投入的費用較大,也存在一定的資源浪費。 因此,本設計主要以家庭中水族箱的日常養(yǎng)護為背景,以水族箱中的水位、溫度等的控制為研 究對象,對日常養(yǎng)護過程中的綜合自動化及其應用技術展開研究,建立一個智能水族箱檢測和控制 系統(tǒng),來提高水族箱的自動化、智能化。 1.2 基于單片機的智能水族箱系統(tǒng)的發(fā)展概況 隨著人民生活條件的改善,生活節(jié)奏不斷的加快,人們越來越渴望擺脫日常生活瑣事的困擾, 要求現(xiàn)代產(chǎn)品向著自動化、智能化的方向發(fā)展。智能水族箱系統(tǒng)產(chǎn)品在國外是一個發(fā)達的產(chǎn)業(yè),它 在節(jié)能方面有廣泛的應用。而根據(jù)我國國務院辦公廳發(fā)布的關于開展資源節(jié)約活動的通知 ,為 加快建設資源節(jié)約型社會,推動循環(huán)經(jīng)濟發(fā)展,解決全面建設小康社會面臨的資源約束和環(huán)境壓力 問題,保障國民經(jīng)濟持續(xù)快速協(xié)調(diào)健康發(fā)展,要求:各級財政要支持資源節(jié)約和資源綜合利用,并 將節(jié)能、節(jié)水設備(產(chǎn)品)納入政府采購目錄。有關部門和地方各級政府要對重大節(jié)能技術開發(fā)、 示范和改造項目加大投資力度。 ”由此可見,智能化的水族箱節(jié)能降耗起著極為關鍵的作用,而智 能水族箱的廣泛應用將可大幅節(jié)能。 目前水族箱的創(chuàng)新產(chǎn)品,千姿百態(tài),功能上也是慢慢實現(xiàn)科技化、智能化、用途多樣化的形式 出現(xiàn)在大家眼前,調(diào)查結(jié)果顯示,未來幾年 80、90 年代的年輕人將成為主要的消費群體。隨著房 價的快速上漲,大多數(shù)人開始選擇小戶型來滿足居住需求,追求個性、時尚的他們,講究生活品味, 喜歡 “diy”自己的空間,如何將“蝸居生活”妝點的多姿多彩,成為他們?nèi)粘I罾镒顭嶂缘?話題。智能水族箱,以無需人力、節(jié)能、實用、創(chuàng)新吸引了眾多年輕人的眼球。水族消費已不再是 中老年人陶冶心情的專利,他正在以獨有的創(chuàng)新模式受到年輕人的追捧,甚至連哇哇學語的小朋友, 也開始“玩”魚。這些不容忽視的團體,正在成為水族產(chǎn)業(yè)消費的主力軍。據(jù)專家預測,未來幾年 內(nèi)智能水族箱將顛覆傳統(tǒng)龍魚缸的主導地位。因此,研制和推廣智能水族箱控制技術是提高人類生 活水平實現(xiàn)現(xiàn)代化的需要。 1.3 本文的主要內(nèi)容 本設計的主要內(nèi)容為設計基于單片機的智能水族箱系統(tǒng)的硬件電路,通過對單片機的編程和實 際調(diào)試來實現(xiàn) 1.實時的檢測水的溫度并在溫度過低時進行加熱恒溫。2.實時檢測水族箱的水位, 定時給水族箱換水。給水族箱中的魚提供舒適的生存條件,同時驗證該方案的可行性。 第二章 基于單片機的電感測試儀的總體方案設計 2.1 系統(tǒng)設計總體方案初步設定 本設計系統(tǒng)的初步設想是將整個設計分為水溫測量模塊、水位測量模塊、控制器模塊、執(zhí)行模 塊、顯示模塊。系統(tǒng)設計整體框圖如圖 2-1 所示。 圖 2-1 系統(tǒng)設計整體框圖 軟件設計部分則通過用 c 語言編寫程序來控制整個系統(tǒng)的測量、控制和顯示,從而實現(xiàn)基于 單片機的智能水族箱系統(tǒng)的控制。 2.2 主要電路模塊設計方案的選擇 2.2.1 水溫檢測和控制的設計方案 根據(jù)了解,水溫檢測和控制的實現(xiàn)方案有兩種。 方案一:采用傳統(tǒng)的二位模擬控制方法,選用模擬電路,用電位器設定給定值,采用上下限比 較電路將反饋的溫度值與給定的溫度值比較后,決定加熱或者不加熱。由于采用模擬控制方式,系 統(tǒng)受環(huán)境的影響大,不能實現(xiàn)復雜的控制算法使控制精度做的較高,而且不能顯示和用鍵盤設定。 方案二:利用 ds18b20 數(shù)字溫度傳感器直接把溫度信號轉(zhuǎn)換成數(shù)字量,在單片機內(nèi)部通過軟 件編寫控制的方式,設定溫度控制域值,如果水溫低于低的設定度數(shù),則自動啟動加熱模塊以保持 水溫,而當水溫高于高的設定度數(shù)則停止加熱,同時輸出溫度值到顯示模塊以實現(xiàn)水溫動態(tài)顯示, 該方案相較于前一個系統(tǒng)穩(wěn)定性高,同時能實現(xiàn)可視化和自動化,讓水溫測量控制工作變得簡單了 許多。 綜上所述,本設計的水溫檢測控制設計方案采用單片機結(jié)合傳感器水溫檢測電路實現(xiàn)對水族箱 水溫的控制。 2.2.2 水位檢測電路的設計方案 方案一:利用超聲波水位計測量,該技術基于超聲波在空氣中的傳播速度及遇到被測物體表面 產(chǎn)生反射的原理??蓪崿F(xiàn)非接觸測量、測量范圍寬、并且測量不受介質(zhì)密度、介電常數(shù)等的影響, 因此它的適用范圍非常廣泛,包括水渠、油罐、粘稠、腐蝕性等的水位測量中。但是超聲波水位計 價格昂貴且此處水位測量精度要求不是特別高。 水溫檢測 水位檢測 控制器 執(zhí)行器 顯示電路 方案二:通過設計 555 電路來自制水位傳感器,將幾條頭部裸露的導線高度均勻分布的固定起 來,通過水位高低使線路導通來實現(xiàn)水位的檢測。 綜上所述及本設計的基本情況,故使用 555 電路設計的水位檢測電路在這里比較適用。 2.3 智能水族箱的總設計方案 整體的設計框圖如圖 2-2 所示。 圖 2-2 整體設計框圖 根據(jù)上述的水溫檢測控制的實現(xiàn)方案和水位檢測方案的選擇,設定了整個智能水族箱系統(tǒng)的設 計方案。首先將被測的水溫和水位以數(shù)字信號送入單片機與設定好的溫度值進行比較,判斷是否需 要加熱或加水,再通過單片機控制執(zhí)行器工作,同時實時在液晶上顯示出當前溫度和水位是否正常 ds18b20 水溫檢測 555 水位檢 測電路 單片機 (控制器) 時鐘電路 加熱器/水泵 (執(zhí)行器) 顯示電路 第三章 系統(tǒng)硬件設計 3.1 系統(tǒng)硬件設計 本設計系統(tǒng)的硬件設計部分主要由溫度檢測控制電路、水位檢測控制電路、單片機主控電路、 時鐘電路及顯示電路組成的。溫度檢測控制電路的功能主要是將被測溫度值送入單片機進行比較; 水位檢測電路是檢測水族箱中的水位是否正常;單片機的主控電路它的作用是通過對檢測到的溫度 信號和水位信號進行比較并控制加熱器/水泵這些執(zhí)行器工作;時鐘電路的功能是定時給水族箱進 行抽放換水;顯示電路的功能主要是實時的把溫度和水位結(jié)果顯示在液晶上面。 3.2 溫度檢測控制模塊 本設計通過水溫傳感器探測電路獲得的水溫數(shù)據(jù)與設定的溫度上限和下限比較,獲得的結(jié)果并 直接驅(qū)動繼電器控制加熱器進行加熱,以保持水族箱的溫度恒定。其中水溫傳感器選用 ds18b20 芯片。 3.2.1 ds18b20 芯片 ds18b20 是美國 dallas 半導體公司繼 ds1820 之后最新推出的一種數(shù)字化單總線器件。屬 于新一代適配微處理器的改進型智能溫度傳感器。與傳統(tǒng)的熱敏電阻比,他能夠直接讀出被測溫度, 并且可根據(jù)實際要求通過簡單的編程實現(xiàn) 912 位的數(shù)字值讀數(shù)方式??梢苑謩e在 93.75ms 和 750ms 內(nèi)完成 9 位和 12 位的數(shù)字量,并且從 ds18b20 讀出的信息或?qū)懭?ds18b20 的信息僅需要 一根口線(單線接口)讀寫,溫度變換功率來源于數(shù)據(jù)總線,總線本身也可以向所掛接的 ds18b20 供電,而無需額外電源。因而使用 ds18b20 可使系統(tǒng)結(jié)構更趨簡單,可靠性更高。同時 其“一線總線”獨特而且經(jīng)濟的特點,使用戶可輕松地組建傳感器網(wǎng)絡,為測量系統(tǒng)的構建引入了 全新的概念。ds18b20 “一線總線”數(shù)字化溫度傳感器支持“一線總線”接口,測量溫度范圍為- 55+125?,F(xiàn)場溫度直接以“一線總線”的數(shù)字方式傳輸,用符號擴展的 16 位數(shù)字方式串行 輸出,大大提高了系統(tǒng)的抗干擾性。因此,數(shù)字化單總線器件 ds18b20 適合于惡劣環(huán)境的現(xiàn)場溫 度測量,如:環(huán)境控制、設備或過程控制、測溫類消費電子產(chǎn)品等。它在測溫精度、轉(zhuǎn)換時間、傳 輸距離、分辨率等方面較 ds18b20 都有了很大的改進,給用戶帶來了更方便和更令人滿意的效果。 可廣泛用于工業(yè)、民用、軍事等領域的溫度測量及控制儀器、測控系統(tǒng)和大型設備中。ds18b20 的性能特點如下: (1)適應電壓范圍更寬,電壓范圍:3.05.5v ,在寄生電源方式下可由數(shù)據(jù)線供電。 (2)獨特的單線接口方式,ds18b20 在與微處理器連接時僅需要一條口線即可實現(xiàn)微處理器 與 ds18b20 的雙向通訊。 (3)ds18b20 支持多點組網(wǎng)功能,多個 ds18b20 可以并聯(lián)在唯一的三線上,實現(xiàn)組網(wǎng)多點測 溫。 (4)ds18b20 在使用中不需要任何外圍元件,全部傳感元件及轉(zhuǎn)換電路集成在形如一只三極 管的集成電路內(nèi)。 (5)溫范圍55125,在-10+85 時精度為0.5。 (6)可編程的分辨率為 912 位,對應的可分辨溫度分別為 0.5、0.25、0.125和 0.0625,可實現(xiàn)高精度測溫。 (7)測量結(jié)果直接輸出數(shù)字溫度信號,以“一線總線“ 串行傳送給 cpu。 (8)負壓特性:電源極性接反時,芯片不會因發(fā)熱而燒毀,但不能正常工作。 ds18b20 內(nèi)部結(jié)構主要由四部分組成:64 位光刻 rom、溫度傳感器、非揮發(fā)的溫度報警觸發(fā) 器 th 和 tl、配置寄存器。ds18b20 的管腳排列如下圖 3.1 所示。 圖 3-1 管腳圖 3.2.2 水溫檢測電路 水溫檢測電路如下圖 3-2 所示,其中 ds18b20 的 1 腳接地,2 腳接單片機的 p1.3 口,2 腳和 3 腳之間串聯(lián)個 9k 的電阻,3 腳接電源正極。 圖 3-2 水溫檢測電路圖 3.2.3 溫度控制電路 溫度控制電路如下圖 3-3 所示,采用繼電器來驅(qū)動 ptc 加熱棒,由于繼電器能用較小的電流 去控制較大電流的一種“自動開關”。故在電路中起著自動調(diào)節(jié)、安全保護、轉(zhuǎn)換電路等作用。 圖 3-3 溫度控制電路圖 3.3 水位檢測控制模塊 通過設計 555 電路來自制水位傳感器,將幾條頭部裸露的導線高度均勻分布的固定起來,通過 水位高低使線路導通來實現(xiàn)水位的檢測并通過繼電器控制充水。 3.3.1 ne555 芯片 ne555 大約在 1971由 signetics corporation 發(fā)布,在當時是唯一非??焖偾疑虡I(yè)化的 timer ic,在往后的 30來非常普遍被使用,且延伸出許多的應用電,盡管近來 cmos 技術版 本的 timer ic 如 motorola 的 mc1455 已被大的使用,但原規(guī)格的 ne555 依然正常的在市場上供 應,盡管新版 ic 在功能上有部份的改善,但其腳位勁能并沒變化,所以到目前可直接的代用。 ne555 是屬于 555 系列的計時 ic 的其中的一種型號,555 系列 ic 的接腳功能及運用都是相容 的,只是型號不同的因其價格不同其穩(wěn)定度、省電、可產(chǎn)生的振蕩頻率也不大相同;而 555 是一個 用途很廣且相當普遍的計時 ic,只需少數(shù)的電阻和電容,便可產(chǎn)生數(shù)位電路所需的各種不同頻率 之脈沖信號。ne555 的特點有:1.只需簡單的電阻器、電容器,即可完成特定的振蕩延時作用。其 延時范圍極廣,可由幾微秒至幾小時之久。2.它的操作電源電壓范圍極大,可與 ttl,cmos 等邏輯 電路配合,也就是它的輸出準位及輸入觸發(fā)準位均能與這些邏輯系列的高、低態(tài)組合。3.其輸出端 的供給電流大,可直接推動多種自動控制的負載。4.它的計時精確度高、溫度穩(wěn)定度佳,且價格便 宜。5.靜態(tài)電流最大值 vcc=5v,rl=6ma vcc=15v,rl=15ma。 3.3.2 水位檢測電路 水位檢測電路采用 555 電路設計當 b 與 c 同時在水中時設定為低水位,當 a、b、c 都在水中 時設定為高水位,同時通過單片機能在顯示屏上顯示并執(zhí)行下一步操作。其電路圖如 3-4 所示 圖 3-4 水位檢測電路圖 3.3.3 水位控制電路 水位控制電路同樣采用繼電器來控制,當水位檢測到低水位需要加水時便會驅(qū)動水泵加水同 樣在定時電路檢測到需要換水時便會驅(qū)動水泵進行換水,其電路圖如 3-5 所示 圖 3-5 水位控制電路圖 3.4 單片機主控電路 3.4.1 單片機選擇 單片機是一種集成電路芯片,采用超大規(guī)模集成電路技術把計算機的中央處理器 cpu、只讀 存儲器 rom、多種 i/o 和中斷系統(tǒng)、定時器/ 計時器等功能集成在一塊硅片上形成一個功能芯片, 概括的講:一塊芯片就成了一臺計算機。因此得名單片微型計算機(single chip microcomputer) , 簡稱為單片機。它的體積小、質(zhì)量輕、價格便宜、為學習、應用和開發(fā)提供了便利條件。 單片機是靠程序運行的,并且可以修改,不同的程序可以實現(xiàn)不同的功能,尤其是一些獨特功 能的項目實現(xiàn),使用其他器件需要花費很大力氣才可以做到,但是通過單片機編程可以使得該項目 變得簡單并且更智能、更高效、更可靠。 3.4.2 單片機的引腳及各引腳功能 本設計采用 stc89c52 單片機作為控制核心,它被廣泛地運用在電子產(chǎn)品的設計中,它是一種 低功耗、高性能的 8 位微控制器,其引腳圖如圖 3-6 所示,其各引腳功能如下介紹: 圖 3-6 stc89c52 單片機引腳圖 vcc:電源。 gnd:地。 p0 口:p0 口是一個 8 位漏極開路的雙向 i/o 口。作為輸出口,每位能驅(qū)動 8 個 ttl 邏輯電平。 對 p0 端口寫“1”時,引腳用在高阻抗輸入。當訪問外部程序和數(shù)據(jù)存儲器時,p0 口也被作為低 8 位地址/數(shù)據(jù)復用。在這種模式下,p0 具有內(nèi)部上拉電阻。在 flash 編程時,p0 口也用來接收指 令字節(jié);在程序校驗時,輸出指令字節(jié)。在程序校驗時,需要外部上拉電阻。 p1 口:p1 口是一個有內(nèi)部上拉電阻的 8 位 i/o 口,p1 輸出緩沖器能驅(qū)動 4 個 ttl 邏輯電平。 當對 p1“1”時,內(nèi)部上拉電阻把端口拉高,此時可以作為輸入口使用。當它作為輸入使用時,被 外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(iil),此外 p1.0 和 p1.2 分別作為定時器/計 數(shù)器 2 的外部計數(shù)輸入(p1.0/t2)和定時器/計數(shù)器 2 的觸發(fā)輸入(p1.1/t2ex)。在 flash 編程和 校對時,p1 口接收低 8 位地址字節(jié)。 p2 口:p2 口是一個具有內(nèi)部上拉電阻的 8 位雙向 i/o 口,p2 輸出緩沖器能驅(qū)動 4 個 ttl 邏輯 電平。對 p2 端口寫“1”時,內(nèi)部上拉電阻把端口拉高,此時可以作為輸入口使用。當作為輸入口 使用時,被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(iil)。在訪問外部程序存儲器或 用 16 位地址讀取外部數(shù)據(jù)存儲器時,p2 口就送出 8 位地址。 在使用 8 位地址訪問外部數(shù)據(jù)存儲器時,p2 口輸出 p2 鎖存器的內(nèi)容。在 flash 編程和校驗時, p2 口也接收高 8 位地址字節(jié)和一些控制信號。 p3 口:p3 口是一個具有內(nèi)部上拉電阻的 8 位雙向 i/o 口,p2 輸出緩沖器能驅(qū)動 4 個 ttl 邏輯 電平。對 p3 端口寫“1”時,內(nèi)部上拉電阻把端口拉高,此時可以作為輸入口使用。當作為輸入使 用時,被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(iil)。p3 口也作為 at89c52 特殊功能 (第二功能)使用。在 flash 編程和校驗時,p3 口也接收一些控制信號。 ea/vpp:訪問外部程序存儲器控制信號。為使能從 0000h 到 ffffh 的外部程序存儲器讀取指令, ea 必須接 gnd。為了執(zhí)行內(nèi)部程序指令,ea 應該接 vcc。在 flash 編程期間,ea 也接收 12v 的 vpp 電壓。 xtal1:振蕩器返鄉(xiāng)放大器和內(nèi)部時鐘發(fā)生電路的輸入端。 xtal2:振蕩器反相放大器的輸出端。 3.4.3 單片機及最小系統(tǒng) 對于單片機最小系統(tǒng)設計是指用最少的元件組成單片機可以工作的系統(tǒng),它的最小系統(tǒng)一般包 括單片機、晶振電路、復位電路。 本設計研究中,所用到的單片機最小系統(tǒng)有復位電路、晶振電路兩部分。其單片機最小系統(tǒng)電 路如圖 3-7 所示。 圖 3-7 單片機最小系統(tǒng)圖 復位電路:本設計的單片機最小系統(tǒng)中的復位電路是采用按鍵復位的,其工作原理是當按鍵按 下后,圖 3-7 中的 c19 迅速充電,兩個電阻 r10、r11 起分壓作用后使得 rest 端得到高電平;當按 鍵松開后,電容放電,整個電路相當于斷路。本設計的 stc89c52 單片機當引腳 rest 的高電平持續(xù) 兩個機器周期以上就會復位,因此選擇恰當?shù)碾娙葜岛碗娮柚悼梢员WC可靠的復位。 晶振電路:本設計的晶振電路取得的晶振頻率為 12mhz,它使得單片機有一個比較穩(wěn)定的工作 頻率,圖 3-7 中的電容 c20、c21 的作用即為起振作用。 3.5 聲光報警電路 聲光報警電路在本設計中是個輔助添加功能,當在低水位時發(fā)光二極管正向?qū)òl(fā)光,蜂鳴器 報警。 圖 3-8 聲光報警電路圖 3.6 時鐘電路 時鐘電路:本設計的時鐘電路除了顯示時間的功能還為定時為水族箱換水提供定時作用,時鐘 電路在單片機工作中是非常需要的,產(chǎn)生的時鐘信號可以作為單片機內(nèi)部各個微操作的時間基準, 單片機中的各功能部件的運行都是以時鐘頻率為基準的,同時也可以是得液晶在顯示上更加豐富些。 其時鐘電路如圖 3-9 所示。 圖 3-9 時鐘電路圖 3.7 液晶 lcd1602 顯示電路 本顯示電路的設計就采用液晶 lcd1602 作為顯示器件,它的設計電路簡單且顯示穩(wěn)定。其顯 示原理為具體顯示電路如圖 3-7 所示。其中液晶 lcd1602 的 d0 至 d7 腳分別與單片機的 p0.0 至 p0.7 引腳連接,通過 rs 腳與單片機的 p1.0 腳連接,rw 腳與單片機的 p1.1 腳連接,en 腳與單片機的 p1.2 腳連接,根據(jù) 1602 時序?qū)懗雒钭雍瘮?shù)和數(shù)據(jù)子函數(shù),根據(jù)命令子函數(shù)進行初始化,根據(jù)數(shù) 據(jù)子函數(shù)開始寫數(shù)據(jù),最后實現(xiàn)液晶上的溫度水位和時間的顯示。其顯示電路圖如圖 3-10 所示。 圖 3-10 液晶顯示電路 液晶 lcd1602 是一種專門用來顯示字母、數(shù)字、符號等的點陣型液晶模塊。它由若干個 5x7 或 者 5x11 等點陣字符位組成,每個點陣字符位都可以顯示一個字符,每位之間有一個點距的間隔, 每行之間也有間隔,起到了字符間距和行間距的作用。lcd1602 是指顯示的內(nèi)容為 16x2,即可以顯 示兩行,每行 16 個字符液晶模塊(顯示字符和數(shù)字) 。目前市面上字符液晶絕大多數(shù)是基于 hd44780 液晶芯片的,控制原理是完全相同的,因此基于 hd44780 寫的控制程序可以很方便地應用 于市面上大部分的字符型液晶。 它有 16 個引腳,其中引腳 1 是 vss 為電源地,引腳 2 是 vcc 接 5v 電源正極,引腳 3 是 v0 為 液晶顯示器對比度調(diào)整端,接正電源時對比度最弱,接地電源時對比度最高(對比度過高時會產(chǎn)生 “鬼影” ,使用時可以通過一個 10k 的電位器調(diào)整對比度) ,引腳 4 是 rs 為寄存器選擇,高電平 1 時選擇數(shù)據(jù)寄存器、低電平 0 時選擇指令寄存器。引腳 5 是:r/w 為讀寫信號線,高電平時進行讀 操作,低電平時進行寫操作。當 rs 和 r/w 共同為低電平時可以寫入指令或者顯示地址,當 rs 為低 電平 r/w 為高電平時可以讀忙信號,當 rs 為高電平 r/w 為低電平時可以寫入數(shù)據(jù)。6 腳是 e 端為 使能端,當 e 端由高電平跳變成低電平時,液晶模塊執(zhí)行命令。引腳 7 至引腳 14 是 d0d7 為 8 位 雙向數(shù)據(jù)端,引腳 15 至 16 是空腳或背燈電源。15 腳背光正極,16 腳背光負極。 第四章 軟件系統(tǒng)設計 4.1 軟件結(jié)構設計 軟件設計是智能水族箱系統(tǒng)設計的主要內(nèi)容,應該根據(jù)系統(tǒng)功能要求和系統(tǒng)硬件電路為基礎 進行系統(tǒng)的軟件設計。合理的軟件結(jié)構是設計出一個性能優(yōu)良的單片機應用于系統(tǒng)軟件的基礎,必 須充分的重視。對于簡單的課題設計,可采用順序結(jié)構設計方法,其系統(tǒng)軟件由主程序和若干個中 斷服務程序構成。明確主次序和中斷服務程序完成的操作及指定各中斷的優(yōu)先級。對于復雜的課題 設計,可采用實時多任務操作系統(tǒng),此操作系統(tǒng)應具備任務調(diào)度,實時控制,實時時鐘,輸入輸出 和中斷控制,系統(tǒng)調(diào)用,多個任務并行運行等功能。以提高系統(tǒng)的實時性和并行性。 在程序設計方法上,模塊程序設計是單片機應用中常用的程序設計方法。這種模塊化程序便 于設計和調(diào)試,容易完成可供多個程序共享的優(yōu)點,但各個模塊之間的連接有一定的難度。根據(jù)需 要也可以采用自上而下的程序設計方法,此方法先從主程序開始設計,然后再編制個從屬的程序和 子程序。這種方法比較符合人的日常思維。缺點是上一級的程序錯誤會對整個程序產(chǎn)生影響。 軟件結(jié)構設計和程序設計方法確定后,根據(jù)系統(tǒng)功能定義,可先畫出程序粗框圖,再對粗框 圖進行擴充和具體化,既對存儲器,寄存器,標志位等工作單元作具體的分配和說明。再繪制出詳 細的流程圖。程序流程圖設計出來后,便可著手編寫程序,單片機應用程序一般采用 keil c51 集 成環(huán)境開發(fā)軟件部分,keil c51 是美國 keil software 公司出品的 5l 系列兼容單片機 c 語言軟件 開發(fā)系統(tǒng),與匯編相比,c 語言在功能上、結(jié)構性、可讀性、可維護性上有明顯的優(yōu)勢。keil c51 軟件提供豐富的庫函數(shù)和功能強大的集成開發(fā)調(diào)試工具,全 windows 界面。另外重要的一點,只要 看一下編譯后生成的匯編代碼就能體會到 keilc51 生成的目標代碼效率非常之高,多數(shù)語句生成 的匯編代碼很緊湊,容易理解。 4.2 整體設計流程圖 本課題研究中單片機起到了對,和顯示功能,因此軟件設計部分就比較復雜。軟件系統(tǒng)設計 中包括了系統(tǒng)初始化程序,水溫檢測控制系統(tǒng),水位檢測控制系統(tǒng),液晶顯示程序。系統(tǒng)初始化程 序中包括對系統(tǒng)的 i/o、1602 液晶顯示和時鐘初始化程序。軟件整體設計工作流程如圖 4-1 所示。 y 開始 系統(tǒng)初始化 顯示時間、溫度、水位 溫度過低 開啟加熱電路 n y n y n 圖 4-1 整體設計工作流程圖 4.3 各模塊程序 4.3.1 水溫檢測控制程序 水溫檢測控制程序主要是通過檢測溫度與設定溫度的比較進行對加熱器的控制,使水族箱的溫 度可以適合所飼養(yǎng)的魚類的生存。 y n 開啟加水泵水位過低 定時換水時間 是否到 開啟排水泵 子程序入口 水溫采集 水溫過低? 開啟加熱器 水溫到達 設定值? 繼續(xù)加熱 y 圖 4-2 水溫檢測控制流程圖 4.3.2 水位檢測控制程序 水位檢測控制主要是通過檢測水位是否正常以及對水泵的控制來實現(xiàn)水族箱水位的控制。 y y n 圖 4-3 水位檢測控制流程圖 4.3.3 定時換水程序 通過對放水的時間的判斷,來進行換水。流程圖如圖 4-4 所示。 y n 返回 停止加熱 開始 水位是 否過低 開啟加水泵 返回 水位是 否正常 繼續(xù)加水 子程序入口 換水時 間? 開啟排水泵 圖 4-4 定時換水流程圖 4.3.4 液晶顯示程序 本設計使用的是液晶 lcd1602,當液晶接收到溫度、水位顯示處理的指令后,液晶開始初始化, 在程序中設定其要顯示的功能,例如字符顯示的位置,數(shù)據(jù)方式,單位選擇等,再根據(jù) 1602 時序 寫出命令子函數(shù)和數(shù)據(jù)子函數(shù),根據(jù)命令子函數(shù)進行初始化,根據(jù)數(shù)據(jù)子函數(shù)開始寫數(shù)據(jù),最后實 現(xiàn)液晶上的溫度和水位的顯示。它是一種專門用來顯示字母、數(shù)字、符號等的點陣型液晶模塊。它 由若干個 5x7 或者 5x11 等點陣字符位組成,每個點陣字符位都可以顯示一個字符,每位之間有一 個點距的間隔,每行之間也有間隔,起到了字符間距和行間距的作用。通過設定功能并發(fā)送需要現(xiàn) 實的字符代碼,使液晶通過不同引腳顯示需要的數(shù)據(jù)和字符。液晶 lcd1602 有便捷的接口方式和簡 單方便的操作指令,其工作流程圖如圖 4-5 所示。 返回 開始 液晶初始化 設定功能 液晶寫入指令 液晶顯示數(shù)據(jù) 圖 4-5 液晶顯示流程圖 4.3.5 時鐘顯示程序 本設計其中一個主要的功能是進行定時的給水族箱換水,時鐘顯示是其中的一附加顯示功能。 在液晶上時鐘主要是在整塊液晶的上顯示當時的日期、時間和星期幾。其中斷服務子程序流程圖如 圖 4-6 所示。 保護現(xiàn)場 開始 秒針清零,分針加 1 60 秒是否到? 60 分針是否到? 分針清零,時針加 1 24 小時是否到? 時針清零 y y y n n n 返回 圖 4-6 時鐘中斷服務子程序流程圖 第五章 制作與調(diào)試 5.1 系統(tǒng)硬件制作 本設計題目基于單片機的智能水族箱系統(tǒng)確定后,查閱了相關資料后發(fā)現(xiàn)這是一個比較難實現(xiàn) 的設計,制作這么一個測試系統(tǒng)需要了解的不僅僅是功能方面的實現(xiàn),于是我制定了一個系統(tǒng)的計 劃。在基礎的任務書和開題報告等完成后,全力著手硬件的制作。 首先確定自己的設計電路及需要的電子元件,了解這些電子元件是否符合該電路的測量要求, 尤其是在驅(qū)動執(zhí)行器的設計上的協(xié)調(diào)。焊接時參考設計原理圖,清楚認知每個芯片引腳作用后仔細 連接各個引腳。 首先焊接本設計電路的核心部分單片機,焊接芯片時要先焊接其電源線和底線,以保證整個 電路有準確的工作電壓。 相同類型的芯片焊接時,其他芯片焊接可以參照第一個芯片的焊接方法,這樣可以減少焊接 錯誤率,且大大節(jié)省了制作時間。 焊接過程中會截取一小部分模塊進行調(diào)試,發(fā)現(xiàn)錯誤后及時調(diào)整

溫馨提示

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

最新文檔

評論

0/150

提交評論