版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 目 錄</b></p><p><b> 1 引言1</b></p><p> 1.1 本設(shè)計(jì)的意義1</p><p> 1.2 國(guó)內(nèi)外現(xiàn)狀分析1</p><p> 1.3 論文的主要內(nèi)容2</p><p> 2 系統(tǒng)總體方案
2、設(shè)計(jì)2</p><p> 3 硬件部分設(shè)計(jì)3</p><p> 3.1 AT89C51介紹3</p><p> 3.1.1 主要性能3</p><p> 3.1.2 引腳功能說明4</p><p> 3.2 傳感器模塊部分設(shè)計(jì)4</p><p> 3.2.1 AD590主
3、要特性5</p><p> 3.2.2 與ADC0809接口6</p><p> 3.3 數(shù)模轉(zhuǎn)換部分硬件設(shè)計(jì)6</p><p> 3.3.1 ADC0809介紹7</p><p> 3.3.2 ADC0809各管腳功能7</p><p> 3.3.3 硬件連接電路8</p><
4、;p> 3.4 LED顯示電路的設(shè)計(jì)9</p><p> 3.4.1 LED數(shù)碼管9</p><p> 3.4.2 LED數(shù)碼管編碼方式10</p><p> 3.4.3 LED數(shù)碼管顯示方式和典型應(yīng)用電路11</p><p> 3.5 報(bào)警電路的設(shè)計(jì)12</p><p> 3.6 整體電路
5、圖13</p><p> 4 軟件部分設(shè)計(jì)14</p><p> 4.1 A/D轉(zhuǎn)換程序流程圖14</p><p> 4.2 顯示程序流程圖14</p><p> 4.3 報(bào)警程序流程圖15</p><p> 4.4 主程序流程圖15</p><p><b>
6、結(jié)束語(yǔ)18</b></p><p><b> 參考文獻(xiàn)19</b></p><p><b> 附錄20</b></p><p><b> 1 引言</b></p><p> 1.1 本設(shè)計(jì)的意義</p><p> 隨著電子技術(shù)
7、、計(jì)算機(jī)技術(shù)、通信技術(shù)的迅速發(fā)展,工業(yè)測(cè)控領(lǐng)域采用先進(jìn)的技術(shù)對(duì)現(xiàn)場(chǎng)的工業(yè)生產(chǎn)參數(shù)進(jìn)行檢測(cè),監(jiān)測(cè)是實(shí)現(xiàn)工業(yè)自動(dòng)化的重要標(biāo)志。據(jù)不完全統(tǒng)計(jì),在工業(yè)生產(chǎn)中被監(jiān)測(cè)最多的參數(shù)應(yīng)該是壓力、流量、溫度三大參數(shù)。無論在石油、化工、煤炭、水利等行業(yè),還是電力、機(jī)械、航空、國(guó)防等部門,都離不開對(duì)這些參數(shù)的監(jiān)測(cè)。當(dāng)然除此之外,還有諸如液位、扭矩、密度、濃度、速度、位移、距離、電參數(shù)等眾多物理參數(shù)的監(jiān)測(cè),但用的最多的恐怕還是溫度的監(jiān)測(cè),可以說溫度的測(cè)量是一個(gè)“
8、永恒”的話題。溫度測(cè)量的領(lǐng)域十分廣泛,其實(shí),不僅在工業(yè)領(lǐng)域,而且在民用領(lǐng)域、軍用領(lǐng)域,溫度的測(cè)量隨處可見。在工業(yè)領(lǐng)域,電力系統(tǒng)的安全運(yùn)行關(guān)系到整個(gè)工業(yè)的發(fā)展和人民生活的穩(wěn)定,其中一個(gè)重要的方面是電氣設(shè)備自身的安全運(yùn)行,由于絕大多數(shù)的電氣設(shè)備采用封閉式結(jié)構(gòu),散熱效果差,熱積累大,并長(zhǎng)期處于高電壓、大電流和滿負(fù)荷運(yùn)行,其結(jié)果造成熱量集結(jié)加劇,溫升直接危害電器設(shè)備的絕緣,這就要求對(duì)電氣設(shè)備的溫度狀況進(jìn)行測(cè)量控制。如發(fā)電廠的發(fā)電機(jī)組隨著電壓增高
9、和容量增大,解決定子鐵心和繞組溫升的問題就日益突出。對(duì)全封閉的高壓開關(guān)電器,也存在對(duì)其開關(guān)觸頭溫度的監(jiān)測(cè)問題</p><p> 1.2 國(guó)內(nèi)外現(xiàn)狀分析</p><p> 隨著世界進(jìn)入信息化時(shí)代,自動(dòng)化、信息化成為世界各國(guó)發(fā)展重要方向之一。傳感器作為自動(dòng)化和信息系統(tǒng)的前端器件,是制造業(yè)自動(dòng)化和信息化的基礎(chǔ);現(xiàn)代傳感器技術(shù)集約了多種學(xué)科的尖端成果、是國(guó)際上發(fā)展最迅速的高新技術(shù)之一;是傳統(tǒng)產(chǎn)
10、業(yè)技術(shù)改造和升級(jí)的“功效倍增器”,成為衡量一個(gè)國(guó)家科技發(fā)展的重要指標(biāo)。單片機(jī)是完全按嵌入式系統(tǒng)要求設(shè)計(jì)的單芯片形態(tài)的嵌入式系統(tǒng),它廣泛應(yīng)用在中、小型工控領(lǐng)域,是電子系統(tǒng)智能化的最重要的工具。溫度傳感器也從傳統(tǒng)類型向集成化、微型化、多功能發(fā)展,且隨著材料行業(yè)對(duì)傳感器敏感材料進(jìn)一步的開發(fā),傳感器新敏感材料不斷推出,高新材料已廣泛用于新型傳感器制造研發(fā)中,如光纖傳感器,光纖傳感器等等,我國(guó)與國(guó)外先進(jìn)國(guó)家相比,還處于落后狀態(tài)。本設(shè)計(jì)主要涉及到微
11、控制器和溫度傳感器的應(yīng)用。二者的發(fā)展直接影響著溫度檢測(cè)方面的設(shè)計(jì)和應(yīng)用。 </p><p> 1.3 單片機(jī)的概念和特點(diǎn)</p><p> 現(xiàn)代社會(huì)中,盡管PC機(jī)的應(yīng)用已經(jīng)相當(dāng)普遍,但是,在工控領(lǐng)域,在日益追求小而精、輕而薄的自動(dòng)化控制器、自動(dòng)化儀器儀表、家電產(chǎn)品等方面,PC機(jī)仍有所不相適宜的地方。而工業(yè)控制、儀
12、器儀表、家電產(chǎn)品等市場(chǎng)廣闊,要求PC機(jī)技術(shù)與之相適應(yīng)。在這種情況下,單片機(jī)應(yīng)運(yùn)而生了(也稱作微型計(jì)算機(jī))。</p><p> 微型計(jì)算機(jī)的基本機(jī)構(gòu)是由中央處理器、儲(chǔ)存器、和I/O設(shè)備構(gòu)成的。所謂的單片機(jī)是指將微型計(jì)算機(jī)3個(gè)單元的多個(gè)分體中的主要功能用1個(gè)集成電路芯片來實(shí)現(xiàn),該芯片具有一個(gè)微型計(jì)算機(jī)的基本功能。這種超大規(guī)模集成電路芯片即稱為單片微型計(jì)算機(jī),通常簡(jiǎn)稱單片機(jī)。</p><p>
13、 單片機(jī)具有以下特點(diǎn):</p><p> (1) 受集成度限制,片內(nèi)存儲(chǔ)容量較小,一般8位單片機(jī)的ROM小于8/16K字節(jié),RAM小于256字節(jié),但可在外部擴(kuò)展,通常ROM、RAM可分別擴(kuò)展至64K字節(jié)。</p><p> (2) 可靠性好。芯片本身是按工業(yè)測(cè)控環(huán)境要求設(shè)計(jì)的,其抗工業(yè)噪聲干擾優(yōu)于一般通用CPU;程序指令及常數(shù)、表格固化在ROM中不易破壞;許多信號(hào)通道均在一個(gè)芯片內(nèi),
14、故可靠性高。</p><p> (3) 易擴(kuò)展。片內(nèi)具有計(jì)算機(jī)正常運(yùn)行所必需的部件。芯片外部有許多供擴(kuò)展用的三總線及并行、串行輸入/輸出管腳,很容易構(gòu)成各種規(guī)模的計(jì)算機(jī)應(yīng)用系統(tǒng)。</p><p> (4) 控制功能強(qiáng)。為了滿足工業(yè)控制要求,一般單片機(jī)的指令系統(tǒng)中具有極豐富的條件分支轉(zhuǎn)移指令、I/O口的邏輯操作以及位處理功能。一般說來,單片機(jī)的邏輯控制功能及運(yùn)行速度均高于同一檔次的微處理
15、器。</p><p> (5) 一般單片機(jī)內(nèi)無監(jiān)控程序或系統(tǒng)通用管理軟件,只放置有用戶調(diào)試好的應(yīng)用程序。但近年來也開始出現(xiàn)了在片內(nèi)固化有BASIC解釋程序的單片機(jī)。 </p><p> 1.4 單片機(jī)的發(fā)展與趨勢(shì)</p><p> 由于單片機(jī)具有以上特點(diǎn),因此在工業(yè)控制、數(shù)據(jù)采集、智能儀器儀表、智能化設(shè)備和各種家用電器等領(lǐng)域得到
16、廣泛的應(yīng)用。隨著微電子工藝水平的提高,近十年來單片微型計(jì)算機(jī)有了飛速的發(fā)展。歸納起來,它是沿著兩條路發(fā)展的:</p><p> 1.改進(jìn)集成電路制造工藝,提高芯片的工作速度,降低工作電壓和降低功耗:</p><p> 2.在保留共同的CPU體系結(jié)構(gòu),最基本的外設(shè)裝置(如異步串行口,定時(shí)器等)和一套公用的指令系統(tǒng)的基礎(chǔ)上,根據(jù)不同的應(yīng)用領(lǐng)域,把不同的外設(shè)裝置集成到芯片內(nèi),在同一個(gè)家族內(nèi)繁
17、衍滋生出各種型號(hào)的單片機(jī)。另外在單片機(jī)的應(yīng)用中,可靠性是首要因素,為了擴(kuò)大單片機(jī)的應(yīng)用范圍和領(lǐng)域,提高單片機(jī)自身的可靠性是一種有效方法。近年來,單片機(jī)的生產(chǎn)廠家在單片機(jī)設(shè)計(jì)上采用了各種提高可靠性的新技術(shù),主要表現(xiàn)在一下幾點(diǎn):</p><p> (1) EFT(Electrical Fast Transient)技術(shù)</p><p> (2) 低噪音布線技術(shù)及驅(qū)動(dòng)技術(shù)</p&g
18、t;<p> (3) 采用低頻時(shí)鐘</p><p> 總之,單片機(jī)在目前的發(fā)展形勢(shì)下,表現(xiàn)出幾大趨勢(shì):</p><p> 可靠性及應(yīng)用水平越來越高,和internet連接已是一種明顯的走向;</p><p> 所集成的部件越來越多;</p><p><b> 功耗越來越低;</b></p&
19、gt;<p> 和模擬電路結(jié)合越來越多。</p><p><b> 1.5.單片機(jī)選擇</b></p><p> ?、?本系統(tǒng)采用單片機(jī)為控制核心。單片機(jī)/MCU主要有51基本型和52增強(qiáng)型,而相比之下52型比51型功能更為強(qiáng)大,ROM和RAM存儲(chǔ)空間更大,52還兼容51指令系統(tǒng)?;诒鞠到y(tǒng)設(shè)計(jì)內(nèi)容的需要,綜合考慮后,我們選擇單片機(jī)ATME公司的AT
20、89C52為控制核心;主要基于考慮AT89C52是一個(gè)低電壓,高性能CMOS 8位單片機(jī),片內(nèi)含8k bytes的可反復(fù)擦寫的Flash只讀程序存儲(chǔ)器和256 bytes的隨機(jī)存取數(shù)據(jù)存儲(chǔ)器(RAM)、6個(gè)中斷源;時(shí)鐘頻率0-24MHz;器件采用高密度、非易失性存儲(chǔ)技術(shù)生產(chǎn),并兼容標(biāo)準(zhǔn)MCS-51指令系統(tǒng),功能強(qiáng)大。</p><p> (2)AT89C52介紹</p><p> AT8
21、9C52是美國(guó)ATMEL公司生產(chǎn)的低電壓,高性能CMOS 8位單片機(jī),片內(nèi)含8K bytes的可反復(fù)擦寫的只讀程序存儲(chǔ)器(PEROM)和256K bytes的隨機(jī)存取數(shù)據(jù)存儲(chǔ)器,器件采用ATMEL公司的高密度,非易失性存儲(chǔ)技術(shù)生產(chǎn),與標(biāo)準(zhǔn)MCS-51指令系統(tǒng)及8052產(chǎn)品引腳兼容,片內(nèi)置通用8位中央處理器和FLASH存儲(chǔ)單元,功能強(qiáng)大,AT89C52單片機(jī)適合于許多較為復(fù)雜控制應(yīng)用場(chǎng)合。</p><p><
22、b> 主要性能參數(shù):</b></p><p> 與MCS-51產(chǎn)品指令和引腳完全兼容</p><p> 8K字節(jié)可重擦寫FLASH閃存存儲(chǔ)器</p><p> 1000次寫/擦循環(huán)</p><p> 時(shí)鐘頻率:0Hz—24MHz</p><p><b> 三級(jí)加密存儲(chǔ)器</
23、b></p><p> 256字節(jié)內(nèi)部RAM</p><p> 32個(gè)可編程I/O口線 </p><p> 3個(gè)16位定時(shí)/計(jì)數(shù)器 圖3.1 引腳圖</p><p><b> 6個(gè)中斷源</b></p><p> 可編程串行UART通道
24、</p><p> 低功耗的空閑和掉電模式</p><p> 片內(nèi)振蕩器和時(shí)鐘電路</p><p> AT89C52有40個(gè)引腳,32個(gè)外部雙向輸入/輸出(I/O)端口,同時(shí)內(nèi)含2個(gè)外中斷口,3個(gè)16位可編程定時(shí)計(jì)數(shù)器,2個(gè)全雙工串行通信口,2個(gè)讀寫口線,片內(nèi)振蕩器及時(shí)鐘電路,AT89C52可以按照常規(guī)方法進(jìn)行編程,也可以在線編程。同時(shí),AT89C52可降至0
25、Hz的靜態(tài)邏輯操作,并支持兩種軟件可選的節(jié)電工作模式。空閑方式停止CPU的工作,但允許RAM,定時(shí)/計(jì)數(shù)器,串行通信口及中斷系統(tǒng)繼續(xù)工作。掉電方式保存RAM中的內(nèi)容,但振蕩器停止工作并禁止其他所有部件工作直到下一個(gè)硬件復(fù)位。其將通用的微處理器和Flash存儲(chǔ)器結(jié)合在一起,特別是可反復(fù)擦寫的Flash存儲(chǔ)器可有效地降低開發(fā)本.AT89C52有PDIP、PQFP/TQFP及PLCC等三種封裝形式,以適應(yīng)不同產(chǎn)品的需求。</p>
26、<p> AT89C52引腳功能:</p><p><b> ·Vcc:電源電壓</b></p><p><b> ·GND:地</b></p><p> ·P0口:P0口是一組8位漏極開路型雙向I/O口,也即地址/數(shù)據(jù)總線復(fù)用口。作為輸出口用時(shí),每位能吸收電流的方式驅(qū)動(dòng)8
27、個(gè)TTL邏輯門電路,對(duì)端口P0寫“1”時(shí),可作為高阻抗輸入端用。</p><p> 在訪問外部數(shù)據(jù)存儲(chǔ)器或程序存儲(chǔ)器時(shí),這組口線分時(shí)轉(zhuǎn)換地址(低8位)和數(shù)據(jù)總線復(fù)用,在訪問器件激活內(nèi)部上拉電阻。</p><p> 在Flash編程時(shí),P0口接收指令字節(jié),而在程序校驗(yàn)時(shí),輸出指令字節(jié),校驗(yàn)時(shí),要求外接上拉電阻。</p><p> ·P1口:P1是一個(gè)帶
28、內(nèi)部上拉電阻的8位雙向I/O口,P1的輸出緩沖級(jí)可驅(qū)動(dòng)(吸收或輸出電流)4個(gè)TTL邏輯門電路。對(duì)端口寫“1”,通過內(nèi)部的上拉電阻把端口拉到高電平,此時(shí)可作輸入口。作輸入口使用時(shí),因?yàn)閮?nèi)部存在上拉電阻,某個(gè)引腳被外部信號(hào)拉低時(shí)會(huì)輸出一個(gè)電流(IIL)。</p><p> 與AT89C51不同之處是,P1.0和P1.1還可分別作為定時(shí)/計(jì)數(shù)器2的外部計(jì)數(shù)輸入(P1.0/T2)和輸入(P1.1/T2EX),參見表2-
29、1。</p><p> Flash編程和程序校驗(yàn)期間,P1接收低8位地址。表2-1為 P1.0和P1.1的第二功能</p><p> 表3-1 P1.0和P1.1的第二功能</p><p> ·P2口:P2是一個(gè)帶有內(nèi)部上拉電阻的8位雙向I/O口,P2的輸出緩沖級(jí)可驅(qū)動(dòng)(吸收或輸出電流)4個(gè)TTL邏輯門電路。對(duì)端口P2寫“1”,通過內(nèi)部的上拉電阻把端
30、口拉到高電平,同時(shí)可作輸入口,作輸入口使用時(shí),因?yàn)閮?nèi)部存在上拉電阻,某個(gè)引腳被外部信號(hào)拉低時(shí)會(huì)輸出一個(gè)電流(IIL)。</p><p> 在訪問外部程序存儲(chǔ)器或16位地址的外部數(shù)據(jù)存儲(chǔ)器(例如執(zhí)行MOV@DPTR指令)時(shí),P2口送出高8位地址數(shù)據(jù)。在訪問8位地址的外部數(shù)據(jù)存儲(chǔ)器(如執(zhí)行MOV@RI指令)時(shí),P2口輸出P2鎖存器的內(nèi)容。</p><p> Flash編程或校驗(yàn)時(shí),P2亦接
31、收高位地址和一些控制信號(hào)。</p><p> ·P3口:P3口時(shí)一組帶有內(nèi)部上拉電阻的8位雙向I/O口。P3口輸出緩沖級(jí)可驅(qū)動(dòng)(吸收或輸出電流)4個(gè)TTL邏輯門電路。對(duì)P3口寫入“1”時(shí),它們被內(nèi)部上拉電阻拉高并可作為輸入端口。此時(shí),被外部拉低的P3口將用上拉電阻輸出電流(IIL)。</p><p> P3口作為一般的I/O口線外,更重要的用途是它的第二功能,如表2-2所示:
32、</p><p> 此外,P3口還接收一些用于Flash閃速存儲(chǔ)器編程和程序校驗(yàn)的控制信號(hào)。</p><p> ·RST:復(fù)位輸入。當(dāng)振蕩器工作時(shí),RST引腳出現(xiàn)兩個(gè)機(jī)器周期以上高電平將使單片機(jī)復(fù)位。</p><p> ·ALE/ :當(dāng)訪問外部程序存儲(chǔ)器或數(shù)據(jù)存儲(chǔ)器時(shí),ALE(地址鎖存允許)輸出脈沖用于鎖存地址的低8位字節(jié)。一般情況下,AL
33、E仍以時(shí)鐘振蕩頻率的1/6輸出固定的脈沖信號(hào),因此它可對(duì)外輸出時(shí)鐘或用于定時(shí)目的。要注意的是:每當(dāng)訪問外部數(shù)據(jù)存儲(chǔ)器時(shí)將跳過一個(gè)ALE脈沖。</p><p> 表3-2 P3口第二功能</p><p> 對(duì)Flash存儲(chǔ)器編程器件,改引腳還用于輸入編程脈沖( )。</p><p> 如有必要,可通過對(duì)特殊功能寄存器(SFR)區(qū)中的8EH單元的D0位復(fù)位,可禁止
34、ALE操作。該位置復(fù)位后,只有一條MOVX和MOVC指令才能將ALE激活。此外,該引腳會(huì)被微弱拉高,單片機(jī)執(zhí)行外部程序時(shí),應(yīng)設(shè)置ALE禁止位無效。</p><p> · :程序儲(chǔ)存允許( )輸出是外部程序存儲(chǔ)器的讀選通信號(hào),當(dāng)AT89C52由外部程序存儲(chǔ)器取指令(或數(shù)據(jù))時(shí),每個(gè)機(jī)器周期兩次 有效,即輸出兩個(gè)脈沖。在次期間,當(dāng)訪問外部數(shù)據(jù)存儲(chǔ)器,將跳過兩次 信號(hào)。</p><p&g
35、t; · /VPP:外部訪問允許。欲使CPU僅訪問外部程序存儲(chǔ)器(地址為0000H-FFFH), 端必須保持低電平(接地)。需要注意的是:如果加密位LB1被編程,復(fù)位時(shí)內(nèi)部會(huì)鎖存 端狀態(tài)。</p><p> 如端為高電平(接Vcc端),CPU則執(zhí)行內(nèi)部程序存儲(chǔ)器中的指令。</p><p> Flash存儲(chǔ)器編程時(shí),該引腳加上+12V的編程允許電源Vpp,當(dāng)然這必須是該器件是
36、使用12V編程電壓Vpp。</p><p> ·XTAL1:振蕩器反相放大器及內(nèi)部時(shí)鐘發(fā)生器的輸入端。</p><p> ·XTAL2:振蕩器反相放大器的輸出端。</p><p> 1.5 論文的主要內(nèi)容</p><p> 本文首先介紹了本設(shè)計(jì)的現(xiàn)實(shí)意義,然后分析了在國(guó)內(nèi)外的現(xiàn)狀。從整體方案上給出介紹,即先介紹系統(tǒng)
37、整體方案,給出系統(tǒng)方框圖,按模塊化劃分,逐個(gè)模塊介紹,然后總體說明。第三部分是硬件部分設(shè)計(jì),系統(tǒng)詳細(xì)的介紹設(shè)計(jì)中的主控單元----單片機(jī)及各個(gè)模塊,包括傳感器模塊的設(shè)計(jì),數(shù)模轉(zhuǎn)換部分硬件設(shè)計(jì),顯示部分電路設(shè)計(jì),報(bào)警電路的設(shè)計(jì)等等,最后給出整個(gè)系統(tǒng)的電路原理圖。第四部分是軟件部分的設(shè)計(jì),其中涵蓋了,主程序流程圖、A/D轉(zhuǎn)換程序流程圖、顯示程序流程圖、報(bào)警程序流程圖等及相關(guān)流程圖的文字說明。</p><p> 2
38、系統(tǒng)總體方案設(shè)計(jì)</p><p><b> 圖1 設(shè)計(jì)框圖</b></p><p> 如圖1所示,本設(shè)計(jì)共有五部分組成:溫度采集,A/D轉(zhuǎn)換,單片機(jī),顯示電路,告警電路等,其中溫度采集主要由AD590組成,把熱力學(xué)溫度信號(hào)轉(zhuǎn)換成電流信號(hào),然后放大,經(jīng)電阻分壓獲得電壓信號(hào),送入A/D轉(zhuǎn)換電路即ADC0809后得到8位的數(shù)字溫度信號(hào),送入單片機(jī),由單片機(jī)的TXD,RX
39、D串行(高位在前,地位在后)送入顯示電路顯示,并且判斷是否超出設(shè)定范圍,若超出設(shè)定范圍,由單片機(jī)啟動(dòng)告警電路,告警。</p><p> 本設(shè)計(jì)是模擬溫度的顯示,溫度經(jīng)過AD590轉(zhuǎn)換為電流信號(hào),經(jīng)放大器放大后通過電阻轉(zhuǎn)換成電壓信號(hào),進(jìn)入ADC0809進(jìn)行A/D轉(zhuǎn)換成數(shù)字量,送入單片機(jī)后輸出到靜態(tài)顯示部分,顯示其溫度值。在該設(shè)計(jì)中,顯示部分采用74LS164串聯(lián)組成驅(qū)動(dòng)LED部分,這樣既達(dá)到顯示的目的又節(jié)省了I/
40、O口,使設(shè)計(jì)簡(jiǎn)單明了。 由于本設(shè)計(jì)的對(duì)單片機(jī)可靠性要求不高,本著簡(jiǎn)單實(shí)用出發(fā),復(fù)位電路設(shè)計(jì)為上電復(fù)位 。</p><p> ADC0809進(jìn)行A/D轉(zhuǎn)換后,輸出的是并行8位數(shù)據(jù),直接送入單片機(jī)節(jié)省硬件設(shè)施且使編程簡(jiǎn)單,為實(shí)現(xiàn)多路巡回檢測(cè),通過P0.0~P0.2控制74LS373來達(dá)到設(shè)計(jì)目的。</p><p> 其中溫度范圍的計(jì)算原理:首先把A/D轉(zhuǎn)換中電位器順時(shí)針旋到底,即模擬信號(hào)的
41、輸入不衰減,選取兩個(gè)溫度狀態(tài)T1T2,分別測(cè)量出其模擬輸出電壓V1V2;根據(jù)ADC0809的輸入范圍在0到5伏,即可計(jì)算出溫度極限。</p><p> 0伏時(shí)對(duì)應(yīng)的溫度TL:T1-(V1-0)(T2-T1)/(V2-V1)</p><p> 5伏時(shí)對(duì)應(yīng)的溫度TH:T1-(V1-5)(T2-T1)/(V2-V1)</p><p> 本設(shè)計(jì)中近似計(jì)算TH為150℃
42、,TL為-50℃。</p><p> 程序中溫度的計(jì)算原理:首先用溫度范圍除以0到256(即每個(gè)十六進(jìn)制數(shù)的溫度增長(zhǎng)率),然后乘以模擬轉(zhuǎn)換的數(shù)字量,即得到升高的溫度,再和最低溫度相加,就可以得到實(shí)際的溫度值。其公式為:TL+AX(TH-TL)/256</p><p> TL:顯示的最低溫度</p><p> TH:顯示的最高溫度</p><
43、p> AX:模擬電壓所轉(zhuǎn)換的數(shù)字量</p><p> 在A/D轉(zhuǎn)換實(shí)驗(yàn)?zāi)K中模擬信號(hào)輸入端的電位器可調(diào)節(jié)電壓輸入,用以模擬低溫狀態(tài)下的溫度顯示,當(dāng)電位器順時(shí)針旋到底時(shí),輸入信號(hào)不衰減,顯示溫度與室溫相對(duì)應(yīng),用做數(shù)字顯示溫度表。</p><p><b> 3 硬件部分設(shè)計(jì)</b></p><p> 3.1 AT89C51介紹<
44、/p><p> AT89C51是一種低功耗/低電壓、高性能的8位單片機(jī)。片內(nèi)帶有一個(gè)4KB的Flash可編程、可擦除只讀存儲(chǔ)器(EPROM)。它采用了CMOS工藝和ATMEL公司的高密度非易失性存儲(chǔ)器(NURAM)技術(shù),而且其輸出引腳和指令系統(tǒng)都與MSC-51兼容。片內(nèi)的Flash存儲(chǔ)器允許在系統(tǒng)內(nèi)改編程序或用常規(guī)的非易失性存儲(chǔ)器編程器來編程。因此AT89C51/LV51是一種功能強(qiáng)、靈活性高,且價(jià)格合理的單片機(jī),
45、可方便地應(yīng)用在各種控制領(lǐng)域。</p><p> 3.1.1 主要性能</p><p> 4KB可改編程序Flash存儲(chǔ)器(可經(jīng)受1000次的寫入/擦除)</p><p> 全靜態(tài)工作:0Hz~24MHz</p><p><b> 3級(jí)程序存儲(chǔ)器保密</b></p><p> 128
46、15;8字節(jié)內(nèi)部RAM</p><p> 32條可編程I/O線</p><p> 2個(gè)16位定時(shí)器/計(jì)數(shù)器</p><p><b> 6個(gè)中斷源</b></p><p><b> 可編程串行通道</b></p><p><b> 片內(nèi)時(shí)鐘振蕩器</b
47、></p><p> 3.1.2 引腳功能說明</p><p> 圖2是AT89C51的引腳結(jié)構(gòu)圖,下面分別簡(jiǎn)單的介紹這些引腳的功能。</p><p><b> (1) 主電源引腳</b></p><p><b> VCC:電源端。</b></p><p>&l
48、t;b> GND:接地端。</b></p><p> (2) 外接晶體引腳XTAL1和XTAL2</p><p> (3) 控制或與其他電源復(fù)用引腳RST,ALE//PROG,/EA /Vpp</p><p> 圖2 AT89C51的引腳結(jié)構(gòu)</p><p> ALE//PROG:當(dāng)訪問外部存儲(chǔ)器時(shí),ALE(地址鎖
49、存允許)的輸出用于鎖存地址的低位字節(jié)。</p><p> 在對(duì)Flash存儲(chǔ)器編程期間,該引腳還用于輸入編程脈沖(/PROG)。</p><p> /PSEN:程序存儲(chǔ)允許(/PSEN)輸出是外部程序存儲(chǔ)器的讀選通信號(hào)。</p><p> /EA/Vpp:外部訪問允許端。</p><p> 當(dāng)/EA端保持高電平(接Vcc端)時(shí),CPU
50、則執(zhí)行內(nèi)部程序存儲(chǔ)器中的程序。</p><p> 在Flash存儲(chǔ)器編程期間,該引腳也用于施加12V的編程允許電源Vpp(如果選用12V編程)。</p><p> (4) 輸入/輸出引腳P0.0~P0.7,P1.0~P1.7,P2.0~P2.7和P3.0~P3.7。其中P3端口還用于一些復(fù)用功能。</p><p> 3.2 傳感器模塊部分設(shè)計(jì)</p>
51、;<p> AD590是美國(guó)模擬器件公司的電流輸出型溫度傳感器,供電電壓范圍為3~30V,輸出電流223μA(-50ºC)~423μA(+150ºC),靈敏度為1μA/ºC。當(dāng)在電路中串接采樣電阻R時(shí),R兩端的電壓可作為輸出電壓。注意R的阻值不能取得太大,以保證AD590兩端電壓不低于3V。AD590輸出電流信號(hào)傳輸距離可達(dá)到1km以上。作為一種高阻電流源,最高可達(dá)20MΩ,所以它不必考慮選
52、擇開關(guān)或CMOS多路轉(zhuǎn)換器所引入的附加電阻造成的誤差。適用于多點(diǎn)溫度測(cè)量和遠(yuǎn)距離溫度測(cè)量的控制。</p><p> 3.2.1 AD590主要特性</p><p> (1) 流過器件的電流(mA)等于器件所處環(huán)境的熱力學(xué)溫度(開爾文)度數(shù),即: Ir/T= mA/K式中: Ir---流過器件(AD590)的電流,單位為mA;T---熱力學(xué)溫度,單位為K。</p><
53、p> (2) AD590的測(cè)溫范圍為-55°C~+150°C。</p><p> (3) AD590的電源電壓范圍為4V~30V。</p><p> 電源電壓可在4V~6V范圍變化,電流 變化1mA,相當(dāng)于溫度變化1K。AD590可以承受44V正向電壓和20V反向電壓,因而器件反接也不會(huì)被損壞。</p><p> (4) 輸出電阻
54、為710MW。</p><p><b> (5) 精度高。</b></p><p> AD590共有I、J、K、L、M五檔,其中M檔精度最高,在-55°C~+150°C范圍內(nèi),非線性誤差為±0.3°C。</p><p> AD590的封裝形式和基本應(yīng)用電路如圖3:</p><p&
55、gt; a)封裝形式 b)基本應(yīng)用電路</p><p> 圖3 AD590的封裝及基本應(yīng)用電路</p><p> 在本設(shè)計(jì)中,使用AD590對(duì)溫度進(jìn)行采集,即通道AD590把攝氏溫度信號(hào)轉(zhuǎn)換成電流信號(hào),經(jīng)電阻分壓,最總轉(zhuǎn)換成電壓信號(hào),送到ADC0809。其電路如圖4所示。</p><p> 圖4 溫度采
56、集電路圖</p><p> 其中,R1用來調(diào)節(jié)運(yùn)放的輸入電壓,經(jīng)運(yùn)放發(fā)大后達(dá)到ADC0809的轉(zhuǎn)換電壓。</p><p> 3.2.2 與ADC0809接口</p><p> AD590作為溫度采集器件,把熱力學(xué)溫度轉(zhuǎn)換成電流信號(hào),送入運(yùn)算放大器放大,然后經(jīng)電阻轉(zhuǎn)換成電壓信號(hào),送入ADC0809.圖5中給出一路溫度采集電路與ADC0809的方式。要實(shí)現(xiàn)多路溫度
57、的采集,只需在ADC0809的輸入端連接多路溫度采集電路即可。</p><p> 圖5 ADC0809與AD590的接口電路</p><p> 3.3 數(shù)模轉(zhuǎn)換部分硬件設(shè)計(jì)</p><p> 將模擬信號(hào)轉(zhuǎn)換成數(shù)字信號(hào)的電路,稱為模數(shù)轉(zhuǎn)換器(簡(jiǎn)稱A/D轉(zhuǎn)換器或ADC,Analog to Digital Converter);將數(shù)字信號(hào)轉(zhuǎn)換為模擬信號(hào)的電路稱為數(shù)模
58、轉(zhuǎn)換器(簡(jiǎn)稱D/A轉(zhuǎn)換器或DAC,Digital to Analog Converter);A/D轉(zhuǎn)換器和D/A轉(zhuǎn)換器已成為計(jì)算機(jī)系統(tǒng)中不可缺少的接口電路。</p><p> 為確保系統(tǒng)處理結(jié)果的精確度,A/D轉(zhuǎn)換器和D/A轉(zhuǎn)換器必須具有足夠的轉(zhuǎn)換精度;如果要實(shí)現(xiàn)快速變化信號(hào)的實(shí)時(shí)控制與檢測(cè),A/D與D/A轉(zhuǎn)換器還要求具有較高的轉(zhuǎn)換速度。轉(zhuǎn)換精度與轉(zhuǎn)換速度是衡量A/D與D/A轉(zhuǎn)換器的重要技術(shù)指標(biāo)。 隨著集成技術(shù)
59、的發(fā)展,現(xiàn)已研制和生產(chǎn)出許多單片的和混合集成型的A/D和D/A轉(zhuǎn)換器,它們具有愈來愈先進(jìn)的技術(shù)指標(biāo)。這里采用ADC0809芯片來進(jìn)行模數(shù)轉(zhuǎn)換。</p><p> 3.3.1 ADC0809介紹</p><p> ADC0809是8位CMOS逐次逼近式A/D轉(zhuǎn)換器。內(nèi)部有8 路模擬量輸入和8 位數(shù)字量輸出的A/D轉(zhuǎn)換器,它是美國(guó)國(guó)家半導(dǎo)體公司的產(chǎn)品,是目前國(guó)內(nèi)最廣泛的8 位通用的A/D轉(zhuǎn)
60、換的芯片。其結(jié)構(gòu)圖如圖6所示。</p><p> 外部時(shí)鐘輸入端,時(shí)鐘頻率高,A/D轉(zhuǎn)換速度快。允許范圍為10~1280KHZ,典型值為640KHZ,此時(shí),A/D轉(zhuǎn)換時(shí)間為10us。通常由MCS-51型單片機(jī)ALE端直接或分頻后與其相連。當(dāng)MCS-51型單片機(jī)無讀寫外,RAM操作時(shí),ALE信號(hào)固定為CPU時(shí)鐘頻率的1/6,若單片機(jī)外接的晶振為6MHZ,則1/6為1MHZ,A/D轉(zhuǎn)換時(shí)間為64us。</p&
61、gt;<p> 3.3.2 ADC0809各管腳功能</p><p> ADC0809采用雙列直插式封裝,共有28條引腳,如圖7 所示。</p><p> 圖6 ADC0809結(jié)構(gòu)圖</p><p> (1) IN0--IN7:IN0—IN7為8 路模擬電壓輸入線,用于輸入被轉(zhuǎn)換的模擬電壓</p><p> (2)
62、ADDA,ADDB,ADDC: 三位地址輸入端。八路模擬信號(hào)轉(zhuǎn)換選擇同由A,B,C決定。A為低位,C為高位。</p><p> (3) CLOCK:時(shí)鐘信號(hào)。最高允許值為640kHz。</p><p> (4) D0--D7:數(shù)字量輸出端,A/D轉(zhuǎn)換的結(jié)果由這幾個(gè)端口輸出。</p><p> 圖7 ADC0809引腳圖</p><p>
63、 (5) OE:A/D轉(zhuǎn)換結(jié)果輸出允許控制端,當(dāng)OE端為高電平時(shí),允許將A/D轉(zhuǎn)換結(jié)果從D0~D7端輸出。</p><p> (6) ALE: 地址鎖存允許信號(hào)。八路模擬通道地址由A,B,C輸入在ADC0809的ALE信號(hào)有效時(shí),將該八路地址鎖存。</p><p> (7) START: 啟動(dòng)A/D轉(zhuǎn)換信號(hào)。當(dāng)START端輸入一個(gè)正脈沖時(shí),立即啟動(dòng)ADC0809進(jìn)行A/D轉(zhuǎn)換。<
64、;/p><p> (8) EOC: A/D轉(zhuǎn)換結(jié)束信號(hào),是芯片的輸出信號(hào)。轉(zhuǎn)換開始后,EOC信號(hào)變低;轉(zhuǎn)換結(jié)束時(shí),EOC返回高電平。這個(gè)信號(hào)可以作為A/D轉(zhuǎn)換器的狀態(tài)信號(hào)來查詢,也可以直接用作中斷請(qǐng)求信號(hào)。</p><p> (9) VREF+,VREF-:正負(fù)基準(zhǔn)電壓輸入端。</p><p> (10) VCC,GND :正電源電壓端和地端。</p>
65、<p> 3.3.3 硬件連接電路</p><p> ADC0809與89C51連接可采用查詢方式,也可以采用中斷方式。圖8所示 為中斷方式連接電路圖。由于ADC0809片內(nèi)有三態(tài)輸出鎖存器,因此,可直接與89C51接口。</p><p> 這里將ADC0809作為一個(gè)外部擴(kuò)展并行I/O口,采用線選法尋址。由P2.0和/WR聯(lián)合控制啟動(dòng)轉(zhuǎn)換信號(hào)端(START)和ALE端
66、,低三位地址線加到ADC0809的ADDA、ADDB和ADDC端,所以,選中ADC0809的IN0通道的地址為0FEFBH。</p><p> 啟動(dòng)ADC0809的工作過程是:先送通道號(hào)地址到ADDA、ADDB和ADDC;由ALE信號(hào)鎖存通道號(hào)地址后,讓START有效;啟動(dòng)A/D轉(zhuǎn)換,即執(zhí)行“MOVX @DPTR,A”。</p><p> 指令產(chǎn)生/WR信號(hào),使ALE和START有效;
67、鎖存通道號(hào)并啟動(dòng)A/D轉(zhuǎn)換。A/D轉(zhuǎn)換完畢,EOC端發(fā)出一正脈沖,申請(qǐng)中斷。在中端服務(wù)程序中,“MOV A,@DPTR”指令產(chǎn)生/RD信號(hào),使OE端有效,打開輸出鎖存器三態(tài)門,8位數(shù)據(jù)便讀入到CPU中。</p><p> ADC0809的時(shí)鐘取自89C51的ALE經(jīng)二分頻后的信號(hào)。當(dāng)A/D轉(zhuǎn)換完畢,89C51讀取轉(zhuǎn)換后的數(shù)字量時(shí),須使用“MOVX A,@DPTR”指令。這樣就完成了ADC0809與89C51的連
68、接及工作過程。</p><p> 圖8 ADC0809與單片機(jī)的連接圖</p><p> 3.4 LED顯示電路的設(shè)計(jì)</p><p> 在單片機(jī)應(yīng)用系統(tǒng)中,如果需要顯示的內(nèi)容只有數(shù)碼和某些字母,使用LED數(shù)碼管是一種較好的選擇。LED數(shù)碼管顯示清晰、成本低廉、配置靈活,與單片機(jī)接口簡(jiǎn)單易行。</p><p> 3.4.1 LED數(shù)
69、碼管</p><p> LED數(shù)碼管是由發(fā)光二極管作為顯示字段的數(shù)碼型顯示器件。圖9中a為0.5inLED數(shù)碼管的外形和引腳圖,其中七只發(fā)光二極管分別對(duì)應(yīng)a~g筆段構(gòu)成“”字形另一只發(fā)光二極管Dp作為小數(shù)點(diǎn)。因此這種LED顯示器稱為七段數(shù)碼管或八段數(shù)數(shù)碼。LED數(shù)碼管按電路中的連接方式可以分為共陰型和共型兩大類,如圖9中b、c所示。共陽(yáng)型是將各段發(fā)光二極管的正極連在一起,作為公共端COM,公共端COM接高電平,
70、a~g、Dp各筆段通過限流電阻接控制端。某筆段控制端低電平時(shí),該筆段發(fā)光,高電平時(shí)不發(fā)光。控制某幾段筆段發(fā)光,就能顯示出某個(gè)數(shù)碼或字符。共陰型是將各數(shù)碼發(fā)光二極管的負(fù)極連在一起,作為公共端COM接地,某筆段通過限流電阻接高電平時(shí)發(fā)光。</p><p> LED數(shù)碼管按其外形尺寸有多種形式,使用較多的是0.5in和0.8in;按顯示顏色也有多種形式,主要有紅色和綠色;按亮度強(qiáng)弱可分為高亮和普亮,指通過同樣的電流顯
71、示亮度不一樣,這是因發(fā)光二極管的材料不一樣而引起的。</p><p> LED數(shù)碼管的使用與發(fā)光二極管相同,根據(jù)其材料不同正向壓降一般為1.5~2V額定電流為10mA,最大電流為40mA。靜態(tài)顯示時(shí)取10mA為宜,動(dòng)態(tài)掃描顯示可加大,可脈沖電流,但一般不超過40mA。</p><p> a)外形和引腳 b)共陰極結(jié)構(gòu) c)共陽(yáng)極結(jié)構(gòu) </p
72、><p> 圖9 數(shù)碼管及其結(jié)構(gòu) </p><p> 3.4.2 LED數(shù)碼管編碼方式</p><p> 當(dāng)LED數(shù)碼管與單片機(jī)相聯(lián)時(shí),一般將LED數(shù)碼管的各筆段引腳a、b、…、g、Dp按某一順序接到MCS-51型單片機(jī)某一個(gè)并行I/O口D0、D1、…、D7,當(dāng)該I/O口輸出某一特定數(shù)據(jù)時(shí),就能使LED數(shù)碼管顯示出某個(gè)字符。例如要
73、使共陽(yáng)極LED數(shù)碼管顯示“0”,則a、b、c、d、e、f各筆段引腳為低電平,g和Dp為高電平。</p><p> LED數(shù)碼管編碼方式有多種,按小數(shù)點(diǎn)計(jì)否可分為七段碼和八段碼;按共陰共陽(yáng)可分為共陰字段碼和共陽(yáng)字段碼,不計(jì)小數(shù)點(diǎn)的共陰字段碼與共陽(yáng)字段碼互為反碼;按a、b、…、g、Dp編碼順序是高位在前,還是低位在前,又可分為順序字段碼和逆序字段碼。甚至在某些特殊情況下將a、b、…、g、Dp順序打亂編碼。表1為共陰
74、和共陽(yáng)LED數(shù)碼管幾種八段編碼表。這里采用共陰極數(shù)碼管的編碼方式。</p><p> 表1 共陰和共陽(yáng)LED數(shù)碼管幾種八段編碼</p><p> 3.4.3 LED數(shù)碼管顯示方式和典型應(yīng)用電路</p><p> LED數(shù)碼管顯示電路在單片機(jī)應(yīng)用系統(tǒng)中可分為靜態(tài)顯示方式和動(dòng)態(tài)顯示方式。在本設(shè)計(jì)中,使用的是靜態(tài)顯示方式,這里主要介紹靜態(tài)顯示方式及其電路連接。靜
75、態(tài)顯示在本設(shè)計(jì)中如圖10所示。</p><p> 一般情況,在靜態(tài)顯示方式下,每一位顯示器的字段需要一個(gè)8位I/O口控制,而且該I/O口須有鎖存功能,N位顯示器就需要N個(gè)8位I/O口,公共端可直接接+5V(共陽(yáng))或接地(共陰)。顯示時(shí),每一位字段碼分別從I/O控制口輸出,保持不變直至CPU刷新顯示為止。也就是各字段的亮滅狀態(tài)不變。此種情況下,靜態(tài)顯示方式編程較簡(jiǎn)單,但占用I/O口線多,即軟件簡(jiǎn)單、硬件成本高,一
76、般適用顯示位數(shù)較少的場(chǎng)合。但是,利用74LS164串入并處的特點(diǎn)設(shè)計(jì)的靜態(tài)顯示,可以輕而易舉的解決靜態(tài)顯示占用I/O口多的問題,同時(shí),編程也沒動(dòng)態(tài)顯示那么復(fù)雜!</p><p><b> 圖10 顯示電路圖</b></p><p> 圖10 是該應(yīng)用的典型電路圖,也是在本設(shè)計(jì)中要用到的顯示電路,圖中CLOCK 為74LS164提供其工作的脈沖信號(hào),SERIAL N
77、UM是從單片機(jī)輸出的要顯示的串行數(shù)據(jù)。</p><p> 3.5 報(bào)警電路的設(shè)計(jì)</p><p> 告警在設(shè)計(jì)電路中,被廣泛的應(yīng)用,簡(jiǎn)單實(shí)用。當(dāng)溫度、壓力、轉(zhuǎn)速等等超出了設(shè)置的限度,有可能對(duì)設(shè)備、人或其他造成危害;所以,當(dāng)檢測(cè)到溫度、壓力、轉(zhuǎn)速等大于期望的范圍時(shí),由相關(guān)電路觸發(fā)三極管的基極,使三極管導(dǎo)通,繼電器吸合,指示燈亮,同時(shí)蜂鳴器響,發(fā)出告警信號(hào)。其電路如圖11所示。</p
78、><p> 圖11 告警電路 </p><p> 在本設(shè)計(jì)中,告警電路與單片機(jī)的連接如圖12所示 ,單片機(jī)把接收來的數(shù)字溫度信號(hào)與所設(shè)置的溫度信號(hào)比較,一旦發(fā)現(xiàn)超出了設(shè)定的范圍,由單片機(jī)的P3.4引腳置高電平,驅(qū)動(dòng)三極管(9013),使繼電器吸合,二極管亮,同時(shí),蜂鳴器響,發(fā)出告警信號(hào)。該報(bào)警電路設(shè)計(jì)簡(jiǎn)單,成本低。<
79、/p><p> 圖12報(bào)警電路與單片機(jī)接口</p><p><b> 3.6 整體電路圖</b></p><p><b> 圖13系統(tǒng)電路圖</b></p><p> 系統(tǒng)電路圖由前面介紹的各個(gè)模塊硬件的綜合。配以軟件,即可實(shí)現(xiàn)本設(shè)計(jì)的功能。圖13所示為該設(shè)計(jì)的系統(tǒng)電路圖。</p>
80、<p><b> 4 軟件部分設(shè)計(jì)</b></p><p> 4.1 A/D轉(zhuǎn)換程序流程圖</p><p> 圖14 數(shù)模轉(zhuǎn)換部分流程</p><p> 數(shù)模轉(zhuǎn)換由ADC0809來完成,啟動(dòng)系統(tǒng)后,首先對(duì)其進(jìn)行初始化,然后由單片機(jī)的P0口送出通道地址,74LS373鎖存同時(shí)送給ADC0809的ADDA、ADDB、ADDC來選
81、通采集溫度的通道號(hào);接著單片機(jī)發(fā)出啟動(dòng)A/D轉(zhuǎn)換信號(hào),開始轉(zhuǎn)換。轉(zhuǎn)換完畢,ADC0809的EOC發(fā)出轉(zhuǎn)換完成信號(hào),告訴單片機(jī),單片機(jī)進(jìn)入中斷系統(tǒng)。循環(huán)往復(fù)。其流程圖如圖14所示。</p><p> 4.2 顯示程序流程圖</p><p> 當(dāng)數(shù)字信號(hào)送到單片機(jī)后,計(jì)算偏移量,查表,然后執(zhí)行串行傳送指令,把數(shù)字溫度信號(hào)一位一位的發(fā)送到串入并出的74LS164,驅(qū)動(dòng)LED顯示采樣的溫度。其
82、流程圖如圖15所示。</p><p> 圖15 顯示子程序流程圖</p><p> 4.3 報(bào)警程序流程圖</p><p> ADC0809把模擬溫度信號(hào)轉(zhuǎn)換成數(shù)字信號(hào)送到單片機(jī)的存儲(chǔ)后,程序中報(bào)警子程序把數(shù)字溫度信號(hào)(即當(dāng)前溫度信號(hào))與設(shè)定的溫度信號(hào)進(jìn)行比較,當(dāng)當(dāng)前溫度超出了設(shè)定的范圍,啟動(dòng)報(bào)警電路,即由單片機(jī)的P3.4輸出高電平,使晶體管工作,從而使繼電器
83、吸合,報(bào)警指示燈亮,蜂鳴器響。其流程圖如圖16所示。</p><p> 圖16 報(bào)警子程序流程圖</p><p> 4.4 主程序流程圖</p><p> 在本設(shè)計(jì)中,單片機(jī)處于主導(dǎo)地位,由它控制著整個(gè)系統(tǒng)的有序的工作。系統(tǒng)正常運(yùn)行之前,單片機(jī)要先把程序初始化,使各個(gè)模塊處于待工作狀態(tài),準(zhǔn)備相關(guān)工作。然后,單片機(jī)的P0口送出通道地址,對(duì)ADC0809初始化,7
84、4LS373鎖存通道號(hào),單片機(jī)發(fā)出啟動(dòng)A/D轉(zhuǎn)換信號(hào),開始模數(shù)轉(zhuǎn)換,轉(zhuǎn)換結(jié)束后得到8位數(shù)字溫度信號(hào),此時(shí),ADC0809向單片機(jī)發(fā)出轉(zhuǎn)換結(jié)束信號(hào)。由單片機(jī)把數(shù)字溫度信號(hào)接收到設(shè)置的存儲(chǔ)處。</p><p> 圖17 主程序流程圖</p><p> 接著,由報(bào)警程序?qū)崿F(xiàn)當(dāng)前溫度值與預(yù)先設(shè)置的溫度值進(jìn)行比較,當(dāng)超出了設(shè)定范圍,啟動(dòng)報(bào)警電路,告警;否者,根據(jù)當(dāng)前溫度值計(jì)算出其偏移量,查表,獲
85、得與之相對(duì)應(yīng)的譯碼值;最后,由P3.3口在P3.4提供移位脈沖下把譯碼值一位一位的送到74LS164中,驅(qū)動(dòng)相應(yīng)的LED顯示。單片循環(huán)發(fā)出通道號(hào),巡回得到相關(guān)通道的溫度信號(hào),然后顯示出來。這樣就完成了整個(gè)流程。其流程圖如圖17 所示。</p><p><b> 結(jié)束語(yǔ)</b></p><p> 在本設(shè)計(jì)中,主要是對(duì)多點(diǎn)溫度進(jìn)行檢測(cè),而且在單片機(jī)作為主控單元下,進(jìn)行
86、一些智能操作,如溫度顯示、巡回檢測(cè)、超量程告警等等。研究?jī)?nèi)容主要分為數(shù)據(jù)采集、模數(shù)轉(zhuǎn)換、單片機(jī)系統(tǒng)設(shè)計(jì)、軟件編程幾個(gè)方面。針對(duì)這幾個(gè)方面,將研究模塊化,在邏輯上按先后順序?qū)γ總€(gè)模塊進(jìn)行分別的研究,并對(duì)每一個(gè)模塊進(jìn)行獨(dú)立的測(cè)試,在測(cè)試達(dá)到要求之后,再將所有模塊有機(jī)的整合為一個(gè)整體,然后進(jìn)行整體調(diào)整測(cè)試。最總完成整個(gè)設(shè)計(jì)方案。</p><p> 該設(shè)計(jì)與傳統(tǒng)的PID調(diào)節(jié)相比,用軟件取代了部分硬件,節(jié)約了硬件資源,減
87、小了連線的復(fù)雜程度,提高了系統(tǒng)的性能;顯示部分采用數(shù)據(jù)的串行傳輸連接且為靜態(tài)顯示,這樣既減少了硬件間的連線,節(jié)約了I/O口,又減少了軟件的編程難度;數(shù)碼管的靜態(tài)顯示方式與比動(dòng)態(tài)顯示,亮度高;同時(shí),在該系統(tǒng)中設(shè)置了超量程報(bào)警電路,當(dāng)檢測(cè)到當(dāng)前溫度 超出了設(shè)定的范圍后,報(bào)警電路就會(huì)被啟動(dòng),減低不必要的損失。但是,在本設(shè)計(jì)中,設(shè)定的溫度值一旦確定,要想修改,就要重新編程下載,較為麻煩;顯示部分采用數(shù)據(jù)串行傳輸,速度相對(duì)來說比較慢;AD590溫
88、度采集模塊采集到的溫度信號(hào)為模擬溫度信號(hào),輸入單片機(jī)前要進(jìn)行數(shù)模轉(zhuǎn)換,需增加數(shù)模轉(zhuǎn)換模塊,添加硬件間的連線。</p><p> 在設(shè)計(jì)過程當(dāng)中,遇到很多問題,如初始階段設(shè)計(jì)思路不清晰;ADC0809與單片機(jī)硬件聯(lián)系結(jié)束后,進(jìn)行軟件測(cè)試時(shí),無法使二者協(xié)同工作;溫度超出設(shè)置值時(shí),報(bào)警電路不報(bào)警;在編程過程中,求數(shù)據(jù)偏移量時(shí),不清楚如何下手;溫度采集模塊采集到的溫度信號(hào)為電壓信號(hào),不清楚如何設(shè)置才能和ADC0809配
89、合使得轉(zhuǎn)換的結(jié)果更準(zhǔn)確等等,最后在老師的指導(dǎo)和同學(xué)的幫助下,都一一得以解決。</p><p> 為進(jìn)一步提高系統(tǒng)的性能,可以增加相應(yīng)的鍵盤模塊,配合相應(yīng)的軟件,完成隨時(shí)對(duì)溫度設(shè)定范圍的修改;同時(shí),把溫度采集模塊(AD590)和模數(shù)轉(zhuǎn)換模塊(ADC0809)用DS18B20或其它的相關(guān)芯片代替,這樣既達(dá)到了減少硬件間的連線,又提高了性能的穩(wěn)定性和減小了調(diào)試的麻煩;除此之外,還可以增加顯示部分的數(shù)碼管,用來顯示設(shè)定
90、的溫度范圍;增加相應(yīng)的指示模塊用來顯示當(dāng)前溫度采集的通道。</p><p><b> 參考文獻(xiàn)</b></p><p> [1] 李朝青.單片機(jī)原理及接口技術(shù)(第三版)[M」.北京:北京航空航天大學(xué)出版社,2005.</p><p> [2] 張靖,劉少?gòu)?qiáng).檢測(cè)技術(shù)與系統(tǒng)設(shè)計(jì)[M] 北京:中國(guó)電力出版社 2002</p>&
91、lt;p> [3] 賴壽宏 微型計(jì)算機(jī)控制技術(shù)[M].北京: 機(jī)械工業(yè)出版社 2004</p><p> [4] 劉祖潤(rùn),胡俊達(dá) 畢業(yè)設(shè)計(jì)指導(dǎo) [M] 北京機(jī)械工業(yè)出版社 1996</p><p> [5] 何立民 單片機(jī)應(yīng)用技術(shù)選編[M] 北京:北京航空航天大學(xué)出版社 1993</p><p> [6] 沙占友 智能化集成溫度傳感器原理與應(yīng)用 [M]
92、北京:機(jī)械工業(yè)出版社 2002</p><p> [7] 李蘭友,王勇才,傅景義 單片機(jī)開發(fā)應(yīng)用十例 [M]北京:電子工業(yè)出版社 1994</p><p> [8] 余發(fā)山,王福忠 單片機(jī)原理及應(yīng)用技術(shù) [M] 江蘇:中國(guó)礦業(yè)大學(xué) 2003</p><p> [9] 張西 基于MCS-51單片機(jī)的測(cè)溫系統(tǒng) [D] 測(cè)控技術(shù)與設(shè)備學(xué)報(bào) 2002 </p&g
93、t;<p> [10] 馬江濤 單片機(jī)溫度控制系統(tǒng)的設(shè)計(jì)及實(shí)現(xiàn) [M] 計(jì)算機(jī)測(cè)量與控制學(xué)報(bào) 2004 Vol(12)</p><p> [11] 胡漢才 單片機(jī)原理及其接口技術(shù)[M] 北京:清華大學(xué)出版社 1996</p><p> [12] 何立民 MCS-51系列單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)系統(tǒng)配置與接口技術(shù) [M] 北京航空航天大學(xué)出版社 1990</p>
94、<p> [13] 高鵬 ,安濤, 寇懷成 Protel99入門與提高[M] 北京:人民郵電出版社2000</p><p> [14] 張靖,劉少?gòu)?qiáng).檢測(cè)技術(shù)與系統(tǒng)設(shè)計(jì)[M] 北京:中國(guó)電力出版社 2002</p><p> [15] 賴壽宏 微型計(jì)算機(jī)控制技術(shù)[M] 北京:機(jī)械工業(yè)出版社 2004</p><p> [16] 劉祖潤(rùn),胡俊達(dá) 畢業(yè)
95、設(shè)計(jì)指導(dǎo) [M ]機(jī)械工業(yè)出版社 1996</p><p> [17] TOPSwitch Flyback Transformer Construction Guide 1996</p><p> [18] Gao You Tang ,Zhu Qing Hui,Electronic technology fundamentals [M] 西安:西安地圖出版社 2003</p>
96、;<p><b> 附錄</b></p><p><b> 源程序:</b></p><p> LOWTEMP EQU -50 ; A/D 0</p><p> HIGHTEMP EQU 150 ; A/D 255</p&
97、gt;<p> ADPORT EQU 0FEFBH ;A/D端口地址</p><p> LEDBUF EQU 30H ;置存儲(chǔ)區(qū)首址</p><p> TEMP EQU 40H ;置緩沖區(qū)首址</p><p> CURTEMP
98、 EQU 60H ;</p><p> DIN BIT 0B0H ;置串行輸出口</p><p> CLK BIT 0B1H ;置時(shí)鐘輸出口</p><p> ORG 0000H</p><p> LJMP
99、 START</p><p> LEDMAP: DB 3FH,6,5BH,4FH,66H,6DH ;0,1,2,3,4,5</p><p> DB 7DH,7,7FH,6FH,77H,7CH ;6,7,8,9,A,B</p><p> DB 58H,5EH,7BH,71H,0,40H ;C
100、,D,E,F(xiàn),“”- </p><p> DB 63H,39H ;℃</p><p> DISPLAY: ;溫度顯示</p><p> MOV R0,#LEDBUF</p><p>
101、 MOV R1,#TEMP</p><p> MOV R2,#3 ;3個(gè)LED</p><p> DP10: MOV DPTR,#LEDMAP ;段碼地址</p><p> MOV A,@R0 ;取段碼偏移量</p>
102、;<p> MOVC A,@A+DPTR ;取段碼</p><p> MOV @R1,A</p><p> INC R0</p><p> INC R1</p><p> DJNZ R2,DP10 ;段碼是否取完</
103、p><p> MOV R0,#TEMP</p><p> MOV R1,#3</p><p> DP12: MOV R2,#8</p><p> MOV A,@R0 ;取段碼</p><p> DP13: RLC A
104、 ;段碼左移</p><p> MOV DIN,C</p><p> CLR CLK ;發(fā)送一個(gè)移位脈沖</p><p> SETB CLK</p><p> DJNZ R2,DP13 ;8個(gè)
105、段碼是否輸出完</p><p> INC R0</p><p> DJNZ R1,DP12 ;3個(gè)LED的段碼是否都輸出完</p><p><b> RET</b></p><p> DISPLAYRESULT:
106、 ;將正負(fù)值區(qū)分顯示</p><p> MOV A, CURTEMP ;實(shí)際值</p><p> JNB Acc.7, GE0 ;判斷是正是負(fù)</p><p> SETB P3.4 ;小于0°C告警</p&
107、gt;<p> MOV LEDBUF, #11H ;顯示“-”號(hào)</p><p> DEC A ;求補(bǔ)碼</p><p><b> CPL A</b></p><p> JMP GOON</p&
108、gt;<p><b> GE0:</b></p><p> MOV LEDBUF, #10H ;顯示“ ”</p><p> MOV RO,A</p><p> CJNZ A,#32H,WH</p><p> WH: JC HW<
109、;/p><p> HW: SETB P3.4 ;大于50°C告警</p><p> MOV A, RO</p><p> GOON: ;存入顯示內(nèi)容</p><p> MOV B
110、, #10 </p><p><b> DIV AB</b></p><p> MOV LEDBUF+1, A</p><p> MOV A, B</p><p> MOV LEDBUF+2, A</p><p>
111、 MOV LEDBUF+3,#12H</p><p> MOV LEDBUF+4,#13H</p><p><b> RET</b></p><p><b> READAD:</b></p><p> MOV DPTR, #ADPORT</p><p&
112、gt;<b> CLR A</b></p><p> MOVX @DPTR,A ;START A/D</p><p> JNB P3.3,$</p><p> MOVX A, @DPTR ;讀入結(jié)果</p>&l
113、t;p><b> RET</b></p><p> READTEMP: ;溫度的計(jì)算</p><p> CALL READAD</p><p> MOV B, #(HIGHTEMP-LOWTEMP)</p><p>
114、; MUL AB</p><p> MOV A, B ; /256</p><p> ADD A, #LOWTEMP</p><p> MOV CURTEMP, A</p><p><b> RET</b>&l
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 畢業(yè)設(shè)計(jì)--多點(diǎn)溫度巡回檢測(cè)系統(tǒng)
- 畢業(yè)設(shè)計(jì)--多點(diǎn)溫度巡回檢測(cè)系統(tǒng)的設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)論文多點(diǎn)溫度巡回檢測(cè)系統(tǒng)
- 畢業(yè)設(shè)計(jì)論文多點(diǎn)溫度巡回檢測(cè)系統(tǒng)
- gsm技術(shù)多點(diǎn)溫度巡回檢測(cè)系統(tǒng)設(shè)計(jì)
- 多點(diǎn)溫度檢測(cè)系統(tǒng)畢業(yè)設(shè)計(jì)
- 基于模糊控制的多點(diǎn)溫度巡回檢測(cè)系統(tǒng)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)-基于單片機(jī)的多點(diǎn)溫度檢測(cè)系統(tǒng)的設(shè)計(jì)
- 多點(diǎn)溫度檢測(cè)系統(tǒng)設(shè)計(jì)
- 畢業(yè)論文(設(shè)計(jì))多點(diǎn)溫度檢測(cè)系統(tǒng)的設(shè)計(jì)
- 畢業(yè)論文——多點(diǎn)溫度檢測(cè)系統(tǒng)設(shè)計(jì)
- 多點(diǎn)溫度檢測(cè)系統(tǒng)的設(shè)計(jì)畢業(yè)論文
- 畢業(yè)論文——多點(diǎn)溫度檢測(cè)系統(tǒng)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)---基于at89c51的多路溫度巡回檢測(cè)系統(tǒng)
- 基于gsm技術(shù)多點(diǎn)溫度巡回檢測(cè)系統(tǒng)課題論文
- 溫室多點(diǎn)溫度采集系統(tǒng)設(shè)計(jì)——硬件設(shè)計(jì)【畢業(yè)設(shè)計(jì)】
- 多點(diǎn)溫度檢測(cè)系統(tǒng)設(shè)計(jì).doc
- 溫室多點(diǎn)溫度采集系統(tǒng)設(shè)計(jì)--軟件設(shè)計(jì)【畢業(yè)設(shè)計(jì)】
- 多點(diǎn)溫度檢測(cè)系統(tǒng)課程設(shè)計(jì)
- 電力載波多點(diǎn)溫度監(jiān)控畢業(yè)設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論