freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于單片機的魚缸控制器設(shè)計(編輯修改稿)

2024-07-24 19:58 本頁面
 

【文章內(nèi)容簡介】 遞。其中主控制部分主要由以下電路組成:時鐘電路,主要功能是實時的顯示系統(tǒng)的日期統(tǒng)時間,選用單片機主芯片來實現(xiàn),更加方便簡捷的顯示時間;數(shù)據(jù)存儲/復位電路,用來存儲系統(tǒng)所檢測到的各種環(huán)境參數(shù)和信息,并能夠在發(fā)生異常的情況下及時動作復位,防止發(fā)生不必要的損失,;指示燈的接口電路,主要是實時顯示系統(tǒng)的各種參數(shù)以及調(diào)試過程的信號的數(shù)字化,~;與LED顯示芯片和鍵盤的接口電路,完成鍵盤輸入和顯示的連接。輸入輸出部分主要由輸出指示、溫度檢測、水位高低檢測以及其他參數(shù)的檢測組成,而水位高低的檢測則用碳棒來實現(xiàn)。 各個模塊的硬件設(shè)計 時鐘電路模塊的設(shè)計 本次硬件設(shè)計中時鐘電路模塊所選用的核心芯片AT89C52,用來完成系統(tǒng)中實時時鐘的顯示和設(shè)置。 其中,實時的時鐘/日歷電路用來提供詳細的時間和日期,人性化的的選擇12或者24小時格式,并且每個月的天數(shù)可以自動調(diào)整,減少了手動的麻煩。該時鐘電路主要完成三個功能,即時間的顯示、相對時鐘以及時間的處理。其中相對時鐘主要是控制魚缸的各種操作,實現(xiàn)溫度控制和氧氣含量的時間調(diào)整。時間的處理主要是設(shè)置鬧鐘、事件的提醒以及作為備忘錄使用。 鍵盤與顯示模塊的設(shè)計該模塊的設(shè)計是直接選用鍵盤輸入通過單片機AT89C52來進行寫入,并采用LED來進行顯示結(jié)果與過程,該模塊靈敏度高,性能可靠,而且耗費價格低廉,能夠準確的達到系統(tǒng)的要求,實現(xiàn)輸入和顯示的綜合統(tǒng)一。此模塊的核心是要設(shè)計的鍵盤與顯示的電路,主要實現(xiàn)復位、LED顯示以及鍵盤輸入的功能,這些功能分別由復位電路、8位的LED顯示電路、鍵盤的輸入控制電路實現(xiàn),可以更好的實現(xiàn)各個參數(shù)的設(shè)定、控制和調(diào)試。 溫度控制模塊的設(shè)計在設(shè)計溫度控制模塊過程中,選用DALLAS公司生產(chǎn)的芯片DS18B20作為核心芯片,它是一種一線式數(shù)字溫度傳感器,主要由以下四部分組成:溫度傳感器、配置寄存器、64位ROM以及非揮發(fā)的溫度報警觸發(fā)器。其溫度的測量范圍是55~+125攝氏度,有3個引腳T092,是小體積的的封裝形式,并且有912位的A/D轉(zhuǎn)換精度,還可以將測量到的溫度擴展為16位數(shù)字量,并通過串行的方式輸出。其工作電源有兩種方式,一是可以在遠端直接引入,二是可以通過寄生電源產(chǎn)生。以下是DS18B20的內(nèi)部結(jié)構(gòu)圖:其中,VDD是外接的供電電源,GND是接地,DQ是數(shù)字信號的輸入/輸出端。將單片機的P04口與芯片DS18B20的引腳2相連,可組成溫度檢測電路。它用外部5 伏的電源供電,這樣可以保證在有效的時鐘周期內(nèi)提供足夠的電流。電路圖如下所示: 數(shù)據(jù)存儲電路的設(shè)計在此電路設(shè)計時采用ATMEL/愛特梅爾公司生產(chǎn)的芯片AT24C02NSU27 D作為存儲器使用,其導電類型為雙極型,工作溫度為40~85攝氏度,價格低廉,但性能較高,靈敏度強。此芯片在該電路中主要實現(xiàn)對系統(tǒng)設(shè)定的參數(shù)和工作過程中數(shù)據(jù)變化的存儲,將其與單片機相連組成完善的電路,可以寫入和存儲單片機的程序與指令。17 第4章 系統(tǒng)軟件設(shè)計 設(shè)計內(nèi)容及方法 設(shè)計內(nèi)容軟件設(shè)計是本次論文的中自動化魚缸控制的主要內(nèi)容和重點,主要是根據(jù)設(shè)計系統(tǒng)的功能要求,在已選好的系統(tǒng)硬件的基礎(chǔ)上進行系統(tǒng)的軟件設(shè)計。為了達到系統(tǒng)功能的明確和完善,操作簡便以及可靠性強的特點,一般采用結(jié)構(gòu)化的程序設(shè)計方法。該程序設(shè)計方法共分為以下三個方面:從上到下的設(shè)計、模塊化編程和結(jié)構(gòu)化編程。此外,還需要加強軟件的抗干擾性,實現(xiàn)其程序的可靠性。單片機系統(tǒng)的程序設(shè)計是采用C語言來進行開發(fā)的, 整個單片機系統(tǒng)的程序共分為三模塊,即主程序模塊、溫度檢測模塊和溫度顯示模塊。每個模塊都有一定的功能和作用,其中一些還包括有一些子程序,它們既相互獨立有相互聯(lián)系,低級模塊可以被高級模塊調(diào)用,共同實現(xiàn)協(xié)調(diào)統(tǒng)一。 設(shè)計方法由于本次設(shè)計是基于自動化魚缸的設(shè)計,并采用了模塊化的設(shè)計共同實現(xiàn)控制。模塊化設(shè)計就是把軟件按照系統(tǒng)要求和要實現(xiàn)的各種功能將其劃分為幾個較簡單的和相對獨立但又相關(guān)的模塊。其中,在實現(xiàn)模塊化的設(shè)計過程中,一定要注意分解、信息隱藏和模塊的獨立性等方面。分解是我們在日常生活中遇到復雜問題時常用的解決方法,對問題求解的大量實驗表明,將一個復雜的問題分解為幾個較小較簡單的問題,能夠明顯的降低解決問題的難度和復雜度。而針對于此次軟件系統(tǒng)的設(shè)計,各個組成模塊是相互聯(lián)系的,要避免將系統(tǒng)劃分為很多模塊,這樣一來各個模塊相互之間的聯(lián)系也就越少,可以減少出錯的連鎖反應。并且可以使得模塊的接口工作量大大減少,但每個軟件都有一個最小的成本劃分區(qū),只要在這個范圍內(nèi)將系統(tǒng)劃分為合適的模塊數(shù),就可以使工作量和設(shè)計難度保持最小。信息隱藏是指將對不需要了解某些數(shù)據(jù)與過程的模塊隱藏起來。因為在設(shè)計程序和系統(tǒng)時,會需要一些在特定情況下才會用到的信息,而這些信息的出現(xiàn)可能會影響到模塊間的信息交換,所以,最好的辦法就是將其隱藏起來。當發(fā)生特定情況才允許這些信息交流。這一思想的目的是為了提高模塊的獨立性,它避免了在用不到隱藏信息時將其擴展到其它模塊的風險,這樣一來,各個模塊的功能比較單一,不容易發(fā)生與其它模塊共享信息的情況。應用這一思想,使得系統(tǒng)易于測試、聯(lián)調(diào)和維護。模塊獨立性是將系統(tǒng)分為幾個模塊時要遵守的必要準則,要使得模塊劃分的合理,就必須堅持模塊的獨立性。獨立性主要是指模塊本身的結(jié)構(gòu)和塊間的聯(lián)系。前者指模塊內(nèi)部的組成部分,其相互協(xié)調(diào)工作,實現(xiàn)功能;后者指多個模塊之間的相互聯(lián)系,它們既相互獨立又相互聯(lián)系。只有保證模塊的獨立性很高,才能使得塊內(nèi)組成部分的聯(lián)系越強,同時摸塊間的聯(lián)系越弱,避免異常情況的傳染。在開發(fā)軟件的同時,還要注意軟件開發(fā)中文檔的建立。因為我們在開發(fā)軟件的過程中,會使用大量的信息,同時還會產(chǎn)生很多信息,這時最好建立一個軟件文檔,可以提高軟件過程中的能見度,記錄下開發(fā)的過程。軟件文檔的編制,使得開發(fā)人員對各個階段的工作都進行全面的思考,以便減少返工的機會,還可以在開發(fā)早期發(fā)現(xiàn)錯誤的地方,可以很快解決這些問題,避免后續(xù)的麻煩,并且便于系統(tǒng)軟件的升級、使用和維護。本次系統(tǒng)是以上述的軟件設(shè)計思想為指導,采用Kei1 C51集成環(huán)境開發(fā)軟件部分。Kei1 C51是美國Kei1 Software公司出品的51系列兼容單片機,它是由C語言軟件開發(fā)系統(tǒng),與匯編相比,C語言的功能更加完善,有很強的可維護性,結(jié)構(gòu)的可靠性更高,并且易于讀寫。Kei1 C51軟件提供全Windows界面,在編程時可以調(diào)用豐富的庫函數(shù),并且可以進行集成開發(fā)和調(diào)試。同時,經(jīng)編譯后生成的匯編代碼更加緊湊,并且容易理解,使得Kei1 C51生成目標代碼的效率大大提高。本次論文所設(shè)計的系統(tǒng)的軟件部分主要包括:主程序、初始化子程序、中斷服務(wù)程序、溫度檢測程序、溫度顯示程序、工作狀態(tài)控制程序。 主程序的設(shè)計系統(tǒng)的軟件主程序主要是檢測魚缸內(nèi)的各種環(huán)境參數(shù),實現(xiàn)環(huán)境參數(shù)的設(shè)定和改變。在設(shè)計過程中仿照硬件電路的設(shè)計辦法,將系統(tǒng)要實現(xiàn)的功能合理的劃分為幾個小系統(tǒng),通過編寫其對應的子程序,使得幾個子程序可以相互聯(lián)系,從而實現(xiàn)系統(tǒng)所要求的溫度、含氧量、水位等設(shè)計。應用此模塊化的設(shè)計不僅可以使設(shè)計的思路更加清晰,而且更加方便了程序的編寫和調(diào)試。以下是系統(tǒng)主程序的工作流程圖: 中斷服務(wù)子程序的設(shè)計對于主程序中的各種信息和數(shù)據(jù)的處理主要由兩種途徑,一是通過在顯示間隙中完成,二是通過中斷服務(wù)子程序來完成。T0的中斷服務(wù)子程序主要完成定時數(shù)據(jù)的傳送、按鍵處理和按鍵的消抖等。而計數(shù)器T1是用來產(chǎn)生波特率,不會中斷。以下是定時器的中斷服務(wù)子程序流程圖:本次系統(tǒng)利用定時器/計數(shù)器,它是在工作方式1下,進行20mS的定時,接著通過所設(shè)計的T0中斷服務(wù)子程序來實現(xiàn)時和分的計時。該程序是提供了一個時間基準,同時給采樣數(shù)據(jù)提供基本的計時信息。,同時定時器T0設(shè)置為20mS,所以裝入的TH0和TL0的初值分別為B8H和00H。以下是當進行20mS的計數(shù)初值時的計算:(1)機器周期TF=12*(1/)us(2)定時器的計數(shù)值T0/TP=20000*()=18432(3)裝入定時器的初值為X=216T*f/12=6553618432=47104(4)將X表示為二進制形式為:X=1011100000000000B,而且定時器的工作方式選擇為1,所以(TH0)=B8H,(TL0)=00H。在此中斷服務(wù)程序中,只要循環(huán)5此就可以完成100mS的定時控制。 時間顯示和溫度讀取程序的設(shè)計 顯示時間的設(shè)計本次系統(tǒng)為了方便控制和應用簡捷,針對于時間的顯示用主芯片AT89C52來實現(xiàn),通過匯編語言完成程序的編寫,經(jīng)芯片讀取并由LED顯示。詳細程序見附錄。 溫度讀取的設(shè)計在利用芯片DS18B20讀取溫度時,首先要取得到芯片DS18B20檢測到的溫度值,該溫度值是以BC碼的形式來顯示,然后再以十進制的形式輸出,而且輸出的溫度值會是實際檢測到的溫度值的十倍,并且會含有一位不顯示的小數(shù)。詳細程序見附錄。第5章 系統(tǒng)的抗干擾設(shè)計針對于工業(yè)現(xiàn)場的應用中,有很多的干擾問題,它們是以一種或者多種的方式存在并作用于單片機的控制系統(tǒng),其對于控制能系統(tǒng)產(chǎn)生比較大的影響,使得系統(tǒng)所要實現(xiàn)的功能不能達到要求,最后還可能會導致嚴重的后果,所以必須要加入一些必要的抗干擾設(shè)計,尤其是對于自動化魚缸中魚類和水草植物的生活環(huán)境的監(jiān)控,要求其必須要具備良好的抗干擾能力,才能實現(xiàn)最終的理想的控制。就單片機的控制系統(tǒng)來說,其抗干擾的設(shè)計主要是針對于硬件和軟件兩部分。硬件的抗干擾主要是應用一些物理的器件來較少或者消除干擾,能很大程度上將大部分的干擾消除,其優(yōu)點是效率較高,可以給系統(tǒng)創(chuàng)造一個良好工作環(huán)境,但同時會造成成本的增加和硬件體積的增大。而軟件的抗干擾主要是加入一些控制算法來達到目的,它是通過編寫或者改變程序來實現(xiàn),在一定程度上會占用CPU,這樣一來會影響到系統(tǒng)的工作效率和穩(wěn)定性。所以,一般選擇將硬件的抗干擾和軟件的抗干擾相互結(jié)合,使其協(xié)調(diào)工作,達到最終抗干擾能力強并且硬件少的效果。 硬件電路的抗干擾 單片機控制系統(tǒng)出錯的原因一般來說,造成單片機控制系統(tǒng)受到干擾的原因來自兩個方面,一是電路的設(shè)計,二是生產(chǎn)本身的制造問題。總的來說,主要由以下幾個外在原因:元件本身的質(zhì)量較低;單片機本身的抗干擾能力較低;工作環(huán)境的影響較大;期間的功率不足;沒有屏蔽保護的功能等。 電路的抗干擾設(shè)計針對于實際電路的抗干擾,主要有以下三個注意方面:(1)接地。該設(shè)計主要是實現(xiàn)保護接地,即連接大地,可以有效的提高系統(tǒng)的抗干擾能力。(2)濾波。顧名思義指的是將采集到的各種信號加以分類,通過其不同的頻率特性控制其方向。一般用的濾波器有高通濾波器、低通濾波器和帶通濾波器。比如將低通濾波器連接到交流電源上,便可以讓系統(tǒng)所需要的交流電得以通過,阻止其它的高頻干擾信號進入并將其導入大地。(3)制作電路板時的布線和工藝。將電路板合理的劃分區(qū)域,使其不會再布線上產(chǎn)生干擾;時鐘要盡可能的遠離I/O線,盡量與之垂直;電源線和接地線要較粗,過孔盡可能的少等等。 軟件電路的抗干擾 軟件電路所產(chǎn)生的干擾主要是由于干擾信號侵入了系統(tǒng)的輸入通道,并且與所需的信號相疊加,造成信號的弱化甚至錯誤的動作,最終導致系統(tǒng)無法正常工作。而針對于軟件電路上的抗干擾設(shè)計不僅能夠在可靠性上使得系統(tǒng)有很大的提升,而且使得硬件的成本有效的降低,使得系統(tǒng)具有自我診斷并恢復的能力。在實際的操作中,軟件電路的抗干擾設(shè)計主要由以下幾個方面:減少或者消除輸入信號的噪音、改正輸入過程中的干擾或者錯誤的信號和將運行混亂的程序重新進入正軌等。 數(shù)據(jù)采集軟件的抗干擾在單片機控制系統(tǒng)中,往往在數(shù)據(jù)采集的過程中會發(fā)生誤差,其主要原因是由于干擾信號進入了輸入通道中,使得信號發(fā)生了較大的偏差,以至于會造成控制的異常。針對于以上情況,在此抗干擾的設(shè)計中,主要是采用濾波算法,避免了硬件設(shè)備的添加,而且其可靠性和靈活性很高。本次采用常用的程序判斷濾波法,可以有效的減少程序編寫后運行出現(xiàn)的干擾。 輸出通道的抗干擾輸出通道中所產(chǎn)生的干擾是由于在外圍器件工作時時常產(chǎn)生的電磁脈沖,該電磁脈沖會影響輸出信號的狀態(tài)。比如,由于系統(tǒng)產(chǎn)生的靜電干擾會使得單片機控制系統(tǒng)輸出的低電平轉(zhuǎn)變?yōu)楦唠娖?,造成錯誤的控制。對于此類干擾,可通過重復的寫控制命令的方式來解決。上文中提到該類干擾一般是靜態(tài)的脈沖干擾,比如當單片機輸出一個正確的信號時,由于干擾信號的原因會使得接收設(shè)備得到一個錯誤的信號,這樣一來會造成設(shè)備的錯誤動作,為了避免這種情況,有效的方法便是讓單片機多次重復的輸出一個正確的信號,并要保證其輸出周期盡可能的短,這樣就可以保證在干擾信號沒有干擾之前便可以得到一個正確的信號,從而保證設(shè)備的正確動作。 程序執(zhí)行過程的抗干擾在該設(shè)計中主要采用兩種方法來進行對程序執(zhí)行過程中產(chǎn)生的干擾的解決,即指令冗余和軟件陷阱。 (1)指令冗余我們知道,一般CPU在取指令時是先取操作碼再取操作數(shù)。而單片機控制系統(tǒng)有時會發(fā)生“跑飛”的狀況,即系統(tǒng)在遇到異常情況或者受到干擾時,程序的運行會發(fā)生錯誤,可能會執(zhí)行到別的程序。當系統(tǒng)發(fā)生此種情況并“跑飛”到某個雙字節(jié)時,可能會先取走操作數(shù),這樣便造成了程序出錯。而當“跑飛”到了三字節(jié)的指令上時,由于字節(jié)數(shù)的增加會使得上述情況更易發(fā)生。而為了避免這種情況發(fā)生,通常采用指令冗余的方法,即在較為關(guān)鍵的地方插入一些重寫的單字節(jié)指令,對于雙字節(jié)指令和三字節(jié)指令,解決辦法是插入兩個以上字節(jié)的NOP指令。這樣一來,即使發(fā)生了上述“跑飛”的情況,但由于存在空的操作指令NOP,便避免了“跑飛”的狀況,使得系統(tǒng)可以自行的進入正軌。但要注意的是,為了提高程序的執(zhí)行效率,在編寫一個程序時,盡可能的使用少量的指令冗余。(2) 軟件陷阱上文中所述的“跑飛”狀況還有一個特殊情況,即當進入了非程序區(qū)時,指令冗余便起不到任何作用,這時我們可以設(shè)置一個軟件陷阱。軟件陷阱是將“跑飛”的程序強制的拉入一個入口地址,它是專門
點擊復制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1