




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、編號: 畢業(yè)設計(論文)外文翻譯(譯文)院 (系): 機電工程學院 專 業(yè): 電氣工程及其自動化 學生姓名: 譚宸 學 號: 0700120133 指導教師單位: 機電工程學院 姓 名: 李彩林 職 稱: 副教授 2011年05月25日智能溫度控制系統(tǒng)的研究和設計huang wen-tiancollege of information beijing union universitybeijing, chinawoshihwtli jin-pingcollege of information beijing union universitybeijing, chinaxxtjinping摘要:
2、智能溫度控制系統(tǒng)的原理和功能主要基于at89s51單片機。溫度監(jiān)測模塊主要由以下幾個模塊組成:1數(shù)字傳感器ds18b20,此系統(tǒng)可以探測、預設溫度,顯示時間、存儲和打印監(jiān)測數(shù)據(jù)。當溫度超過或小于預先設定的溫度的最大、最小值時,報警系統(tǒng)將工作,預設的溫度可以設定為任意值。這樣溫度就能被智能的控制在一定范圍內。基于此系統(tǒng),只需合理更改軟件部分即可設計出其他非線性控制系統(tǒng)。經(jīng)過實際成產(chǎn)實驗,證明此系統(tǒng)的可靠性、準確性、滿意度。關鍵詞:at89s51; 單片機; 溫度; ds18b201 簡介溫度是一項在人們日常生活中非常重要的因素?,F(xiàn)當代,溫度控制已經(jīng)不僅僅局限在工業(yè)生產(chǎn),而且同樣廣泛運用在其他各個
3、領域。隨著生活水平的提高,我們可以發(fā)現(xiàn)溫度控制已經(jīng)廣泛應用在酒店、工廠,甚至人們的家居生活。溫度控制融入人們的生活已經(jīng)是大勢所趨,所以,測量和控制溫度有著重要意義?;赼t89s51單片機和ds18b20溫度傳感器,系統(tǒng)將更智能的控制溫度,溫度可以被設定在一個確定的范圍內。系統(tǒng)還可以在lcd上顯示時間,儲存和打印監(jiān)測數(shù)據(jù);當溫度超過或小于預先設定的溫度的最大、最小值時,系統(tǒng)還可自動將其控制。通過這些功能,能夠保證溫度不變。系統(tǒng)具有高抗干擾能力、高控制精度、高設計彈性等優(yōu)點,能適合各種環(huán)境。系統(tǒng)主要運用在提高生活質量和生產(chǎn)效率。同樣,此系統(tǒng)可廣泛應用在熱水器、生物培養(yǎng)液、實驗室等。所以此系統(tǒng)的設
4、計有著深遠的意義。設計大體可分為硬件設計和軟件設計。本文中主要以pid算法為主要研究對象,為克服pid算法適應能力弱的缺點,結合模糊理論研究了一種基于模糊推理的自適應pid控制算法。模糊控制作為智能控制的一個重要分支,有著無需知道被控對象的數(shù)學模型和較強的魯棒性兩大特點,而控制系統(tǒng)是一個大慣性、非線性、慢時變的系統(tǒng),不易得出精確數(shù)學模型,因而采用模糊控制的方法,實現(xiàn)對溫度的控制,可有效地提高溫度的熱效益和加熱質量。模糊控制是以模糊集合、模糊語言變量和模糊邏輯推理為基礎的計算機數(shù)字控制技術。它包括三個步驟,即精確量的模糊化;規(guī)則庫的建立;解模糊化。 本文首先論述了模糊pid控制的理論基礎,介紹了
5、模糊控制的原理及模糊pid的結構和設計。然后分析了電加熱爐的組成,求出了環(huán)節(jié)的傳遞函數(shù),建立了電加熱爐系統(tǒng)模型。再次基礎上設計了適用于溫度控制系統(tǒng)的模糊pid控制器,利用matlab進行仿真,對控制效果進行了詳細的分析。仿真結果表明模糊pid控制器不依賴于系統(tǒng)模型,在響應速度、穩(wěn)態(tài)精度及對干擾的抑制能力等方面均優(yōu)于常規(guī)pid,尤其適用于像電加熱爐系統(tǒng)這樣的非線性、大滯后且隨時干擾嚴重的系統(tǒng)。最后通過實驗室實驗進一步驗證了該控制器的控制效果。 本文研究結果證明:模糊控制在加熱爐中的應用是可行的,它可以極大的改善控制效果,在未來加熱爐的應用中具有極大的潛力。溫控制系統(tǒng)采用一種非線性補償?shù)木C合原理和
6、方法,這種方法能使系統(tǒng)自動地在兩種不同的特性曲線上切換運行,解決了普通溫度控制系統(tǒng)的動態(tài)溫度誤差與穩(wěn)態(tài)溫度誤差兩者之間的矛盾,而且結構簡單,實施容易。最后利用利用matlab對不同的控制算法進行了仿真實驗,發(fā)現(xiàn)基本pid控制最大的缺點就是控制器參數(shù)不能隨被控對象的改變而改變,因此不能滿足在高精度控制領域中時變系統(tǒng)的控制精度要求;而模糊控制以其魯棒性強,對參數(shù)變化不敏感等優(yōu)點已經(jīng)在多個領域有著廣泛的應用。為此將模糊推理引入到pid控制策略中,仿真試驗證明基于模糊推理的自適應pid控制算法提高了傳統(tǒng)pid算法的適應能力及控制精度。另外結合項目要求進行了控制系統(tǒng)的matlab的仿真實驗,并給出了仿真
7、結果,證明本文中所使用的模糊自適應pid控制算法和溫度系統(tǒng)設計的合理性和有效性。溫控制系統(tǒng)采用一種非線性補償?shù)木C合原理和方法,這種方法能使系統(tǒng)自動地在兩種不同的特性曲線上切換運行,解決了普通溫度控制系統(tǒng)的動態(tài)溫度誤差與穩(wěn)態(tài)溫度誤差兩者之間的矛盾,而且結構簡單,實施容易2 系統(tǒng)大體設計智能溫度控制的硬件設計方框圖如圖1,硬件系統(tǒng)包括單片機、溫度監(jiān)測電路、按鍵控制電路、時鐘電路、顯示部分、報警部分、驅動電路、外設內存和打印機。由于at89s51單片機,ds18b20溫度傳感器可以將被測信號轉化為數(shù)字信號,之后信號將送到單片機進行處理。最后,溫度值將會在lcd 12232f液晶顯示屏。這些步驟都是為
8、實現(xiàn)溫度監(jiān)測。按鍵接口芯片hd7279可用來設定溫度值,用單片機保持一定的溫度,用lcd顯示溫度控制值。此外,時鐘芯片ds1302用以顯示時間,外設內存6264和迷你打印機tpp-40/bc分別用來存儲和打印監(jiān)視數(shù)據(jù),當溫度超過或小于預先設定的溫度的最大、最小值時,蜂鳴器將報警。 3 硬件設計(1)單片機 at89s51單片機是一種低功耗,高性能的cmos8位,容量為4k,系統(tǒng)內置可編程閃存的微型控制器。該設備采用atmel的高集成度、非易失性內存技術,并與業(yè)界標準的80c51的指令系統(tǒng)和引腳相兼容。結合一片萬能8位cpu和系統(tǒng)內置可編程閃存在一片集成電路芯片上,這使atmel at89s51
9、單片機成為了一個能提供高靈活性和低能耗的嵌入式控制應用器件。單片機微型控制系統(tǒng)如圖2。此外,6264作為外設擴展內存以實現(xiàn)存儲監(jiān)測數(shù)據(jù),它是低功耗、8k容量的一片靜態(tài)隨機存取存儲器芯片。因為系統(tǒng)包括打印機,為了節(jié)省記憶空間和防止地址空間重疊,一片2-4譯碼器74ls139芯片接于系統(tǒng)。(2)溫度監(jiān)測電路溫度傳感器是系統(tǒng)的核心,達拉斯ds18b20溫度傳感器支持單總線接口,所有的傳感器部分和模數(shù)轉化電路都像晶體管一樣集成在一塊芯片。測量溫度的范圍為:-55125,其中-1085的精確度是0.5。由ds18b20溫度傳感器測量的溫度通過單接口總線傳輸,這樣提高了系統(tǒng)的抗干擾能力,使其可以在各種環(huán)境
10、下正常的工作。溫度監(jiān)測電路如圖3. ds18b20溫度傳感器有兩種供電方式。第一種是外設供電方式:ds18b20第一管腳接地;第二管腳作為信號線;第三管腳接電源。第二種是供電方式:此種供電方式有諸多不便,如 增加了硬件電路的復雜化,增大了軟件控制的難度,降低芯片工作功能等等。但是,ds18b20可以直接以外置電源的連接方式與單片機的i/o相接。因此,ds18b20第二管腳與at89s51單片機p1.3管腳相接,以實現(xiàn)外置電源。實際上,為了實現(xiàn)遠程控制,可以將系統(tǒng)設計成無線電模式,以突破單總線的距離的不足。(3)lcd電路 lcd 12232f可用來顯示字母、溫度值和時間,并提供一個友好的顯示屏
11、接口。12232f是一個可提供容量為8192個,像素為12832的漢字數(shù)據(jù)庫,和128個,像素為168,可以進行制圖學編碼的ascii碼。它主要包括:列和行的(驅動),以及12832像素的lcd,用以顯示圖形和7.52的漢字。12232f以串聯(lián)或并聯(lián)的形式與cpu相連,為了節(jié)省硬件的資源,12232f的四個輸出端與at89s51單片機串聯(lián)。電路的連接方式如圖4。 lcd液晶屏的灰度可以通過與lcd vlcd管腳相接的可調電位器調節(jié)。sid用以傳輸數(shù)據(jù),cs為lcd使能端,l+用以控制lcd背光燈。(4)時鐘電路dallas ds1302時鐘芯片是高性能、低能耗,帶隨機存取存儲器的時鐘芯片。ds
12、1302有日歷時鐘和調整時間的功能。時間數(shù)據(jù)被讀取并送到at89s51進行處理,然后在lcd上顯示。同時,時間可以用按鍵進行調整。時鐘電路如圖5所示。ds1302時鐘芯片的晶振頻率設定為32768hz,補償電容最好為6pf左右。晶振頻率比較低,所以可能不會與電容相連,但是不會對時間的精確度產(chǎn)生較大的影響。后備電源可以與3.6v充電電源相連接。(5)按鍵控制電路系統(tǒng)的按鍵接口由hd7279a驅動。hd7279a由5v單電源供電,而且無需任何外部驅動,直接與按鍵和顯示屏連接。根據(jù)系統(tǒng)的需求,實現(xiàn)其功能只需7個按鍵,系統(tǒng)的功能由at89s51單片機所接受數(shù)據(jù)決定。為了節(jié)省外部電阻,可用7個相同的按鍵
13、,其地址編碼分別為07h,0fh, 17h, 1fh, 27h, 2fh, 37h。此順序可由編碼說明獲得。hd7279a與at89s51以串聯(lián)形式連接,只用到4個端口。如圖6所示。dig0dig6和dp按鍵分別是行和列的輸入端口,其功能是實現(xiàn)按鍵的控制,譯碼鎖碼。(6)報警電路為了簡化電路和方便程序的調試,一個蜂鳴器用當充當報警裝置,這使得軟件編程更加簡單。如圖7所示,蜂鳴器由與at89s51單片機p1.2管腳連接的9012pnp三極管控制,當溫度超過或小于預先設定的溫度的最大、最小值時,p2.5輸出端口輸出低電平,使三極管導通,同時蜂鳴器報警工作。(7)驅動電路用步進電機作為溫度控制的驅動
14、裝置。四相八拍脈沖分配模式是用來驅動電機,而簡單的延時程序是用來處理脈沖之間的時間間隔,以獲得不同的轉速。步進電機共有兩種輸出狀態(tài)。一種是,當溫度超過設定最高溫度值時,電機反轉,以降低溫度。當溫度低于設定最低溫度值時,電機正傳,以升高溫度。除非不等于預設值。第二種是,當溫度達到兩值之間,等于預設值時,電機停止。通過這些步驟可以實現(xiàn)溫度控制。此外,可以用相應的按鍵調節(jié)電機的速度。如圖8所示,代碼數(shù)據(jù)由at89s51的a11a8口 (be p2.3p2.0)輸入。并且被逆變器74ls04反向輸出。最后被2803a功率放大器放大,以驅動電機。(8)打印機打印機接口電路用以連接打印機和at89s51,
15、打印監(jiān)測數(shù)據(jù)。系統(tǒng)采用比較流行的tpp-40b/打印機,這是由at89s51控制的超小型智能點陣打印機,每行可打印40個5 7點陣字符,具有豐富的打印命令,240種碼字符印刷和圖形功能。有一個鎖存器的輸入電路和輸出電路的三態(tài)門的功能,使打印機可以連接到數(shù)據(jù)總線的單片機at89s51的情況下直接接口電路。而對于這種類型的連接,只有查詢模式時使用打印機控制的單片機at89s51,也就是說它是忙的信號狀態(tài)查詢。該接口電路如圖9所示。 4 軟件設計按照總體設計要求和系統(tǒng)硬件硬件電路原理,硬件連接,每個模塊芯片和功能要求的特性,以及軟件可讀性的進步,可移植性和調試的方便,需要使軟件模塊化。系統(tǒng)流程主要包
16、括以下8個步驟:post(加電自檢),系統(tǒng)啟動,溫度檢測,報警處理,溫度控制,時鐘芯片ds1302的操作,液晶顯示和按鍵操作。主程序流程圖如圖10所示。分析一下上述的8個步驟,可以容易的發(fā)現(xiàn),后5個步驟是需要實時操作的。至于溫度的監(jiān)測,可以用定時器0定時1秒實現(xiàn),也就是每秒都進行溫度的監(jiān)測。系統(tǒng)的啟動包括,全局變量定義,ram啟動,特殊功能寄存器啟動以及外部設備啟動。全局變量的定義,主要是完成對與at89s51單片機連接的外部接口的定義,以及對內存單位特殊定義。ram啟動,開始主要是指ram的內存處理。例如,當系統(tǒng)通電時間碼將在內部單位地址或閃爍標志存儲的信息將被清除。特殊功能寄存器啟動包括加
17、載啟動定時器初值的開放中斷。例如,當系統(tǒng)通電定時器初始化。外部設備的啟動,是指設置外圍設備的初始值。例如,當系統(tǒng)通電后,lcd應該被初始化,顯示器應該啟動,溫度轉換命令必須先發(fā)出,時鐘芯片ds1302也要被初始化。報警處理主要是降低和提高溫度,使溫度保持在預設范圍內。當溫度保持在的設定范圍之間,即根據(jù)預設值,升高或降低溫度。這樣做,溫度等于設定值,從而達到控制溫度的目標。5 結論溫度控制系統(tǒng)具有以下優(yōu)點:高智能化,友好的人機交流界面,硬件簡單,成本低,溫度控制精度高(1c距離誤差),便利性和多功能性等,可廣泛使用-55至125范圍內的場合,且有一定的實用價值。6 參考文獻1 yu jin an
18、d yao yan, “temperature control system based on。ds18b20,” control & automation, vol. 25, no. 8, pp. 105,2009 (in chinese).2 li ping and zhou yucai, “a design of the temperature test system based on grouping ds18b20,” 2nd ieee conference on industrial electronics and applications, pp. 188189, may 200
19、7.3 huang xiaobo, “temperature monitored system based on at89s52,single-chip computer and ds18b20 temperature sensor,” control& automation, vol. 24, no. 29, pp. 120, 2008 (in chinese).4 lou ranmiao and li guangfei, “course design guidelines of single chip microcomputer,” beijing: beijing university
20、of aeronautics and astronautics press, 2007, pp. 60 (in chinese).5 mou huajian and chen xuehuang, “realization of lcd definitioncharacter function,” modern electronics technique, vol.29, no. 21, pp. 154, 2006 (in chinese).6 liu lvshan, liu jianqun and li shiyong, “temperature controlsystem based on
21、at89s52 single chip microcomputer,” control& automation, vol. 23, no. 17, pp. 99, 2007 (in chinese).7 dong limei, wang fei and wang haisong, “temperaturemeasurement and alarm system based on scm at89s52,”control& automation, vol. 25, no. 11, pp. 125, 2009 (in chinese).基于52單片機的地下煤礦溫度控制裝置設計qingdong wa
22、ngschool of mechanical and electrical engineeringhebei university of engineeringhandan, china2009 2nd international conference on power electronics and intelligent transportation system摘要:煤礦下的溫度是一個非常重要的技術指標,特別是對于礦井下工作人員來說。人們有必要設計一種溫度控制和調節(jié)的系統(tǒng)去有效地監(jiān)控溫度。溫度值依行在led液晶屏上顯示。當溫度值達到額定最大溫度時,由mcu控制,并與調節(jié)裝置連接的繼電器將
23、工作。溫度信號和控制信息將由nrf9o5無線電信號傳輸模塊傳送。系統(tǒng)由傳感器控制部分和溫度值顯示部分組成??刂频某绦驅⒒趥鞲衅鞯膫鬏攨f(xié)議編寫。無線電數(shù)據(jù)傳輸?shù)某绦驅⒈辉诟鱾€數(shù)據(jù)傳輸模塊之間調試。如果煤礦下的溫度不正常,報警系統(tǒng)將會給工作人員提供可靠的信息。這樣,煤礦溫度的監(jiān)控將得以實現(xiàn)。關鍵詞:溫度傳感器 ds18b2o、at89s52單片機、nrf9o5、煤礦溫度控制1 簡介礦井下的環(huán)境非常惡劣,任何意外隨時都可能發(fā)生。因此,為了保證礦井下的安全生產(chǎn),人們需要隨時監(jiān)測井下的各種參數(shù),例如:溫度、壓力、瓦斯?jié)舛取L速等。及時的監(jiān)控溫度是保證井下安全作業(yè)和生產(chǎn)的重要因素。此外,為了保證測量的準
24、確性,超聲波測距技術常常被應用在煤礦作業(yè)中。這同樣也需要相當準確的溫度監(jiān)測技術。傳統(tǒng)溫度監(jiān)測技術僅僅由獨立的傳感器完成,其缺陷如下:較慢的反應速度、較高的監(jiān)測錯誤率、復雜的安裝過程和程序調式,以及長距離信息傳輸。本文將用ds18b2o溫度傳感器和at89s52單片機實現(xiàn)智能溫度監(jiān)測和調節(jié)。兩者結合可實現(xiàn)以下功能:數(shù)字計算,直接輸出監(jiān)測溫度的數(shù)字信號,低溫度監(jiān)測錯誤率、高溫度分辨率、較強的抗干擾能力、長距離信息傳輸精確。相比于傳統(tǒng)的溫度監(jiān)測技術,單片機溫度監(jiān)測技術將實現(xiàn)溫度數(shù)據(jù)的儲存與分析,遠程信息傳輸?shù)鹊裙δ堋s18b2o系列溫度傳感器是美國達拉斯公司成產(chǎn)的數(shù)字溫度傳感器。2 單片機介紹單片
25、機也被稱為微控制器(microcontroller),是因為它最早被用在工業(yè)控制領域。單片機由芯片內僅有cpu的專用處理器發(fā)展而來。最早的設計理念是通過將大量外圍設備和cpu集成在一個芯片中,使計算機系統(tǒng)更小,更容易集成復雜的而對提及要求嚴格的控制設備當中。intel的z80是最早按照這種思想設計出的處理器,從此以后,單片機和專用處理器的發(fā)展便分道揚鑣。 早期的單片機都是8位或4位的。其中最成功的是intel的8031,因為簡單可靠而性能不錯獲得了很大的好評。此后在8031上發(fā)展出了mcs51系列單片機系統(tǒng)?;谶@一系統(tǒng)的單片機系統(tǒng)直到現(xiàn)在還在廣泛使用。隨著工業(yè)控制領域要求的提高,開始出現(xiàn)了1
26、6位單片機,但因為性價比不理想并未得到很廣泛的應用。90年代后隨著消費電子產(chǎn)品大發(fā)展,單片機技術得到了巨大的提高。隨著intel i960系列特別是后來的arm系列的廣泛應用,32位單片機迅速取代16位單片機的高端地位,并且進入主流市場。而傳統(tǒng)的8位單片機的性能也得到了飛速提高,處理能力比起80年代提高了數(shù)百倍。目前,高端的32位單片機主頻已經(jīng)超過300mhz,性能直追90年代中期的專用處理器,而普通的型號出廠價格跌落至1美元,最高端的型號也只有10美元。當代單片機系統(tǒng)已經(jīng)不再只在裸機環(huán)境下開發(fā)和使用,大量專用的嵌入式操作系統(tǒng)被廣泛應用在全系列的單片機上。而在作為掌上電腦和手機核心處理的高端單
27、片機甚至可以直接使用專用的windows和linux操作系統(tǒng)。 8051單片機由運算器、控制器、寄存器等組成。運算器以完成二進制的算術/邏輯運算部件alu為核心,再加上暫存器tmp、累加器acc、寄存器b、程序狀態(tài)標志寄存器psw及布爾處理器。累加器acc是一個八位寄存器,它是cpu中工作最頻繁的寄存器。在進行算術、邏輯運算時,累加器acc往往在運算前暫存一個操作數(shù)(如被加數(shù)),而運算后又保存其結果(如代數(shù)和)。寄存器b主要用于乘法和除法操作。標志寄存器psw也是一個八位寄存器,用來存放運算結果的一些特征,如有無進位、借位等。其每位的具體含意如下所示。psw cy ac fo rs1 rs0
28、ovp對用戶來講,最關心的是以下四點。1. 進位標志cy(psw7)。它表示了運算是否有進位(或借位)。如果操作結果在最高位有進位(加法)或者借位(減法),則該位為1,否則為0。2.2. 輔助進位標志ac。又稱半進位標志,它反映了兩個八位數(shù)運算低四位是否有半進位,即低四位相加(或減)有否進位(或借位),如有則ac為1狀態(tài),否則為0。3. 溢出標志位ov。mcs1反映帶符號數(shù)的運算結果是否有溢出,有溢出時,此位為1,否則為0。4. 奇偶標志p。反映累加器acc內容的奇偶性,如果acc中的運算結果有偶數(shù)個1(如11001100b,其中有4個1),則p為0,否則,p=1。psw的其它位,將在以后再介
29、紹。由于psw存放程序執(zhí)行中的狀態(tài),故又叫程序狀態(tài)字,運算器中還有一個按位(bit)進行邏輯運算的邏輯處理機(又稱布爾處理機)。其功能在介紹位指令時再說明。關于控制器,控制器是cpu的神經(jīng)中樞,它包括定時控制邏輯電路、指令寄存器、譯碼器、地址指針dptr及程序計數(shù)器pc、堆棧指針sp等。這里程序計數(shù)器pc是由16位寄存器構成的計數(shù)器。要單片機執(zhí)行一個程序,就必須把該程序按順序預先裝入存儲器rom的某個區(qū)域。單片機動作時應按順序一條條取出指令來加以執(zhí)行。因此,必須有一個電路能找出指令所在的單元地址,該電路就是程序計數(shù)器pc。當單片機開始執(zhí)行程序時,給pc裝入第一條指令所在地址,它每取出一條指令(
30、如為多字節(jié)指令,則每取出一個指令字節(jié)),pc的內容就自動加1,以指向下一條指令的地址,使指令能順序執(zhí)行。只有當程序遇到轉移指令、子程序調用指令,或遇到中斷時,pc才轉到所需要的地方去。8051 cpu指定的地址,從rom相應單元中取出指令字節(jié)放在指令寄存器中寄存,然后,指令寄存器中的指令代碼被譯碼器譯成各種形式的控制信號,這些信號與單片機時鐘振蕩器產(chǎn)生的時鐘脈沖在定時與控制電路中相結合,形成按一定時間節(jié)拍變化的電平和時鐘,即所謂控制信息,在cpu內部協(xié)調寄存器之間的數(shù)據(jù)傳輸、運算等操作。再來介紹一下存儲器,存儲器是單片機的又一個重要組成部分,有一種存儲容量為256個單元的存儲器結構。其中每個存
31、儲單元對應一個地址,256個單元共有256個地址,用兩位16進制數(shù)表示,即存儲器的地址(00hffh)。存儲器中每個存儲單元可存放一個八位二進制信息,通常用兩位16進制數(shù)來表示,這就是存儲器的內容。存儲器的存儲單元地址和存儲單元的內容是不同的兩個概念,不能混淆。單片機還包括程序存儲器。程序是控制計算機動作的一系列命令,單片機只認識由“0”和“1”代碼構成的機器指令。如前述用助記符編寫的命令mov a,#20h,換成機器認識的代碼74h、20h:(寫成二進制就是01110100b和00100000b)。在單片機處理問題之前必須事先將編好的程序、表格、常數(shù)匯編成機器代碼后存入單片機的存儲器中,該存
32、儲器稱為程序存儲器。程序存儲器可以放在片內或片外,亦可片內片外同時設置。由于pc程序計數(shù)器為16位,使得程序存儲器可用16位二進制地址,因此,內外存儲器的地址最大可從0000h到ffffh。8051內部有4k字節(jié)的rom,就占用了由0000h0fffh的最低4k個字節(jié),這時片外擴充的程序存儲器地址編號應由1000h開始,如果將8051當做8031使用,不想利用片內4krom,全用片外存儲器,則地址編號仍可由0000h開始。不過,這時應使用ea腳,保持低電平。當ea為高電平時,用戶在0000h至0fffh范圍內使用內部rom,大于0fffh后,單片機cpu自動訪問外部程序存儲器。單片機的數(shù)據(jù)存儲
33、器由讀寫存儲器ram組成。其最大容量可擴展到64k,用于存儲實時輸入的數(shù)據(jù)。8051內部有256個單元的內部數(shù)據(jù)存儲器,其中00h7fh為內部隨機存儲器ram,80hffh為專用寄存器區(qū)。實際使用時應首先充分利用內部存儲器,從使用角度講,搞清內部數(shù)據(jù)存儲器的結構和地址分配是十分重要的。因為將來在學習指令系統(tǒng)和程序設計時會經(jīng)常用到它們。8051內部數(shù)據(jù)存儲器地址由00h至ffh共有256個字節(jié)的地址空間,該空間被分為兩部分,其中內部數(shù)據(jù)ram的地址為00h7fh(即0127)。而用做特殊功能寄存器的地址為80hffh。在此256個字節(jié)中,還開辟有一個所謂“位地址”區(qū),該區(qū)域內不但可按字節(jié)尋址,還
34、可按“位(bit)”尋址。對于那些需要進行位操作的數(shù)據(jù),可以存放到這個區(qū)域。從00h到1fh安排了四組工作寄存器,每組占用8個ram字節(jié),記為r0r7。究竟選用那一組寄存器,由前述標志寄存器中的rs1和rs0來選用。在這兩位上放入不同的二進制數(shù),即可選用不同的寄存器組。特殊功能寄存器(sfr)的地址范圍為80hffh。在mcs51中,除程序計數(shù)器pc和四個工作寄存器區(qū)外,其余21個特殊功能寄存器都在這sfr塊中。其中5個是雙字節(jié)寄存器,它們共占用了26個字節(jié)。各特殊功能寄存器的符號和地址。其中帶*號的可位尋址。特殊功能寄存器反映了8051的狀態(tài),實際上是8051的狀態(tài)字及控制字寄存器。用于cp
35、u psw便是典型一例。這些特殊功能寄存器大體上分為兩類,一類與芯片的引腳有關,另一類作片內功能的控制用。與芯片引腳有關的特殊功能寄存器是p0p3,它們實際上是4個8位鎖存器(每個i/o口一個),每個鎖存器附加有相應的輸出驅動器和輸入緩沖器就構成了一個并行口。mcs51共有p0p3四個這樣的并行口,可提供32根i/o線,每根線都是雙向的,并且大都有第二功能。其余用于芯片控制的寄存器中,累加器a、標志寄存器psw、數(shù)據(jù)指針dptr等的功能前已提及。下面再來談論如何讓單片機如何正常工作。單片機要正常運作,事先需編制程序,再把程序放入存貯器中,然后由cpu執(zhí)行該程序。程序是由指令組成的,指令的基本組
36、成是操作碼和操作數(shù)。單片機的品種很多,設計時怎樣表示操作碼和操作數(shù),都有各自的規(guī)定,再有指令代碼也各不相同,因此,必須對所選單片機的全部指令,也就是所謂“指令系統(tǒng)”,有足夠的了解。各個系列的單片機雖然有不同的指令系統(tǒng),但也有其共同性。掌握一種單片機的指令系統(tǒng),對其它系列單片機可以起到觸類旁通的作用。mcs51單片機應用廣泛、派生品種多、具有代表性。所以,這里以mcs51系列的指令系統(tǒng)為例說明“指令”的組成和應用。例子1,mov a,#20h:這條指令表示把20h這個數(shù)送入累加器a中(一個特殊功能寄存器)。例子2,add a,70h:這條指令表示把累加器a中的內容(在上例中送入的#20h)和存貯
37、器中地址為70h單元中的內容(也是一個數(shù)字),通過算術邏輯單元(英文縮寫為alu)相加,并將結果保留在a中。這里mov、add等稱為操作碼,而a、#20h、70h等均稱為操作數(shù)。在匯編語言程序中,操作碼通常由英文單詞縮寫而成,這樣有助于記憶,所以又稱助記符。如mov就是英文單詞move的縮寫,含有搬移的意思;而add即為英文單詞,其意為相加。因此,對于略懂英語的用戶,掌握單片機指令的含意是較為方便的。操作數(shù)有多種表示法,如以上的#20h稱為立即數(shù),即20h就是真正的操作數(shù)。而70h是存貯器中某個單元的地址,在該單元中,放著操作數(shù)(比如說是3ah),adda,70h不是將70h和a中的內容相加,
38、而是從存貯器70h單元中將3ah取出和a中的內容相加。由上可知,要找到實際操作數(shù),有時就要轉個彎,甚至轉幾個彎,這個過程稱為尋址4:操作數(shù)放在ram某個單元中,該單元的地址又放在寄存器r0或r1中。 如果ram的地址大于256,則該地址存放在16位寄存器dptr(數(shù)據(jù)指針)中,此時在寄存器名前加符號來表示這種間接尋址。如mov a, r0。其它還有變址尋址、相對尋址、位尋址等,待以后再詳細介紹。可能有人會問,在指令中直接給出實際操作數(shù),不是簡單明了嗎?為什么還要用其它幾種尋址方式呢?這是因為在編制程序時很難一下子就給出操作數(shù)。如用單片機控制溫度時,時時需要將給定的控制溫度(如20)減去環(huán)境溫度
39、,而環(huán)境溫度時時有變化,顯然無法在程序指令中給出,只有通過一定方式,將其送入某個輸入/輸出口,再存放在某個寄存器中,這就必須用到寄存器尋址。又如要進行算術運算,要計算每班學員各科成績的平均值,如果把每個學員的各科都編一個程序,在程序中直接給出該學員各科成績,再求平均值,顯然太麻煩。這里可以編一個求平均成績的通用程序,把每位學員的成績送入存貯器的各個單元中,這時可采取直接尋址,一個程序可供每個學員用,不是更方便嗎?所以,尋址方式越多,編制程序就越方便、靈活,適用范圍就越廣,尋址有如找人,如被找的人有手機、bp機、座機電話等多種聯(lián)系方式則就容易找到他,單片機也是如此,尋址方式越多,找操作數(shù)越方便,
40、單片機的功能就越強。前面介紹51系列單片機的尋址方式時,常遇到單片機內部的一些寄存器、累加器a、通用寄存器r0r7、數(shù)據(jù)指針dptr和存貯器等。在以后介紹指令時,數(shù)據(jù)就要在這些寄存器、存貯器之間傳送,或者進行運算。因此,編制程序就需熟悉單片機的內部結構。8051單片機的內部總體結構其基本特性:8位cpu、片內振蕩器、4k字節(jié)rom、128字節(jié)ram、21個特殊功能寄存器、32根i/o線可尋址的64k字節(jié)外部數(shù)據(jù)、程序存貯空間、2個16位定時器、計數(shù)器,中斷結構:具有二個優(yōu)先級、五個中斷源、一個全雙口串行口位尋址(即可尋找某位的內容)功能,適于按位進行邏輯運算的位處理器。除128字節(jié)ram、4k
41、字節(jié)rom和中斷、串行口及定時器模塊外,還有4組i/o口p0p3,余下的就是cpu的全部組成。把4krom換為eprom就是8751的結構,如去掉rom/eprom部分即為8031的框圖,如果將rom置換為flash存貯器或eeprom,或再省去某些i/o,即可得到51系列的派生品種,如89c51、at89c2051等單片機的框圖。單片機各部分是通過內部的總線有機地連接起來的。3 溫度控制系統(tǒng)的硬件設計裝置由ds18b2o系列溫度傳感器,at89s52單片機、顯示模塊和繼電器控制模塊。主要硬件框架圖見圖(1) ds18b20 數(shù)字溫度計提供 9-12位攝氏溫度測量而且有一個由高低電平觸發(fā)的可編
42、程的不因電源消失而改變的報警功能。ds18b20 通過一個單線接口發(fā)送或接受信息,因此在中央處理器和 ds18b20 之間僅需一條連接線(加上地線)。它的測 溫范圍為-55125,并且在-1085精度為5。除此之外,ds18b20 能直接從單線通訊線上汲取能量,除去了對外部電源的需求。每個ds18b20都有一個獨特的64位序列號,從而允許多只 ds18b20 同時連在 一根單線總線上;因此,很簡單就可以用一個微控制器去控制很多覆蓋在一大片 區(qū)域的 ds18b20。這一特性在 hvac 環(huán)境控制、探測建筑物、儀器或機器的溫度以及過程監(jiān)測和控制等方面非常有用。圖 1 是表示 ds18b20 的方框
43、圖,表 1 已經(jīng)給出了引腳說明。64 位只讀存儲器儲 存器件的唯一片序列號。高速暫存器含有兩個字節(jié)的溫度寄存器,這兩個寄存器 用來存儲溫度傳感器輸出的數(shù)據(jù)。除此之外,高速暫存器提供一個直接的溫度報 警值寄存器(th 和 tl),和一個字節(jié)的的配置寄存器。配置寄存器允許用戶將溫 度的精度設定為 9,10,11 或 12 位。th,tl 和配置寄存器是非易失性的可擦除 程序寄存器(eeprom),所以存儲的數(shù)據(jù)在器件掉電時不會消失。ds18b20通過達拉斯公司獨有的單總線協(xié)議依靠一個單線端口通訊。當全部器件 經(jīng)由一個3態(tài)端口或者漏極開路端口(dq引腳在ds18b20上的情況下)與總線連接 的時候,
44、控制線需要連接一個弱上拉電阻。在這個總線系統(tǒng)中,微控制器(主器 件)依靠每個器件獨有的64位片序列號辨認總線上的器件和記錄總線上的器件地 址。 由于每個裝置有一個獨特的片序列碼,總線可以連接的器件數(shù)目事實上是無 限的。單總線協(xié)議,包括指令的詳細解釋和“時序”單總線系統(tǒng)。ds18b20的另一個功能是可以在沒有外部電源供電的情況下工作。當總線處于高 電平狀態(tài),dq與上拉電阻連接通過單總線對器件供電。同時處于高電平狀態(tài)的總 線信號對內部電容(cpp)充電,在總線處于低電平狀態(tài)時,該電容提供能量給器件。這種提供能量的形式被稱為“寄生電源”。作為替代選擇,ds18b20同樣可以通過vdd引腳連接外部電源
45、供電。 引腳說明gnd地 dq數(shù)據(jù) i/o 對于單線操作: 漏極開路。當工作在寄生電源模式時 用來提供電源(建“寄生電源”節(jié))。vdd可選電源電壓nc無連接單總線信號ds18b20 需要嚴格的單總線協(xié)議以確保數(shù)據(jù)的完整性。協(xié)議包括集中單總線信號 類型:復位脈沖、存在脈沖、寫 0、寫 1、讀 0 和讀 1。所有這些信號,除存在 脈沖外,都是由總線控制器發(fā)出的。復位序列:復位和存在脈沖ds18b20 間的任何通訊都需要以初始化序列開始,初始化序列見圖 13。一個復位脈沖跟著一個存在脈沖表明 ds18b20 已經(jīng)準備好發(fā)送和接收數(shù)據(jù)。在初始化序列期間,總線控制器拉低總線并保持 480us 以發(fā)出(t
46、x)一個復位脈 沖,然后釋放總線,進入接收狀態(tài)(rx)。單總線由 5k 上拉電阻拉到高電平。當 ds18b20 探測到 i/o 引腳上的上升沿后,等待 15-60us,然后發(fā)出一個由 60-240us 低電平信號構成的存在脈沖。讀/寫時序ds18b20 的數(shù)據(jù)讀寫是通過時序處理位來確認信息交換的。寫時序由兩種寫時序:寫1時序和寫 0 時序。總線控制器通過寫 1 時序寫邏輯 1 到 ds18b20,寫 0 時序寫邏輯 0 到 ds18b20。所有寫時序必須最少持續(xù) 60us,包括 兩個寫周期之間至少 1us 的恢復時間。當總線控制器把數(shù)據(jù)線從邏輯高電平拉到 低電平的時候,寫時序開始(見圖14)。總線控制器要生產(chǎn)一個寫時序,必須把數(shù)據(jù)線拉到低電平然后釋放,在寫時序開 始后的 15us 釋放總線。當總線被釋放的時候,5k 的上拉電阻將拉高總線。總控 制器要生成一個寫 0 時序,必須把數(shù)據(jù)線拉到低電平并持續(xù)保持(至少 60us)??偩€控制器初始化寫時序后,ds18b20 在一個 15us 到 60us 的窗口內對 i/o 線采樣。如果線上是高電平,就是寫 1。如果線上是低電平,就是寫 0。 ds18b2o系列溫度傳感器將溫度模擬量轉化為帶正負號的數(shù)字量(由16位補碼表示,容量2字符),輸出管腳直接與單片機p1.2相連,ri為上拉電阻,傳感器使用外置電源供電。p1.7
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 有機蔬菜怎樣種植
- 品牌策劃與營銷策略培訓材料
- 電子商務物流時效分析對比表
- 婚姻考題復習試題含答案
- 三農(nóng)信息采集與共享平臺建設方案
- 農(nóng)業(yè)資源整合與可持續(xù)發(fā)展解決方案
- 出版行業(yè)數(shù)字化內容管理系統(tǒng)設計
- 高效辦公實踐教程
- 通訊設備業(yè)5G基站建設與維護管理方案
- 農(nóng)業(yè)科技精準種植與養(yǎng)殖技術推廣方案
- X年綠城項目管理手冊綜合運營篇(新項目公司指引)
- 精神病學簡答題(溫州醫(yī)學院題庫)
- 支撐滲溝施工技術交底
- 上海交通大學有機化學課件第二章烷烴
- 數(shù)據(jù)采集及數(shù)據(jù)采集系統(tǒng)PPT課件
- DB34∕T 3968-2021 橋梁健康監(jiān)測系統(tǒng)運營維護與管理規(guī)范
- 加氣混凝土砌塊砌筑規(guī)范標準[詳]
- 挖掘機部件英語對照表
- 天然氣次高壓管線工程焊接施工方案和措施
- 項目量產(chǎn)移交點檢表
- 十三五全國眼健康規(guī)劃(2016-2020年)終期自評報告
評論
0/150
提交評論