單片機智能溫度控制系統(tǒng)-畢業(yè)論文_第1頁
單片機智能溫度控制系統(tǒng)-畢業(yè)論文_第2頁
單片機智能溫度控制系統(tǒng)-畢業(yè)論文_第3頁
單片機智能溫度控制系統(tǒng)-畢業(yè)論文_第4頁
單片機智能溫度控制系統(tǒng)-畢業(yè)論文_第5頁
已閱讀5頁,還剩61頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

摘要溫度是日常生活中無時不在的物理量,溫度的控制在各個領域都有積極的意義。很多行業(yè)中都有大量的用電加熱設備,如用于熱處理的加熱爐,用于融化金屬的坩鍋電阻爐及各種不同用途的溫度箱等,采用單片機對它們進行控制不僅具有控制方便、簡單、靈活性大等特點,而且還可以大幅度提高被控溫度的技術指標,從而能夠大大提高產(chǎn)品的質量。因此,智能化溫度控制技術正被廣泛地采用。本溫度設計采用現(xiàn)在流行的AT89S52單片機,配以DS18B20數(shù)字溫度傳感器,該溫度傳感器可自行設置溫度上下限。單片機將檢測到的溫度信號與輸入的溫度上、下限進行比較,由此作出判斷是否啟動繼電器以開啟設備。本設計還加入了常用的數(shù)碼管顯示及狀態(tài)燈顯示燈常用電路,使得整個設計更加完整,更加靈活。關鍵詞:單片機應用;溫度采集控制;DS18B20應用;TemperaturecontrolsystemusedsinglechipcomputerAbstractThetemperatureisconstantlyinthedailylifeofphysicalandtemperaturecontrolsinvariousfieldshaveapositivemeaning.Alotofbusinesseshavealotofpowerheatingequipment,suchasthatusedfortheheattreatmentfurnace,formeltingmetalcrucibleresistanceheatersandthevarioususesoftemperaturebins,SCMusingtheirrighttocontrolnotonlyeasytocontrol,simple,suchasthecharacteristicsofflexibility,butcanalsosignificantlyincreasethetemperaturewaschargedwiththetechnicalindicators,whichcangreatlyenhancethequalityoftheproducts.Therefore,intelligenttemperaturecontroltechnologyisbeingwidelyadopted.ThetemperaturewasdesignedwiththenowpopularAT89S52SCM,andwithDS18B20digitaltemperaturesensor,Thetemperaturesensorcansetuptheirowntemperaturecollars.SCMwilldetectthatthetemperatureoftheinputsignalandtemperature,thelowercomparisonsthisjudgmentwhethertoactivatetherelaytoopentheequipment.Thedesignalsoincludescommonlyuseddigitaldisplayandcontrolstatelightscommonlyusedcircuit,makingthewholedesignmorecomplete,moreflexible.Thedesignhasbeenappliedtosomeone,tosomeoneintelligenttemperaturecontrol.Keyword:Microcomputerapplications;temperatureacquisitionandcontrol;DS18B20application目錄TOC\o"1-2"\u摘要 I1引言 11.1溫度控制系統(tǒng)設計的背景、發(fā)展歷史及意義 11.2溫度控制系統(tǒng)的目的 11.3溫度控制系統(tǒng)完成的功能 22總體設計方案 32.1方案一 32.2方案二 33核心控制器的設計 63.1芯片的主要性能 63.2功能特性描述 74顯示模塊的設計 74.1數(shù)碼管結構以及工作原理 84.2動態(tài)顯示 85溫度采集模塊的設計 85.1溫度傳感器的歷史及簡介 85.2DS18B20的工作原理 95.3DS18B20的測溫原理 126串行通信模塊設計 156.1串口通信結構 156.2串口通信的工作原理 156.3MAX232簡介 167單片機接口設計 177.1設計原則 177.2引腳連接 178系統(tǒng)整體設計 198.1系統(tǒng)硬件電路設計 198.2系統(tǒng)軟件設計 239結束語 30參考文獻 31致謝 32附錄1 33附錄2 34附錄3 41PAGEPAGE321引言1.1溫度控制系統(tǒng)設計的背景、發(fā)展歷史及意義隨著社會的發(fā)展,科技的進步,以及測溫儀器在各個領域的應用,智能化已是現(xiàn)代溫度控制系統(tǒng)發(fā)展的主流方向。特別是近年來,溫度控制系統(tǒng)已應用到人們生活的各個方面,但溫度控制一直是一個未開發(fā)的領域,卻又是與人們息息相關的一個實際問題。針對這種實際情況,設計一個溫度控制系統(tǒng),具有廣泛的應用前景與實際意義。溫度是科學技術中最基本的物理量之一,物理、化學、生物等學科都離不開溫度。在工業(yè)生產(chǎn)和實驗研究中,像電力、化工、石油、冶金、航空航天、機械制造、糧食存儲、酒類生產(chǎn)等領域內(nèi),溫度常常是表征對象和過程狀態(tài)的最重要的參數(shù)之一。比如,發(fā)電廠鍋爐的溫度必須控制在一定的范圍之內(nèi);許多化學反應的工藝過程必須在適當?shù)臏囟认虏拍苷_M行;煉油過程中,原油必須在不同的溫度和壓力條件下進行分餾才能得到汽油、柴油、煤油等產(chǎn)品。沒有合適的溫度環(huán)境,許多電子設備就不能正常工作,糧倉的儲糧就會變質霉爛,酒類的品質就沒有保障。因此,各行各業(yè)對溫度控制的要求都越來越高。可見,溫度的測量和控制是非常重要的。單片機在電子產(chǎn)品中的應用已經(jīng)越來越廣泛,在很多的電子產(chǎn)品中也用到了溫度檢測和溫度控制。隨著溫度控制器應用范圍的日益廣泛和多樣,各種適用于不同場合的智能溫度控制器應運而生。1.2溫度控制系統(tǒng)的目的本設計的內(nèi)容是溫度測試控制系統(tǒng),控制對象是溫度。溫度控制在日常生活及工業(yè)領域應用相當廣泛,比如溫室、水池、發(fā)酵缸、電源等場所的溫度控制。而以往溫度控制是由人工完成的而且不夠重視,其實在很多場所溫度都需要監(jiān)控以防止發(fā)生意外。針對此問題,本系統(tǒng)設計的目的是實現(xiàn)一種可連續(xù)高精度調溫的溫度控制系統(tǒng),它應用廣泛,功能強大,小巧美觀,便于攜帶,是一款既實用又廉價的控制系統(tǒng)。1.3溫度控制系統(tǒng)完成的功能本設計是對溫度進行實時監(jiān)測與控制,設計的溫度控制系統(tǒng)實現(xiàn)了基本的溫度控制功能:當溫度低于設定下限溫度時,系統(tǒng)自動啟動加熱繼電器加溫,使溫度上升,同時綠燈亮。當溫度上升到下限溫度以上時,停止加溫;當溫度高于設定上限溫度時,系統(tǒng)自動啟動風扇降溫,使溫度下降,同時紅燈亮。當溫度下降到上限溫度以下時,停止降溫。溫度在上下限溫度之間時,執(zhí)行機構不執(zhí)行。數(shù)碼管即時顯示溫度,精確到小數(shù)點一位。2總體設計方案2.1方案一測溫電路的設計,可以使用熱敏電阻之類的器件利用其感溫效應,在將隨被測溫度變化的電壓或電流采集過來,進行A/D轉換后,就可以用單片機進行數(shù)據(jù)的處理,在顯示電路上,就可以將被測溫度顯示出來,這種設計需要用到A/D轉換電路,感溫電路比較麻煩。2.2方案二考慮使用溫度傳感器,結合單片機電路設計,采用一只DS18B20溫度傳感器,直接讀取被測溫度值,之后進行轉換,依次完成設計要求。比較以上兩種方案,很容易看出,采用方案二,電路比較簡單,軟件設計容易實現(xiàn),故實際設計中擬采用方案二。在本系統(tǒng)的電路設計方框圖如圖1.1所示,它由三部分組成:①控制部分主芯片采用單片機AT89S52;②顯示部分采用4位LED數(shù)碼管以動態(tài)掃描方式實現(xiàn)溫度顯示;③溫度采集部分采用DS18B20溫度傳感器。加熱繼電器電風扇繼電器單片機加熱繼電器電風扇繼電器單片機DS18B20LED顯示指示燈PC機PC機圖2-1溫度計電路總體設計方案控制部分單片機AT89S52具有低電壓供電和體積小等特點,四個端口只需要兩個口就能滿足電路系統(tǒng)的設計需要,很適合便攜手持式產(chǎn)品的設計使用,系統(tǒng)應用三節(jié)電池供電。2.顯示部分顯示電路采用4位共陽LED數(shù)碼管。3.溫度采集部分DS18B20溫度傳感器是美國DALLAS半導體公司最新推出的一種改進型智能溫度傳感器,與傳統(tǒng)的熱敏電阻等測溫元件相比,它能直接讀出被測溫。這一部分主要完成對溫度信號的采集和轉換工作,由DS18B20數(shù)字溫度傳感器及其與單片機的接口部分組成。數(shù)字溫度傳感器DS18B20把采集到的溫度通過數(shù)據(jù)引腳傳到單片機的P1.0口,單片機接受溫度并存儲。此部分只用到DS18B20和單片機,硬件很簡單(1)DS18B20的性能特點如下:1)獨特的單線接口僅需要一個端口引腳進行通信;2)多個DS18B20可以并聯(lián)在惟一的三線上,實現(xiàn)多點組網(wǎng)功能;3)無須外部器件;4)可通過數(shù)據(jù)線供電,電壓范圍為3.0~5.5V;5)零待機功耗;6)溫度以3位數(shù)字顯示;7)用戶可定義報警設置;8)報警搜索命令識別并標志超過程序限定溫度(溫度報警條件)的器件;9)負電壓特性,電源極性接反時,溫度計不會因發(fā)熱而燒毀,但不能正常工作。(2)DS18B20的內(nèi)部結構DS18B20采用3腳PR-35封裝,如圖2-2所示;DS18B20的內(nèi)部結構,如圖2-3所示。圖2-2DS18B20封裝(3)DS18B20內(nèi)部結構主要由四部分組成:1)64位光刻ROM。開始8位是產(chǎn)品類型的編號,接著是每個器件的惟一的序號,共有48位,最后8位是前56位的CRC校驗碼,這也是多個DS18B20可以采用一線進行通信的原因。2)非揮發(fā)的溫度報警觸發(fā)器TH和TL,可通過軟件寫入用戶報警上下限值。3)高速暫存存儲,可以設置DS18B20溫度轉換的精度。CRC的產(chǎn)生3核心控制器的設計3.1芯片的主要性能與MCS-51單片機產(chǎn)品兼容、8K字節(jié)在系統(tǒng)可編程Flash存儲器、1000次擦寫周期、全靜態(tài)操作:0Hz~33MHz、三級加密程序存儲器、32個可編程I/O口線、三個16位定時器/計數(shù)器八個中斷源、全雙工UART串行通道、低功耗空閑和掉電模式、掉電后中斷可喚醒、看門狗定時器、雙數(shù)據(jù)指針、掉電標識符。3.2功能特性描述AT89S52是一種低功耗、高性能CMOS8位微控制器,具有8K在系統(tǒng)可編程Flash存儲器。使用Atmel公司高密度非易失性存儲器技術制造,與工業(yè)80C51產(chǎn)品指令和引腳完全兼容。片上Flash允許程序存儲器在系統(tǒng)可編程,亦適于常規(guī)編程器。在單芯片上,擁有靈巧的8位CPU和在系統(tǒng)可編程Flash,使得AT89S52為眾多嵌入式控制應用系統(tǒng)提供高靈活、超有效的解決方案。AT89S52具有以下標準功能:8k字節(jié)Flash,256字節(jié)RAM,32位I/O口線,看門狗定時器,2個數(shù)據(jù)指針,三個16位定時器/計數(shù)器,一個6向量2級中斷結構,全雙工串行口,片內(nèi)晶振及時鐘電路。另外,AT89S52可降至0Hz靜態(tài)邏輯操作,支持2種軟件可選擇節(jié)電模式。空閑模式下,CPU停止工作,允許RAM、定時器/計數(shù)器、串口、中斷繼續(xù)工作。掉電保護方式下,RAM內(nèi)容被保存,振蕩器被凍結,單片機一切工作停止,直到下一個中斷或硬件復位為止。4顯示模塊的設計為了清楚地了解DS18B20的工作情況,設計了此顯示模塊,也有利于數(shù)據(jù)傳輸?shù)臏蚀_性驗證。4.1數(shù)碼管結構以及工作原理常用的數(shù)碼管顯示器為8段,每一段對應一個發(fā)光二極管,分為共陽和共陰兩種。共陰極LED顯示的發(fā)光二極管的陰極連接在一起,通常此公共陰極接地。當發(fā)光二極管的陽極為高電平時,發(fā)光二極管被點亮,相應的段被顯示。同樣,共陽極LED的發(fā)光二極管的樣機連接在一起,通常此公共陽極接高電平,當某個發(fā)光二極管的陰極接低電平時,發(fā)光二極管被點亮,相應的段被顯示。4.2動態(tài)顯示LED顯示器有靜態(tài)顯示和動態(tài)顯示兩種顯示方式。本設計考慮實際應用情況,采用動態(tài)顯示方式。選用了4位共陰數(shù)碼管,這種顯示器有12個引腳,其8個為段選的引腳。4個是位選的引腳。若只讓一位選通,而其他位選處于關閉狀態(tài),同時在段選引腳上輸出相應信號,就能在一個時刻內(nèi),顯示出要求在選通位顯示的字符。同樣,不同時刻選通不同的位選引腳,傳送需要顯示的字符的段碼,只要選通頻率快,就能利用LED顯示的余暉和人眼睛的“視覺暫留”作用,造成“多位同時亮”的假象,達到同時顯示的效果。5溫度采集模塊的設計5.1溫度傳感器的歷史及簡介溫度的測量是從金屬(物質)的熱脹冷縮開始。水銀溫度計至今仍是各種溫度測量的計量標準??墒撬娜秉c是只能近距離觀測,而且水銀有毒,玻璃管易碎。代替水銀的有酒精溫度計和金屬簧片溫度計,它們雖然沒有毒性,但測量精度很低,只能作為一個概略指示。不過在居民住宅中使用已可滿足要求。在工業(yè)生產(chǎn)和實驗研究中為了配合遠傳儀表指示,出現(xiàn)了許多不同的溫度檢測方法,常用的有電阻式、熱電偶式、PN結型、輻射型、光纖式及石英諧振型等。它們都是基于溫度變化引起其物理參數(shù)(如電阻值,熱電勢等)的變化的原理。隨著大規(guī)模集成電路工藝的提高,出現(xiàn)了多種集成的數(shù)字化溫度傳感器。5.2DS18B20的工作原理5.2.1DS18B20工作時序根據(jù)DS18B20的通訊協(xié)議,主機控制DS18B20完成溫度轉換必須經(jīng)過三個步驟:1.每一次讀寫之前都必須要對DS18B20進行復位;2.復位成功后發(fā)送一條ROM指令;3.最后發(fā)送RAM指令,這樣才能對DS18B20進行預定的操作。復位要求主CPU將數(shù)據(jù)線下拉500微秒,然后釋放,DS18B20收到信號后等待15~60微秒左右后發(fā)出60~240微秒的存在低脈沖,主CPU收到此信號表示復位成功。其工作時序包括初始化時序、寫時序和讀時序,具體工作方法如圖5-1,5-2,5-3所示。(1)初始化時序圖5-1初始化時序總線上的所有傳輸過程都是以初始化開始的,主機響應應答脈沖。應答脈沖使主機知道,總線上有從機設備,且準備就緒。主機輸出低電平,保持低電平時間至少480us,以產(chǎn)生復位脈沖。接著主機釋放總線,4.7KΩ上拉電阻將總線拉高,延時15~60us,并進入接受模式,以產(chǎn)生低電平應答脈沖,若為低電平,再延時480us。(2)寫時序圖5-2寫時序寫時序包括寫0時序和寫1時序。所有寫時序至少需要60us,且在2次獨立的寫時序之間至少需要1us的恢復時間,都是以總線拉低開始。寫1時序,主機輸出低電平,延時2us,然后釋放總線,延時60us。寫0時序,主機輸出低電平,延時60us,然后釋放總線,延時2us。(3)讀時序圖5-3讀時序總線器件僅在主機發(fā)出讀時序是,才向主機傳輸數(shù)據(jù),所以,在主機發(fā)出讀數(shù)據(jù)命令后,必須馬上產(chǎn)生讀時序,以便從機能夠傳輸數(shù)據(jù)。所有讀時序至少需要60us,且在2次獨立的讀時序之間至少需要1us的恢復時間。每個讀時序都由主機發(fā)起,至少拉低總線1us。主機在讀時序期間必須釋放總線,并且在時序起始后的15us之內(nèi)采樣總線狀態(tài)。主機輸出低電平延時2us,然后主機轉入輸入模式延時12us,然后讀取總線當前電平,然后延時50us。5.2.2ROM操作命令當主機收到DSl8B20的響應信號后,便可以發(fā)出ROM操作命令之一,這些命令如表5-1:ROM操作命令。5.3DS18B20的測溫原理5.3.1DS18B20的測溫原理每一片DSl8B20在其ROM中都存有其唯一的48位序列號,在出廠前已寫入片內(nèi)ROM中。主機在進入操作程序前必須用讀ROM(33H)命令將該DSl8B20的序列號讀出。程序可以先跳過ROM,啟動所有DSl8B20進行溫度變換,之后通過匹配ROM,再逐一地讀回每個DSl8B20的溫度數(shù)據(jù)。DS18B20的測溫原理如圖5-4所示,圖中低溫度系數(shù)晶振的振蕩頻率受溫度的影響很小,用于產(chǎn)生固定頻率的脈沖信號送給減法計數(shù)器1,高溫度系數(shù)晶振隨溫度變化其震蕩頻率明顯改變,所產(chǎn)生的信號作為減法計數(shù)器2的脈沖輸入,圖中還隱含著計數(shù)門,當計數(shù)門打開時,DS18B20就對低溫度系數(shù)振蕩器產(chǎn)生的時鐘脈沖后進行計數(shù),進而完成溫度測量。計數(shù)門的開啟時間由高溫度系數(shù)振蕩器來決定,每次測量前,首先將-55℃所對應的基數(shù)分別置入減法計數(shù)器1和溫度寄存器中,減法計數(shù)器1和溫度寄存器被預置在-55℃所對應的一個基數(shù)值。減法計數(shù)器1對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進行減法計數(shù),當減法計數(shù)器1的預置值減到0時溫度寄存器的值將加1,減法計數(shù)器1的預置將重新被裝入,減法計數(shù)器1重新開始對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進行計數(shù),如此循環(huán)直到減法計數(shù)器2計數(shù)到0時,停止溫度寄存器值的累加,此時溫度寄存器中的數(shù)值即為所測溫度。圖2.3中的斜率累加器用于補償和修正測溫過程中的非線性,其輸出用于修正減法計數(shù)器的預置值,只要計數(shù)門仍未關閉就重復上述過程,直至溫度寄存器值達到被測溫度值.表5-1ROM操作命令指令約定代碼功能讀ROM33H讀DS18B20ROM中的編碼符合ROM55H發(fā)出此命令之后,接著發(fā)出64位ROM編碼,訪問單線總線上與該編碼相對應的DS18B20使之作出響應,為下一步對該DS18B20的讀寫作準備搜索ROM0F0H用于確定掛接在同一總線上DS18B20的個數(shù)和識別64位ROM地址,為操作各器件作好準備跳過ROM0CCH忽略64位ROM地址,直接向DS18B20發(fā)溫度變換命令,適用于單片工作。警告索命令0ECH執(zhí)行后,只有溫度超過設定值上限或者下限的片子才做出響應溫度變換44H啟動DS18B20進行溫度轉換,轉換時間最長為500MS,結果存入內(nèi)部9字節(jié)RAM中讀暫存器0BEH讀內(nèi)部RAM中9字節(jié)的內(nèi)容寫暫存器4EH發(fā)出向內(nèi)部RAM的第3,4字節(jié)寫上、下限溫度數(shù)據(jù)命令,緊跟讀命令之后,是傳送兩字節(jié)的數(shù)據(jù)復制暫存器48H將E2PRAM中第3,4字節(jié)內(nèi)容復制到E2PRAM中重調E2PRAM0BBH將E2PRAM中內(nèi)容恢復到RAM中的第3,4字節(jié)讀供電方式0B4H讀DS18B20的供電模式,寄生供電時DS18B20發(fā)送“0”,外接電源供電DS18B20發(fā)送“1”

另外,由于DS18B20單線通信功能是分時完成的,他有嚴格的時隙概念,因此讀寫時序很重要。系統(tǒng)對DS18B20的各種操作必須按協(xié)議進行。操作協(xié)議為:初始化DS18B20(發(fā)復位脈沖)→發(fā)ROM功能命令→發(fā)存儲器操作命令→處理數(shù)據(jù)。減法計數(shù)器減法計數(shù)器斜坡累加器減到0減法計數(shù)器預置低溫度系數(shù)振蕩器高溫度系數(shù)振蕩器計數(shù)比較器預置溫度寄存器減到0圖5-4測溫原理內(nèi)部裝置5.3.2DS18B20的測溫流程初始化初始化DS18B20跳過ROM匹配溫度變換延時1S跳過ROM匹配讀暫存器轉換成顯示碼數(shù)碼管顯示圖5-5DS18B20測溫流程6串行通信模塊設計6.1串口通信結構MCS-51系列內(nèi)部含有一個可編程全雙工串行通信接口,具有UART(通用異步接收和發(fā)送器)的全部功能。該接口電路不僅能同時進行數(shù)據(jù)的發(fā)送和接收,也可作為一個同步移位寄存器使用??蓸嫵呻p機或者多機通信系統(tǒng)6.2串口通信的工作原理在進行異步通信時,數(shù)據(jù)的發(fā)送和接收分別在各自的時鐘控制下進行的,但都必須與字符位數(shù)的波特率保持一致。MCS-51串行口的發(fā)送和接收時鐘可由兩種方式產(chǎn)生,一種是由主機頻率經(jīng)分頻后產(chǎn)生,另一種方式是由內(nèi)部定時器的溢出率經(jīng)16分頻后提供。6.2.1收發(fā)過程發(fā)送和接收的過程如下:串行口的發(fā)送過程啟動時由一條寫發(fā)送緩沖器的指令把數(shù)據(jù)寫入串行口發(fā)的發(fā)送緩沖器SBUF中,再由硬件電路自動在字符的始末加上起始位(低電平)、停止位(高電平)及其他控制位(如奇偶位),然后在移位脈沖SHIFT的控制下,低位在前,高位在后,從TXD端(方式0除外)一位位地向外發(fā)送。串行口的接收與否受制于允許接收位REN的狀態(tài),當REN被軟件置“1”后,允許接收器接收。接收端RED一位位地接收數(shù)據(jù),直到收到一個完整的字符數(shù)據(jù)后,控制電路進行最后一次移位,自動去掉起始位,使接收中斷標志位R1置“1T1和R1是由硬件置位的,但需要用軟件復位。6.2.2相關寄存器SBUF是兩個在物理上獨立的接收、發(fā)送緩沖器,可同時發(fā)送、接收數(shù)據(jù)。兩個緩沖器只用一個字節(jié)地址99H,可通過指令對SBUF的讀寫來區(qū)別是對接收緩沖器的操作還是對發(fā)送緩沖器的操作。串行口對外有兩條獨立的收發(fā)信號線RXD(P3.0)、TXD(P3.1),因此可以同時發(fā)送、接收數(shù)據(jù),實現(xiàn)全雙工。SCON寄存器用了控制串行口的工作方式和狀態(tài),可按位尋址,其字節(jié)地址為98H。PCON中的SMOD用來控制波特率加倍。TMOD設置定時器1的工作方式,用來產(chǎn)生波特率。如果用到中斷,則還余姚用到中斷相關的寄存器IE,IP等。6.2.3工作方式MCS-51系列單片機有4中工作方式,可通過SCON中的SM0,SM1的設置進行選擇。6.3MAX232簡介MAX232芯片是美信公司專門為電腦的RS-232標準串口設計的單電源電平轉換芯片,使用+5v單電源供電。主要特點:1、符合所有的RS-232C技術標準2、只需要單一+5V電源供電3、片載電荷泵具有升壓、電壓極性反轉能力,能夠產(chǎn)生+10V和-10V電壓V+、V-4、功耗低,典型供電電流5mA5、內(nèi)部集成2個RS-232C驅動器6、內(nèi)部集成兩個RS-232C接收器7單片機接口設計7.1設計原則DS18B20可以采用兩種方式供電,一種是采用電源供電方式,此時DS18B20的1腳接地,2腳作為信號線,3腳接電源。另一種是寄生電源供電方式,為保證在有效的DS18B20時鐘周期內(nèi)提供足夠的電流,可用一個MOSFET管來完成對總線的上拉。本設計采用電源供電方式,P1.1口接單線總線為保證在有效的DS18B20時鐘周期內(nèi)提供足夠的電流,可用一個MOSFET管和89S51的P1.0來完成對總線的上拉。當DS18B20處于寫存儲器操作和溫度A/D變換操作時,總線上必須有強的上拉,上拉開啟時間最大為10μs。采用寄生電源供電方式是VDD和GND端均接地。由于單線制只有一根線,因此發(fā)送接收口必須是三狀態(tài)的。主機控制DS18B20完成溫度轉換必須經(jīng)過3個步驟:初始化;ROM操作指令;存儲器操作指令。7.2引腳連接7.2.1晶振電路單片機XIAL1和XIAL2分別接30PF的電容,中間再并個12MHZ的晶振,形成單片機的晶振電路。7.2.2串口引腳P0口接顯示電路。P1.1接DS18B20,P1.1和P1.2引腳接繼電器電路的4.7K電阻上,P1口其他引腳懸空。P2口中P2.0、P2.1、P2.2、P2.3分別接到顯示電路的4.7K電阻上,P2.5接蜂鳴器電路,其他引腳懸空。P3口中P3.0,P3.1接串口電路。7.2.3其它引腳ALE引腳懸空,復位引腳接到復位電路、VCC接電源、VSS接地、EA接電源。8系統(tǒng)整體設計8.1系統(tǒng)硬件電路設計8.1.1主板電路設計單片機的P1.0接DS18B20的2號引腳,P0口送數(shù)P2口掃描,P1.1、P1.2控制加熱器和電風扇的繼電器。如附錄1。8.1.2各部分電路(1)顯示電路圖7-1顯示電路圖(2)單片機電路圖7-2單片機電路引腳圖(3)DS18B20溫度傳感器電路圖7-3溫度傳感器電路引腳圖(4)繼電器電路圖7-4繼電器電路圖(5)晶振控制電路圖7-5晶振控制電路圖(6)復位電路圖7-6復位電路圖(7)串行通信電路8.2系統(tǒng)軟件設計8.2.1系統(tǒng)軟件設計整體思路一個應用系統(tǒng)要完成各項功能,首先必須有較完善的硬件作保證。同時還必須得到相應設計合理的軟件的支持,尤其是微機應用高速發(fā)展的今天,許多由硬件完成的工作,都可通過軟件編程而代替。甚至有些必須采用很復雜的硬件電路才能完成的工作,用軟件編程有時會變得很簡單,如數(shù)字濾波,信號處理等。因此充分利用其內(nèi)部豐富的硬件資源和軟件資源,采用與S51系列單片機相對應的51匯編語言和結構化程序設計方法進行軟件編程。程序設計語言有三種:機器語言、匯編語言和高級語言。機器語言是機器唯一能“懂”的語言,用匯編語言或高級語言編寫的程序(稱為源程序)最終都必須翻譯成機器語言的程序(成為目標程序),計算機才能“看懂”,然后逐一執(zhí)行。高級語言是面向問題和計算過程的語言,它可通過于各種不同的計算機,用戶編程時不必仔細了解所用的計算機的具體性能與指令系統(tǒng),而且語句的功能強,常常一個語句已相當于很多條計算機指令,于是用高級語言編制程序的速度比較快,也便于學習和交流,但是本系統(tǒng)卻選用了匯編語言。原因在于,本系統(tǒng)是編制程序工作量不大、規(guī)模較小的單片機微控制系統(tǒng),使用匯編語言可以不用像高級語言那樣占用較多的存儲空間,適合于存儲容量較小的系統(tǒng)。同時,本系統(tǒng)對位處理要求很高,需要解決大量的邏輯控制問題。MCS—51指令系統(tǒng)的指令長度較短,它在存儲空間和執(zhí)行時間方面具有較高的效率,編成的程序占用內(nèi)存單元少,執(zhí)行也非常的快捷,與本系統(tǒng)的應用要求很適合。而且MCS—51指令系統(tǒng)有豐富的位操作(或稱位處理)指令,可以形成一個相當完整的位操作指令子集,這是MCS—51指令系統(tǒng)主要的優(yōu)點之一。對于要求反應靈敏與控制及時的工控、檢測等實時控制系統(tǒng)以及要求體積小、系統(tǒng)小的許多“電腦化”產(chǎn)品,可以充分體現(xiàn)出匯編語言簡明、整齊、執(zhí)行時間短和易于使用的特點。本裝置的軟件包括主程序、讀出溫度子程序、復位應答子程序、寫入子程序、以及有關DS18B20的程序(初始化子程序、寫程序和讀程序)。8.2.2系統(tǒng)程序流圖系統(tǒng)程序主要包括主程序,讀出溫度子程序,復位應答子程序,寫入子程序等。1)主程序主程序的主要功能是負責溫度的實時顯示、讀出并處理DS18B20的測量的當前溫度值,溫度測量每1s進行一次。這樣可以在一秒之內(nèi)測量一次被測溫度,其程序流程見圖19所示。通過調用讀溫度子程序把存入內(nèi)存儲中的整數(shù)部分與小數(shù)部分分開存放在不同的兩個單元中,然后通過調用顯示子程序顯示出來圖7-7主程序流程圖2)讀出溫度子程序讀出溫度子程序的主要功能是讀出RAM中的9字節(jié),在讀出時需進行CRC校驗,校驗有錯時不進行溫度數(shù)據(jù)的改寫。DS18B20的各個命令對時序的要求特別嚴格,所以必須按照所要求的時序才能達到預期的目的,同時,要注意讀進來的是高位在后低位在前,共有12位數(shù),小數(shù)4位,整數(shù)7位,還有一位符號位。跳過ROM匹配命令跳過ROM匹配命令寫入子程序溫度轉換命令顯示子程序(延時)寫入子程序寫入子程序DS18B20復位、應答子程序DS18B20復位、應答子程序跳過ROM匹配命令讀溫度命令子程序終止 圖7-8讀出溫度子程序開始P1.0口清0開始P1.0口清0延時537USP1.0口置1標志位置150US是否有低電平有234US低電平P1.0口置1終止標志位置1是否圖7-9復位、應答子程序寫入子程序進位C清0進位C清0P1.0清0延時12US帶進位右移延時46USP1.0置0R2是否為0終止開始 圖7-10寫入子程序系統(tǒng)總的流程圖開始初始化DS18B20顯示當前溫度判斷當前溫度值開始初始化DS18B20顯示當前溫度判斷當前溫度值超過設定溫度上限啟動風扇降低溫度紅燈亮設定溫度上、下限啟動電熱爐升高溫度是否低于設定溫度下限是綠燈亮否圖7-11系統(tǒng)總的流程圖9結束語本設計使用的溫度控制器結構簡單、測溫準確,具有一定的實際應用價值。該智能溫度控制器只是DS18B20在溫度控制領域的一個簡單實例,還有許多需要完善的地方,例如可以將測得的溫度通過單片機與通訊模塊相連接,以手機短消息的方式發(fā)送給用戶,使用戶能夠隨時對溫度進行監(jiān)控。此外,還能廣泛地應用于其他一些工業(yè)生產(chǎn)領域,如建筑,倉儲等行業(yè)。本溫度控制系統(tǒng)可以應用于多種場合,像的溫度、育嬰房的溫度、水溫的控制。用戶可靈活選擇本設計的用途,有很強的實用價值。參考文獻[1].李朝青,單片機原理及接口技術(簡明修訂版)[M].北京:北京航空航天大學出版社,1998[2].李廣弟.單片機基礎[M].北京:北京航空航天大學出版社,1994[3].金偉正.單線數(shù)字溫度傳感器的原理與應用[J].電子技術與應用,2000[4].李鋼.1-Wire總線數(shù)字溫度傳感器DS18B20原理及應用.現(xiàn)代電子技術[J],2005[5]StevenF.Barrett,DanielJ.Pack.EmbeddedSystem[M].北京:電子工業(yè)出版社,2006[6].陳躍東.DS18B20集成溫度傳感器原理與應用[J].安徽機電學院學報,2002[7].閻石.數(shù)字電子技術基礎(第三版)[M].北京:高等教育出版社,1989[8].吳為民,王仁麗溫度控制系統(tǒng)的發(fā)展概括[J],工業(yè)爐,2002年,24(2)18-20致謝大學四年的學習和生活就要隨著這篇論文的答辯而結束了。有許許多多的舍不得,也有許許多多的感謝要說。首先要衷心感謝的是我的指導教師東野長磊老師!在我學習期間不僅指導了我當論文設計,還傳授了做學問的秘訣。這些都將使我終生受益。無論是在理論學習階段,還是在論文的選題、資料查詢、開題、研究和撰寫的每一個環(huán)節(jié),無不得到導師的悉心指導和幫助。我想借此機會向導師表示衷心的感謝!其次要感謝所有教育過我的老師!你們傳授給我的專業(yè)知識是我不斷成長的源泉,也是完成本論文的基礎。我還要向關心和支持我學習的朋友們表示真摯的謝意!感謝他們對我的關心、關注和支持!大學的生活讓我有了堅強的性格,冷靜的頭腦和永遠樂觀的態(tài)度。最重要的是讓我有了責任感,對自己、對家人和對社會。我愿在未來的學習過程中,以更加豐厚的成果來答謝曾經(jīng)關心、幫助和支持過我的所有領導、老師、同學和朋友。永遠以一顆為人民服務的心來回報。PAGE60附錄1主板電路圖附錄2程序代碼ORG0000HTEMPER_LEQU29HTEMPER_HEQU28HFLAG1EQU38H;是否檢測到DS18B20標志位A_BITEQU20H;數(shù)碼管個位數(shù)存放內(nèi)存位置B_BITEQU21H;數(shù)碼管十位數(shù)存放內(nèi)存位置XSEQU30HMOVA,#00HMOVP2,AMAIN:LCALLGET_TEMPER;調用讀溫度子程序MOVA,29HMOVB,ACLRCRLCACLRCRLCACLRCRLCACLRCRLCASWAPAMOV31H,AMOVA,BMOVC,40H;將28H中的最低位移入CRRCAMOVC,41HRRCAMOVC,42HRRCAMOVC,43HRRCAMOV29H,ALCALLDISPLAY;調用數(shù)碼管顯示子程序AJMPMAIN;這是DS18B20復位初始化子程序INIT_1820:SETBP1.0NOPCLRP1.0;主機發(fā)出延時537微秒的復位低脈沖MOVR1,#3TSR1:MOVR0,#107DJNZR0,$DJNZR1,TSR1SETBP1.0;然后拉高數(shù)據(jù)線NOPNOPNOPMOVR0,#25HTSR2:JNBP1.0,TSR3;等待DS18B20回應DJNZR0,TSR2LJMPTSR4;延時TSR3:SETBFLAG1;置標志位,表示DS1820存在LJMPTSR5TSR4:CLRFLAG1;清標志位,表示DS1820不存在LJMPTSR7TSR5:MOVR0,#117TSR6:DJNZR0,TSR6;時序要求延時一段時間TSR7:SETBP1.0RET;讀出轉換后的溫度值GET_TEMPER:SETBP1.0LCALLINIT_1820;先復位DS18B20JBFLAG1,TSS2RET;判斷DS1820是否存在?若DS18B20不存在則返回TSS2:MOVA,#0CCH;跳過ROM匹配LCALLWRITE_1820MOVA,#44H;發(fā)出溫度轉換命令LCALLWRITE_1820;這里通過調用顯示子程序實現(xiàn)延時一段時間,等待AD轉換結束,12位的話750微秒LCALLDISPLAYLCALLINIT_1820;準備讀溫度前先復位MOVA,#0CCH;跳過ROM匹配LCALLWRITE_1820MOVA,#0BEH;發(fā)出讀溫度命令LCALLWRITE_1820LCALLREAD_18200;將讀出的溫度數(shù)據(jù)保存到35H/36HRET;寫DS18B20的子程序(有具體的時序要求)WRITE_1820:MOVR2,#8;一共8位數(shù)據(jù)CLRCWR1:CLRP1.0MOVR3,#6DJNZR3,$RRCAMOVP1.0,CMOVR3,#23DJNZR3,$SETBP1.0NOPDJNZR2,WR1RET;讀DS18B20的程序,從DS18B20中讀出兩個字節(jié)的溫度數(shù)據(jù)READ_18200:MOVR4,#2;將溫度高位和低位從DS18B20中讀出MOVR1,#29H;低位存入29H(TEMPER_L),高位存入28H(TEMPER_H)RE00:MOVR2,#8;數(shù)據(jù)一共有8位RE01:CLRCSETBP1.0NOPNOPCLRP1.0NOPNOPNOPSETBP1.0MOVR3,#9RE10:DJNZR3,RE10MOVC,P1.0MOVR3,#23RE20:DJNZR3,RE20RRCADJNZR2,RE01MOV@R1,ADECR1DJNZR4,RE00RETDISPLAY:CLRCSUBBA,#30JNBCY,T1MOVA,BCLRCSUBBA,#25JNBCY,XIANSHICLRP1.1LJMPXIANSHIT1:CLRP1.2XIANSHI:MOVA,BMOVB,#10;10進制/10=10進制DIVABMOVB_BIT,A;十位在AMOVA_BIT,B;個位在BMOVR0,#4CLRC;多加的DPL1:MOVR1,#250;顯示1000次DPLOP:MOVDPTR,#NUMTAB1MOVA,A_BIT;取個位數(shù)MOVCA,@A+DPTR;查個位數(shù)的7段代碼MOVP0,A;送出個位的7段代碼CLRP2.1;開個位顯示ACALLD1MS;顯示1MSSETBP2.1MOVDPTR,#NUMTABMOVA,B_BIT;取十位數(shù)MOVCA,@A+DPTR;查十位數(shù)的7段代碼MOVP0,A;送出十位的7段代碼CLRP2.2;開十位顯示 ACALLD1MS;顯示1MSSETBP2.2JCXSW;多加的MOVA,31HMOVB,#160DIVABMOVXS,BXSW:MOVA,XSMOVCA,@A+DPTRMOVP0,ACLRP2.0ACALLD1MSSETBP2.0SETBC;多加的DJNZR1,DPLOP;250次沒完循環(huán)DJNZR0,DPL1;4個250次沒完循環(huán)RET;1MS延時(按12MHZ算)D1MS:MOVR7,#80DJNZR7,$RETNUMTAB:DB3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,7FH,7FH,7FH,7FH,7FH,7FHNUMTAB1:DB0BFH,86H,0DBH,0CFH,0E6H,0EDH,0FDH,87H,0FFH,0EFHEND附錄3中英文文獻英文原文DescriptionTheat89s52isalow-power,high-performanceCMOS8-bitmicrocomputerwith4KbytesofFlashProgrammableandErasableReadOnlyMemory(PEROM)and128bytesRAM.ThedeviceismanufacturedusingAtmel’shighdensitynonvolatilememorytechnologyandiscompatiblewiththeindustrystandardMCS-51?instructionsetandpinout.Thechipcombinesaversatile8-bitCPUwithFlashonamonolithicchip,theAtmelat89s52isapowerfulmicrocomputerwhichprovidesahighlyflexibleandcosteffectivesolutiontomanyembeddedcontrolapplications.Features:?CompatiblewithMCS-51?Products?4KBytesofIn-SystemReprogrammableFlashMemory?Endurance:1,000Write/EraseCycles?FullyStaticOperation:0Hzto24MHz?Three-LevelProgramMemoryLock?128x8-BitInternalRAM?32ProgrammableI/OLines?Two16-BitTimer/Counters?SixInterruptSources?ProgrammableSerialChannel?LowPowerIdleandPowerDownModesTheat89s52providesthefollowingstandardfeatures:4KbytesofFlash,128bytesofRAM,32I/Olines,two16-bittimer/counters,afivevectortwo-levelinterruptarchitecture,afullduplexserialport,on-chiposcillatorandclockcircuitry.Inaddition,theat89s52isdesignedwithstaticlogicforoperationdowntozerofrequencyandsupportstwosoftwareselectablepowersavingmodes.TheIdleModestopstheCPUwhileallowingtheRAM,timer/counters,serialportandinterruptsystemtocontinuefunctioning.ThePowerDownModesavestheRAMcontentsbutfreezestheoscillatordisablingallotherchipfunctionsuntilthenexthardwarereset.PinDescription:VCCSupplyvoltage.GNDGround.Port0Port0isan8-bitopendrainbidirectionalI/Oport.AsanoutputporteachpincansinkeightTTLinputs.Whenisarewrittentoport0pins,thepinscanbeusedashighimpedanceinputs.Port0mayalsobeconfiguredtobethemultiplexedloworderaddress/databusduringaccessestoexternalprogramanddatamemory.InthismodeP0hasinternalpullups.Port0alsoreceivesthecodebytesduringFlashprogramming,andoutputsthecodebytesduringprogramverification.Externalpullupsarerequiredduringprogramverification.Port1Port1isan8-bitbidirectionalI/Oportwithinternalpullups.ThePort1outputbufferscansink/sourcefourTTLinputs.When1sarewrittentoPort1pinstheyarepulledhighbytheinternalpullupsandcanbeusedasinputs.Asinputs,Port1pinsthatareexternallybeingpulledlowwillsourcecurrent(IIL)becauseoftheinternalpullups.Port1alsoreceivesthelow-orderaddressbytesduringFlashprogrammingandverification.Port2Port2isan8-bitbidirectionalI/Oportwithinternalpullups.ThePort2outputbufferscansink/sourcefourTTLinputs.When1sarewrittentoPort2pinstheyarepulledhighbytheinternalpullupsandcanbeusedasinputs.Asinputs,Port2pinsthatareexternallybeingpulledlowwillsourcecurrent(IIL)becauseoftheinternalpullups.Port2emitsthehigh-orderaddressbyteduringfetchesfromexternalprogrammemoryandduringaccessestoexternaldatamemorythatuse16-bitaddresses(MOVX@DPTR).Inthisapplicationitusesstronginternalpull-upswhenemitting1s.Duringaccessestoexternaldatamemorythatuse8-bitaddresses(MOVX@RI),Port2emitsthecontentsoftheP2SpecialFunctionRegister.Port2alsoreceivesthehigh-orderaddressbitsandsomecontrolsignalsduringFlashprogrammingandverification.Port3Port3isan8-bitbidirectionalI/Oportwithinternalpullups.ThePort3outputbufferscansink/sourcefourTTLinputs.When1sarewrittentoPort3pinstheyarepulledhighbytheinternalpullupsandcanbeusedasinputs.Asinputs,Port3pinsthatareexternallybeingpulledlowwillsourcecurrent(IIL)becauseofthepullups.Port3alsoservesthefunctionsofvariousspecialfeaturesoftheat89s52aslistedbelow:PortpinalternatefunctionsP3.0rxd(serialinputport)P3.1txd(serialoutputport)P3.2^int0(externalinterrupt0)P3.3^int1(externalinterrupt1)P3.4t0(timer0externalinput)P3.5t1(timer1externalinput)P3.6^WR(externaldatamemorywritestrobe)P3.7^rd(externaldatamemoryreadstrobe)Port3alsoreceivessomecontrolsignalsforFlashprogrammingandverification.RSTResetinput.Ahighonthispinfortwomachinecycleswhiletheoscillatorisrunningresetsthedevice.ALE/PROGAddressLatchEnableoutputpulseforlatchingthelowbyteoftheaddressduringaccessestoexternalmemory.Thispinisalsotheprogrampulseinput(PROG)duringFlashprogramming.InnormaloperationALEisemittedataconstantrateof1/6theoscillatorfrequency,andmaybeusedforexternaltimingorclockingpurposes.Note,however,thatoneALEpulseisskippedduringeachaccesstoexternalDataMemory.Ifdesired,ALEoperationcanbedisabledbysettingbit0ofSFRlocation8EH.Withthebitset,ALEisactiveonlyduringaMOVXorMOVCinstruction.Otherwise,thepinisweaklypulledhigh.SettingtheALE-disablebithasnoeffectifthemicrocontrollerisinexternalexecutionmode.PSENProgramStoreEnableisthereadstrobetoexternalprogrammemory.Whentheat89s52isexecutingcodefromexternalprogrammemory,PSENisactivatedtwiceeachmachinecycle,exceptthattwoPSENactivationsareskippedduringeachaccesstoexternaldatamemory.EA/VPPExternalAccessEnable.EAmustbestrappedtoGNDinordertoenablethedevicetofetchcodefromexternalprogrammemorylocationsstartingat0000HuptoFFFFH.Note,however,thatiflockbit1isprogrammed,EAwillbeinternallylatchedonreset.EAshouldbestrappedtoVCCforinternalprogramexecutions.Thispinalsoreceivesthe12-voltprogrammingenablevoltage(VPP)duringFlashprogramming,forpartsthatrequire12-voltVPP.XTAL1Inputtotheinvertingoscillatoramplifierandinputtotheinternalclockoperatingcircuit.XTAL2Outputfromtheinvertingoscillatoramplifier.OscillatorCharacteristicsXTAL1andXTAL2aretheinputandoutput,respectively,ofaninvertingamplifierwhichcanbeconfiguredforuseasanon-chiposcillator,asshowninFigure1.Eitheraquartzcrystalorceramicresonatormaybeused.Todrivethedevicefromanexternalclocksource,XTAL2shouldbeleftunconnectedwhileXTAL1isdrivenasshowninFigure2.Therearenorequirementsonthedutycycleoftheexternalclocksignal,sincetheinputtotheinternalclockingcircuitryisthroughadivide-by-twoflip-flop,butminimumandmaximumvoltagehighandlowtimespecificationsmustbeobserved.IdleModeInidlemode,theCPUputsitselftosleepwhilealltheonchipperipheralsremainactive.Themodeisinvokedbysoftware.Thecontentoftheon-chipRAMandallthespecialfunctionsregistersremainunchangedduringthismode.Theidlemodecanbeterminatedbyanyenabledinterruptorbyahardwarereset.Itshouldbenotedthatwhenidleisterminatedbyahardwarereset,thedevicenormallyresumesprogramexecution,fromwhereitleftoff,uptotwomachinecyclesbeforetheinternalresetalgorithmtakescontrol.On-chiphardwareinhibitsaccesstointernalRAMinthisevent,butaccesstotheportpinsisnotinhibited.ToeliminatethepossibilityofanunexpectedwritetoaportpinwhenIdleisterminatedbyreset,theinstructionfollowingtheonethatinvokesIdleshouldnotbeonethatwritestoaportpinortoexternalmemory.StatusofExternalPinsDuringIdleandPowerDownModesmodeProgrammemoryALE^psenPort0Port1Port2Port3idleinternal11datadatadataDataIdleExternal11floatDatadataDataPowerdownInternal00DataDataDataDataPowerdownExternal00floatdataDatadataPowerDownModeInthepowerdownmodetheoscillatorisstopped,andtheinstructionthatinvokespowerdownisthelastinstructionexecuted.Theon-chipRAMandSpecialFunctionRegistersretaintheirvaluesuntilthepowerdownmodeisterminated.Theonlyexitfrompowerdownisahardwarereset.ResetredefinestheSFRsbutdoesnotchangetheon-chipRAM.TheresetshouldnotbeactivatedbeforeVCCisrestoredtoitsnormaloperatinglevelandmustbeheldactivelongenoughtoallowtheoscillatortorestartandstabilize.ProgramMemoryLockBitsOnthechiparethreelockbitswhichcanbeleftunprogrammed(U)orcanbeprogrammed(P)toobtaintheadditionalfeatureslistedinthetablebelow:LockBitProtectionModesWhenlockbit1isprogrammed,thelogiclevelattheEApinissampledandlatchedduringreset.Ifthedeviceispoweredupwithoutareset,thelatchinitializestoarandomvalue,andholdsthatvalueuntilresetisactivated.ItisnecessarythatthelatchedvalueofEAbeinagreementwiththecurrentlogiclevelatthatpininorderforthedevicetofunctionproperly.ProgrammingtheFlash:Theat89s52isnormallyshippedwiththeon-chipFlashmemoryarrayintheerasedstate(thatis,contents=FFH)andreadytobeprogrammed.Theprogramminginterfaceacceptseitherahigh-voltage(12-volt)oralow-voltage(VCC)programenablesignal.Thelowvoltageprogrammingmodeprovidesaconvenientwaytoprogramtheat89s52insidetheuser’ssystem,whilethehigh-voltageprogrammingmodeiscompatiblewithconventionalthirdpartyFlashorEPROMprogrammers.Theat89s52isshippedwitheitherthehigh-voltageorlow-voltageprogrammingmodeenabled.Therespectivetop-sidemarkinganddevicesignaturecodesarelistedinthefollowingtable.Vpp=12vVpp=5vTop-sidemarkat89s52xxxxyywwat89s52xxxx-5yywwsignature(030H)=1EH(031H)=51H(032H)=FFH(030H)=1EH(031H)=51H(032H)=05HTheat89s52codememoryarrayisprogrammedbyte-bybyteineitherprogrammingmode.Toprogramanynonblankbyteintheon-chipFlashProgrammableandErasableReadOnlyMemory,theentirememorymustbeerasedusingtheChipEraseMode.ProgrammingAlgorithm:Beforeprogrammingtheat89s52,theaddress,dataandcontrolsignalsshouldbesetupaccordingtotheFlashprogrammingmodetableandFigures3and4.Toprogramtheat89s52,takethefollowingsteps.1.Inputthedesiredmemorylocationontheaddresslines.2.Inputtheappropriatedatabyteonthedatalines.3.Activatethecorrectcombinationofcontrolsignals.4.RaiseEA/VPPto12Vforthehigh-voltageprogrammingmode.5.PulseALE/PROGoncetoprogramabyteintheFlasharrayorthelockbits.Thebyte-writecycleisself-timedandtypicallytakesnomorethan1.5ms.Repeatsteps1through5,changingtheaddressanddatafortheentirearrayoruntiltheendoftheobjectfileisreached.DataPolling:Theat89s52featuresDataPollingtoindicatetheendofawritecycle.Duringawritecycle,anattemptedreadofthelastbytewrittenwillresultinthecomplementofthewrittendatumonPO.7.Oncethewrit

溫馨提示

  • 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

提交評論