基于單片機的溫度巡檢系統(tǒng)的設(shè)計_第1頁
基于單片機的溫度巡檢系統(tǒng)的設(shè)計_第2頁
基于單片機的溫度巡檢系統(tǒng)的設(shè)計_第3頁
基于單片機的溫度巡檢系統(tǒng)的設(shè)計_第4頁
基于單片機的溫度巡檢系統(tǒng)的設(shè)計_第5頁
已閱讀5頁,還剩42頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

目錄摘要從機進行溫度采集,收集測量數(shù)據(jù),并對測量結(jié)果(包括歷史數(shù)據(jù)進行整理,顯示和打印。主控機與各從機之間能夠相互聯(lián)系、相互協(xié)調(diào),從而達到了系統(tǒng)整體統(tǒng)一,和諧的控制效多路溫度檢測系統(tǒng)以8051單片機系統(tǒng)為核心,能對多點的溫度進行實時控制巡檢。各檢測單元(從機能獨立完成各自功能,根據(jù)主控機的指令對溫度進行實時或定時采集,測量結(jié)果不僅能在本地儲存,顯示,而且可以利用單片機串行口,通過RS-485總線及通信協(xié)議將采集的數(shù)據(jù)傳送到主控機,進行進一步的分析,存檔,處理和研究。主控機負責控制指令發(fā)送,控制各個果。系統(tǒng)檢測溫度范圍為0℃--400℃,檢測分辨率±0.1℃,使用RS-485串行總線進行傳輸,MAX485驅(qū)動芯片進行電平轉(zhuǎn)換,傳送距離大于1200m,抗干擾能力強,各檢測器單元可顯示檢測的溫度,設(shè)計并制造了各檢測器及主控器所用的直流穩(wěn)壓電源。由單相220V交流電壓供電。關(guān)鍵詞:Pt100,多機遠程通信,8051單片機,儀器放大器620,模數(shù)轉(zhuǎn)換器,AbstractThemultichanneltemperatureexaminationsystemtake8,051microcomputersystemsasacore.Itcaninspectandcontrollthetemperatureofmanyspots.Eachexaminationunit(thelittermachinecancompleterespectivefunctionindependently.Itcancollectthetemperatureinatimeaccordingtotheinstructionofthemajorcontrollingmachine.Themeasurementresultcanbestoredanddemonstratedinlocalplace.Moreover,itcanusethemouthofthemicrocomputertotransferthedatagatheredtothemajorcontrollingmachinethroughtheRS-485mainlineandthecorrespondenceagreement.Thenwecanhavethefurtheranalysisandthearchiveandprocessingandtheresearch.Themajorcontrollingmachineisresponsiblefortransmissingthecommand,controllingthetemperaturegatheringoftheothermachines.Itcancollectthesurveyingdata.Itcanalsoreorganizeanddemonstrationandthenprintthemeasurementresult(includinghistoricaldata.Themajorcontrollingmachinecanrelatewithothermachineandcoordinatewithothermachine.Thusithasachievedtheharmoniouseffectofthewholesystem。Thissystemhasrealized:1thetemperatureoftheexaminationrangefrom0℃to400℃.2examinationresolution±0.1℃.3usingtheRS-485serialmainlinetotransfer.TheMAX485makechiptransformandthetransmissiondistanceislonggerthan1200m,theantijammingabilityisstrong.4Eachdetectingunitcandemonstratethetemperatureoftheexamination.5designandmakethedetectorsandthecurrentdirectvoltage-stabilizedsourcethatthemajorcontrollingmachineuses。Itcomesfromthesinglealternatingvoltagepowerof220vKeywords:Pt100,microcomupter8051,AD620,MAX187第一章概述1.1課題的提出測量是運用專門的工具,根據(jù)物理、化學、生物等原理,通過試驗和計算找到被測量的量值。測量的目的就是盡可能準確的及時收集被測對象的狀態(tài)信息,以便對生產(chǎn)過程進行正確的控制。測量是人類人士和改造世界的一種不可缺少和替代的手段。歷史事實也已證明:科學的進步,生產(chǎn)的發(fā)展和進步是相互依賴、相互促進的。測量技術(shù)是一個國家的科學技術(shù)的水平的反應(yīng)。科學和技術(shù)的發(fā)展是與測量水平并行進步,相互匹配的。事實上,可以說,評價一個國家的科技動態(tài),最簡單快速的辦法就是評價這個國家的測量技術(shù)以及測量數(shù)據(jù)是如何被利用的。在暖通空調(diào)專業(yè)中,供暖、空調(diào)、制冷效果檢驗;建筑熱工特性的測量;新型建筑材料的特性檢驗;建筑節(jié)能的研究;空暖熱網(wǎng),通風、空調(diào)系統(tǒng)、燃氣配管網(wǎng)、給排水網(wǎng)等系統(tǒng)的運行和特性研究中,都需要對溫度、壓力等參數(shù)進行測量。這些領(lǐng)域的測量具有本身獨特的特點,例如在供暖網(wǎng)的系統(tǒng)中,它存在如下特點:(1作用半徑大,測點分散。對于一個城市的集中供暖網(wǎng)的系統(tǒng),它的覆蓋面廣,系統(tǒng)大,。這樣測量供暖網(wǎng)不通點的運行參數(shù)時,測點就相當分散。(2管網(wǎng)運行參數(shù)需要分時記錄。要對管網(wǎng)的運行進行分析研究,管網(wǎng)的分時運行參數(shù)的測量和記錄非常重要。一般要求在管網(wǎng)運行的期間,按一定的順序檢測和記錄運行參數(shù)。此外還有節(jié)能建筑的效果檢驗,它需要對節(jié)能建筑和非節(jié)能建筑的功耗進行比較,這同樣需要對建筑物內(nèi)的房間進行分時的測量和記錄。但它也存在如同供暖效果檢驗的一些困難。另外一些別的專業(yè)的科學試驗中,溫度也是非常重要的一個測量參數(shù)。綜上所述,由于溫度的測量存在上述的問題,就需要由一種方便使用的測量儀表,能進行時時的檢測,能進行數(shù)據(jù)的記錄,長期自動運行不需要人為的干預。在這種情況下,本文設(shè)計了一種方便使用的數(shù)碼顯示溫度數(shù)據(jù)采集器(以下簡稱溫度數(shù)據(jù)采集器分別采用Pt100鉑電阻和熱電偶作為溫度傳感器來采集數(shù)據(jù)。并運用三線制接法和冷端補償?shù)姆椒ㄓ脕矸謩e消除熱電阻和熱電偶的測量誤差。本溫度數(shù)據(jù)采集器在設(shè)計時,為了滿足實時檢測的要求,采用16路傳感器輪流檢測,從而實現(xiàn)溫度巡檢的實時數(shù)據(jù)采集。微處理器采用穩(wěn)壓電源進行供電,這樣可以省去電池供電所帶來的如工作時間有限電壓不穩(wěn)定以及電壓的下降而影響整個系統(tǒng)的工作精度和穩(wěn)定性的問題。1.2溫度概況溫度是一個很重要的物理參數(shù),自然界中任何物理?;瘜W過程都緊密地與溫度相聯(lián)系。在工業(yè)生產(chǎn)過程中,溫度檢測和控制都直接和安全生產(chǎn)、產(chǎn)品質(zhì)量生產(chǎn)效率、節(jié)約能源等重大技術(shù)經(jīng)濟指標相聯(lián)系,因此在國民經(jīng)濟的各個領(lǐng)域中都受到普遍重視。溫度檢測儀表作為溫度計量工具,因此也得到廣泛應(yīng)用。隨著科學技術(shù)的發(fā)展,這類儀表的發(fā)展也日新月異。特別是隨著計算機技術(shù)的迅猛發(fā)展,以單片機為主的嵌入式系統(tǒng)已經(jīng)廣泛應(yīng)用于工業(yè)控制領(lǐng)域,形成了智能化的測量控制儀器,從而引起了儀器儀表結(jié)構(gòu)的根本性變革。傳統(tǒng)的機械式檢測儀表在工礦企業(yè)之中已經(jīng)有上百年的歷史了。一般均具有指示溫度的功能。由于測溫原理的不同,不同的儀表在記錄、遠傳等方面的性能差別很大。例如熱電阻溫度計,他的測溫范圍是-200℃~650℃,測量準確,可用于低溫或溫差測量,能夠指示報警、遠傳、控制變送,但維護工作量大而且不能記錄;光學溫度計測量范圍是300℃~3200℃,攜帶使用方便,價格便宜,但是他只能目測,也就是說必須熟練才能測準,而且不能遠傳、控制變送等。近年來由于微電子學的進步以及計算機應(yīng)用的日益廣泛,智能化測量控制儀表已經(jīng)取得了極大的進步。我國的單片機開發(fā)應(yīng)用始于80年代,在這20年中單片機應(yīng)用縱向發(fā)展,技術(shù)日益成熟。以單片機為主體取代傳統(tǒng)儀器儀表的常規(guī)電子線路,可以輕易的將計算機技術(shù)與測量技術(shù)結(jié)合在一起。智能儀表在測量過程自動化、測量結(jié)果的數(shù)據(jù)處理已經(jīng)功能的多樣化方面,都取得了巨大的進展。目前在研制高精度、高性能、多功能的測量控制儀表時,幾乎沒有不考慮采用單片機使之成為智能儀表的。從技術(shù)的背景來說,硬件集成電路的不斷發(fā)展和創(chuàng)新也是一個很重要的因素。各種集成電路芯片都在朝超大規(guī)模、全CMOS化的方向發(fā)展,從而使用戶具有了更大的選范圍,這類儀器能夠解決許多傳統(tǒng)儀器不能或不易解決的問題,同時還能簡化儀表電路,提高儀表的可靠性,降低儀表的成本以及加快新產(chǎn)品的開發(fā)速度。智能化控制儀表的整個工作過程都是在軟件的控制下自動完成的。裝在儀表內(nèi)部的EPROM中的監(jiān)控程序由許多程序模塊組成,每易各模塊完成一種特定的功能,例如實現(xiàn)算法、接受并分析鍵盤輸入命令等。編制完善的監(jiān)控程序的某些模塊,能夠取代某些硬件電路的功能。這就為設(shè)計者擴展或改變儀表集體功能提供了方便。智能控制儀表在引入單片機之后,已經(jīng)降低了對某些硬件電路的要求,但是測試電路仍然占有很重要的位置,尤其是直接獲取被測信號額傳感器部分仍應(yīng)給予充分的重視,有時提高整臺儀器性能的關(guān)鍵仍然是在于測試電路尤其是傳感器額改進。現(xiàn)在傳感器也正在受著微電子技術(shù)的影響,不斷發(fā)展變化。傳感器正朝著小型、固態(tài)、多功能和集成化的方向發(fā)展。由許多的國家正致力于將微處理器與傳感器集成于一體,以構(gòu)成超小型、廉價的測量儀器的主體。與國內(nèi)已經(jīng)出現(xiàn)的各種各樣的智能化測量控制儀表相比,國際上更是品種繁多。國內(nèi)的開發(fā)規(guī)模也相對較小,開發(fā)費用相對較高,與國際相比還存在很大的差距溫度的精確測量是工業(yè)生產(chǎn)領(lǐng)域中的一個經(jīng)典課題,在溫度檢測系統(tǒng)中,特別是智能儀表中,測量變換電路起著非常重要的作用。設(shè)計測量變換電路時,我們是從分析傳感器性能入手,通過適當?shù)难a償,綜合出一個較滿足期望指標的測量變換電路來。目前,廣泛使用的溫度傳感器有4類:熱電阻,熱電偶,熱敏電阻及集成電路溫度傳感器。本文介紹的檢測系統(tǒng),采用的是熱電阻元件測溫。熱電阻具有精度高,性能穩(wěn)定,互換性好,耐腐蝕及使用方便等一系列優(yōu)點,一直是工業(yè)測控系統(tǒng)中廣泛使用的一種比較理想的測溫元件,缺點是不能在高溫環(huán)境中使用[1]。使用熱電阻時,必須把它放在測溫現(xiàn)場,因此從測溫點到測量變換電路之間引線較長,即使不計熱噪電阻,導線自身電阻r也相當可觀(50~100m時r=4~10Ω。與熱電阻變化率相比,顯然,連線電阻對測量精度影響很大。當采用模擬開關(guān)作多點間的切換測溫時,由于模擬開關(guān)導通電阻有幾十歐姆~幾百歐姆,并且通道間導通電阻相互差有幾歐姆~幾十歐姆,這也給測量電路引入不可忽視的測量誤差,熱電阻數(shù)學模型中的二次非線性項對測量精度的影響更是不言而喻[2]。因此,只有消除上述誤差,或是控制在期望指標的允許誤差內(nèi)才能設(shè)計出一個比較完好實用的多點溫度檢測系統(tǒng)。隨著現(xiàn)代信息技術(shù)的飛速發(fā)展和傳統(tǒng)工業(yè)改造的逐步實現(xiàn),溫度檢測和顯示系統(tǒng)已經(jīng)應(yīng)用于諸多領(lǐng)域。傳統(tǒng)的溫度檢測以熱敏電阻為溫度敏感元件,熱敏電阻成本低,但需要后續(xù)信號處理電路,而且熱敏電阻的可靠性相對較差,測量溫度的準確度低,檢測系統(tǒng)的精度差。系統(tǒng)采用是熱電阻元件測溫,熱電阻具有精度高,性能穩(wěn)定,互換性好,耐腐蝕及使用方便等一系列優(yōu)點,一直是工業(yè)測控系統(tǒng)中廣泛使用的一種比較理想的測溫元件。能對多點的溫度進行實時控制巡檢,各檢測單元能獨立完成各自功能,根據(jù)主控機的指令對溫度進行實時或定時采集。能廣泛用也各種工業(yè)領(lǐng)域,如:自行車烤漆,糧食的儲存等,所以具有實用的現(xiàn)實意義。第二章系統(tǒng)設(shè)計方案的研究2.1系統(tǒng)的性能要求設(shè)計一個多路溫度監(jiān)測系統(tǒng),要求檢測范圍為:0℃--400℃,檢測分辨率為:±0.1℃,各檢測器與主控器之間的距離100米,各顯示器單元可顯示檢測的溫度值,設(shè)計并制作個檢測器以及主控器所用的直流穩(wěn)壓電源,由單相220V交流電壓供電。經(jīng)過改進的系統(tǒng)具有較好的快速型與較小的超調(diào),以及數(shù)碼管顯示及測量精度提高等。2.2方案的分析比較方案一采用熱敏電阻,可滿足40~90℃的測量范圍,但熱敏電阻精度,重復性,可靠性都比較差,對于檢測小于1℃的溫度信號是不適用的。方案二采用溫度傳感器AD590。它具有較高的精度和重復性,相比于熱敏電阻精度有所提高,但非線性誤差為±0.3℃,且檢測溫度范圍為:-55~+155℃,不滿足題目要求。方案三采用Pt100。它的國際測溫標準為:-40~+450℃,可選環(huán)境溫度為:-40~70℃,精度為:±0.1℃,完全符合要求。且安裝尺寸小,可直接安裝在印刷電路板上,可焊SIP封裝[3]。方案四熱電偶是工業(yè)上最常用的溫度檢測元件之一,其優(yōu)點是測量精度高、測量范圍廣,常用的熱電偶從-50℃至+1600℃均可連續(xù)測量。但需采用電路或軟件設(shè)計等修正方法來補償冷端溫度t0≠0℃時對測溫的影響,使用不便。綜上比較分析,選擇方案三,以便于更好的提高測量精度。方案一一般微機提供的標準接口為RS232,它的接口是一種用于近距離(最大30-60米、慢速度、點對點通訊的通訊協(xié)議,在RS232中一個信號只用到一條信號線,采取與地電壓參考的方式,因而在長距離傳輸后,發(fā)送端和接收端地電壓有出入,容易造成通訊出錯或速度降低。方案二RS485接口采用不同的方式:每個信號都采用雙絞線(兩根信號線傳送,兩條線間的電壓差用于表示數(shù)字信號。例如把雙絞線中的一根標為A(正,另一根標為B(負,當A為正電壓(通常為+5V,B為負電壓時(通常為0,表示信號“1”;反之,A為負電壓,B為正電壓時表示信號“0”。RS485/422允許通訊距離可達到1200米,采用合適的電路可達到2.5MB/s的傳輸速率[4]。綜上比較分析,方案二具有更高的精度和測量距離遠的優(yōu)勢,選擇方案二。第三章系統(tǒng)的設(shè)計3.1框圖總體框圖圖3.1系統(tǒng)框圖系統(tǒng)硬件電路圖圖3.1為多點溫度檢測系統(tǒng)的整體框圖,主要由主機和從機兩部分構(gòu)成,主機和從機由RS-485總線連接,主機外接鍵盤,顯示器,打印機和聲光報警裝置。從機系統(tǒng)框圖圖3.2從機系統(tǒng)框圖圖3.2是從機系統(tǒng)框圖,溫度檢測點將采集到的電壓信號送到傳感器,經(jīng)放大后送入A/D轉(zhuǎn)換芯片轉(zhuǎn)化為數(shù)字量,然后送入單片機。3.2從機部分(1電路的設(shè)計熱電阻測溫是基于金屬導體的電阻值隨溫度的增加而增加這一特性來進行溫度測量的。所以通常將其放在電橋橋臂上,溫度變化時,熱電阻兩端的電壓信號被送到儀器放大器AD620的輸入端,經(jīng)過儀器放大器放大后的電壓輸出送給A/D轉(zhuǎn)換芯片,從而把熱電阻的阻值轉(zhuǎn)換成數(shù)字量。電路原理圖如圖3.3所示。對信號放大,我們使用了低價格、高精度的儀器放大器AD620,它運用方便,可以通過外接電阻方便的進行各種增益(1-1000的調(diào)整。其增益計算公式為:RkAΩ+=4.491圖3.3熱電阻測溫電路原理圖(2溫度值計算過程:由于A/D檢測到的模擬電壓值A(chǔ)RRRRRRUTT??+-+=2(3221,計算可到的RT值,然后利用如下公式求出溫度值:231BtAtRRT++=其中710096847.3-?=A,310847.5-?-=B[5]實際測量中,為提高測量精度,我們分兩擋進行測量,當溫度處于0℃~210℃時,繼電器J2所在橋臂電阻為23R,繼電器J1選擇AD620的反饋電阻R5,溫度處于195℃~400℃時,控制繼電器J2將電阻R31串接上,并相應(yīng)控制繼電器J1選擇R6做為AD620的反饋電阻,在切換橋臂電阻時同步改變放大倍數(shù),從而達到自動改變量程[6],提高測量精度的目的。(3所用器件的介紹Pt100:Pt100的國際測溫標準為:-40~+450℃,可選環(huán)境溫度為:-40~70℃,精度為:±0.1℃,完全符合要求。且安裝尺寸小,可直接安裝在印刷電路板上,可焊SIP封裝。3.3模數(shù)轉(zhuǎn)換單元(1電路的設(shè)計A/D轉(zhuǎn)換的好與壞直接關(guān)系到整個系統(tǒng)的精確度,題目要求分辨率達到0.1,由于本系統(tǒng)測量的是溫度信號,響應(yīng)時間長,滯后大,不要求快速轉(zhuǎn)換,因此選用12位串行AD——MAX186。MAX186是美國MAXIM公司設(shè)計的12位串行A/D轉(zhuǎn)換器,其內(nèi)部集成了大帶寬跟蹤/保持電路和串行接口,轉(zhuǎn)換速率高且功耗低,特別適合對體積,功耗和精度有較高要求的便攜式智能化儀器儀表產(chǎn)品。MAX186具有12位的分辨力,其基準電壓為4.096V,故最小分辨電壓為V001.02096.412=,能分辨的最小溫度變化為Cv?=?0976.0001.0240012,能達到題目的基本要求。為進一步提高精度,可以直接采用16位AD轉(zhuǎn)換器,也可以采用過采樣和求均值技術(shù)來提高測量分辨率[7]。系統(tǒng)采用了后一種方法。所謂過采樣技術(shù)是指以高于奈奎斯特頻率的采樣頻率進行采樣,也就是說當ADC以高于系統(tǒng)所需采樣頻率fs的速率對信號采樣時,能增加有效位數(shù)。每增加一位分辨率,信號必須被以4倍的速率過采樣,即swosff?=4其中w——希望增加的分辨率位數(shù);fs——初始采樣頻率要求;fos——過采樣頻率。圖3.4模數(shù)轉(zhuǎn)換電路原理圖假設(shè)每秒鐘輸出一個溫度值(1Hz。為了將測量分辨率增加到16位,按下式計算過采樣頻率,即:HzHzfos256(144=?=因此,如果以fs=256Hz的采樣頻率對溫度信號進行采樣,則將在所要求的采樣周期內(nèi)采集到足夠的樣本,對這些樣本求均值便可得到16位的輸出數(shù)據(jù)。為此,先累加(將256個連續(xù)樣本加在一起,然后將總和除以16。這樣得到的結(jié)果便是16位的有效數(shù)據(jù),增加了4位有效數(shù)據(jù)。用過采樣和求均值技術(shù)后,新的AD分辨率計算如下:最小分辨電壓=mV625.02096.416=這樣,可以測量的最小溫度變化為CV?=?0061.00000625.0240016,在采用過采樣和求均值技術(shù)的情況下,用同一個12位ADC可以測量的最小溫度變化為0.0061℃,就允許了以高于C?1001[8]的精度對溫度進行測量。另外,為了減小工頻信號引起的誤差,我們設(shè)計了在40ms(20ms的兩倍時間內(nèi)采樣,然后再取平均值,將工頻信號誤差濾除。(2所用器件的介紹MAX186:MAX186是美信公司推出的12位A/D轉(zhuǎn)換芯片,內(nèi)部含有采樣/保持電路,單5V操作電源,轉(zhuǎn)換速度為8.5μs,具有片上4.096V參考電壓,模擬量輸入范圍為0~VBEF。三線串行接口,兼容SPI,QSPI,MicroWire總線,設(shè)計精巧,工作速度快。小巧的封裝體積適合在傳感器中使用。MAX186有8個引腳,引腳1:+5V電源。引腳2:模擬量輸入,范圍0~VBEF。引腳3:操作模式選擇,低電平為休眠模式。正常操作模式為高電平或懸空。高電平時使用內(nèi)部參考,懸空時禁止內(nèi)部參考。引腳4:參考電壓,內(nèi)部參考為4.096V,使用內(nèi)部參考時此引腳對地接一個4.7μF,電容,使用外部參考時,接2.5V—VDD的基準電壓。引腳5:接地。引腳6:數(shù)據(jù)輸出。引腳7:片選。引腳8:時鐘,最高為5MHz.MAX186用采樣/保持電路和逐位比較寄存器將輸入的模擬信號轉(zhuǎn)換為12位的數(shù)字信號,其采樣/保持電路不需要外接電容。MAX186有2種操作模式:正常模式和休眠模式,將置為低電平進入休眠模式,這時的電流消耗降到10μA以下。置為高電平或懸空進入正常操作模式。使用內(nèi)參考時,在電源開啟后,經(jīng)過20ms后參考引腳的4.7μF電容充電完成,可進行正常的轉(zhuǎn)換操作。A/D轉(zhuǎn)換的工作過程是:當為低電平時,在下降沿MAX186的T/H電路進入保持狀態(tài),并開始轉(zhuǎn)換,8.5μs后DOUT輸出為高電平作為轉(zhuǎn)換完成標志。這時可在SCLK端輸入一串脈沖將結(jié)果從DOUT端移出,讀入單片機中處理。數(shù)據(jù)讀取完成后將置為高電平。要注意的是:在置為低電平啟動A/D轉(zhuǎn)換后,檢測到DOUT有效(或者延時8.5μs以上,才能發(fā)SCLK移位脈沖讀數(shù)據(jù),SCLK至少為13個[9]。發(fā)完脈沖后應(yīng)將置為高電平。(1電路的設(shè)計圖3.5從機單片機部分原理圖信號處理及顯示單元采用8051單片機作為信息處理單元,它是從機的核心器件,對傳感器采集來的數(shù)字信號進行處理,轉(zhuǎn)換成相應(yīng)的溫度信號,送液晶進行顯示。而且從機能夠通過通訊電路將測量數(shù)據(jù)上傳,接收主機數(shù)據(jù)(包括系統(tǒng)時間信息、修正值和報警上下限進行自身信息設(shè)置。該系統(tǒng)用動態(tài)掃描的方式進行顯示。在硬件設(shè)計中將所有位數(shù)碼管的段選線并聯(lián)在一起,由位選線控制是哪一位數(shù)碼管有效。選亮數(shù)碼管采用動態(tài)掃描顯示。動態(tài)掃描顯示的原理是輪流向各位數(shù)碼管送出字形碼和相應(yīng)的位選,利用發(fā)光管的余輝和人眼視覺暫留作用,使人的感覺好像各位數(shù)碼管同時都在顯示。動態(tài)顯示的亮度比靜態(tài)顯示要差一些,所以在選擇限流電阻時應(yīng)略小于靜態(tài)顯示電路中的。該方案與靜態(tài)顯示相比,硬件電路比較復雜,成本較高。動態(tài)顯示模塊電路圖如下圖所示.在該電路中選用限流電阻為330Ω,但一定要加上它,因為每一個段碼的發(fā)光二極管所能承受的最大電流為10mA-20mA。在電源電壓為5V時,如果不加限流電阻,則流過發(fā)光二極管的電流會有幾百毫安,這樣很快會燒壞發(fā)光二極管。還需要說明的一點是,該系統(tǒng)選用共陽極數(shù)碼管,這樣在段碼控制端口(P0口為低電平時數(shù)碼管導通點亮。為什么選用共陽極數(shù)碼管呢?因為51單片機中或者是其它的一些集成電路中,它的灌電流要大于其輸出電流,所以要選用共陽極數(shù)碼管,讓P0口以灌電流的方式提供驅(qū)動電流,以提高驅(qū)動能力。還需要特別說明的一點是,用端口不能直接去驅(qū)動每個數(shù)碼管的位選端口,因為51單片機的每個端口只能提供20mA的電流,如果去驅(qū)動的話,會很快燒壞單片機的端口。(2器件的介紹MCS-51:MCS-51單片機是美國INTE公司于1980年推出的產(chǎn)品,與MCS-48單片機相比,它的結(jié)構(gòu)更先進,功能更強,在原來的基礎(chǔ)上增加了更多的電路單元和指令,指令數(shù)達111條,MCS-51單片機可以算是相當成功的產(chǎn)品[10],一直到現(xiàn)在,MCS-51系列或其兼容的單片機仍是應(yīng)用的主流產(chǎn)品。MCS-51系列單片機主要包括8031、8051和8751等通用產(chǎn)品,其主要功能如下:8位CPU4kbytes程序存儲器(ROM128bytes的數(shù)據(jù)存儲器(RAM32條I/O口線111條指令,大部分為單字節(jié)指令21個專用寄存器2個可編程定時/計數(shù)器5個中斷源,2個優(yōu)先級一個全雙工串行通信口外部數(shù)據(jù)存儲器尋址空間為64kB外部程序存儲器尋址空間為64kB邏輯操作位尋址功能雙列直插40PinDIP封裝[11]單一+5V電源供電MCS-51以其典型的結(jié)構(gòu)和完善的總線專用寄存器的集中管理,眾多的邏輯位操作功能及面向控制的豐富的指令系統(tǒng),堪稱為一代“名機”,為以后的其它單片機的發(fā)展奠定了基礎(chǔ)。正因為其優(yōu)越的性能和完善的結(jié)構(gòu),導致后來的許多廠商多沿用或參考了其體系結(jié)構(gòu),有許多世界大的電氣商豐富和發(fā)展了MCS-51單片機,像PHILIPS,Dallas,ATMEL等著名的半導體公司都推出了兼容MCS-51的單片機產(chǎn)品,就連我國的臺灣WINBOND公司也發(fā)展了兼容C51(人們習慣將MCS-51簡稱C51,如果沒有特別聲明,二者同指MCS-51系列單片機的單片品種。近年來C51獲得了飛速的發(fā)展,C51的發(fā)源公司INTEL由于忙于開發(fā)PC及高端微處理器而無精力繼續(xù)發(fā)展自己的單片機,而由其它廠商將其發(fā)展,最典型的是PHILIPS和ATML公司,PHILIPS公司主要是改善其性能,在原來的基礎(chǔ)上發(fā)展了高速I/O口,A/D轉(zhuǎn)換器,PWM(脈寬調(diào)制,WDT等增強功能,并在低電壓微功耗,擴展串行總線(I2C和控制網(wǎng)絡(luò)總線(CAN等功能加以完善[12]。a輸入輸出口8051有4組8位I/O口:P0、P1、P2和P3口,P1、P2和P3為準雙向口,P0口則為雙向三態(tài)輸入輸出口,下面我們分別介紹這幾個口線:P0口和P2口:電路中包含一個數(shù)據(jù)輸出鎖存器和兩個三態(tài)數(shù)據(jù)輸入緩沖器,另外還有一個數(shù)據(jù)輸出的驅(qū)動和控制電路。這兩組口線用來作為CPU與外部數(shù)據(jù)存儲器、外部程序存儲器和I/O擴展口,而不能象P1、P3直接用作輸出口。它們一起可以作為外部地址總線,P0口身兼兩職,既可作為地址總線,也可作為數(shù)據(jù)總線。P2口作為外部數(shù)據(jù)存儲器或程序存儲器的地址總線的高8位輸出口AB8-AB15,P0口由ALE選通作為地址總線的低8位輸出口AB0-AB7。外部的程序存儲器由PSEN信號選通,數(shù)據(jù)存儲器則由WR和RD讀寫信號選通,因為216=64k,所以8051最大可外接64kB的程序存儲器和數(shù)據(jù)存儲器。P1口:P1口為8位準雙向口,每一位均可單獨定義為輸入或輸出口,當作為輸入口時,1寫入鎖存器,Q(非=0,T2截止,內(nèi)上拉電阻將電位拉至"1",此時該口輸出為1,當0寫入鎖存器,Q(非=1,T2導通,輸出則為0。作為輸入口時,鎖存器置1,Q(非=0,T2截止,此時該位既可以把外部電路拉成低電平,也可由內(nèi)部上拉電阻拉成高電平,正因為這個原因,所以P1口常稱為準雙向口。需要說明的是,作為輸入口使用時,有兩種情況,其一是:首先是讀鎖存器的內(nèi)容,進行處理后再寫到鎖存器中,這種操作即讀—修改—寫操作,象JBC(邏輯判斷、CPL(取反、INC(遞增、DEC(遞減、ANL(與邏輯和ORL(邏輯或指令均屬于這類操作。其二是:讀P1口線狀態(tài)時,打開三態(tài)門G2,將外部狀態(tài)讀入CPU。bMcs-51的串行通信口168051單片機引腳圖MCS-51單片機內(nèi)部有一個全雙工的串行通信口,即串行接收和發(fā)送緩沖器(SBUF,這兩個在物理上獨立的接收發(fā)送器,既可以接收數(shù)據(jù)也可以發(fā)送數(shù)據(jù)。但接收緩沖器只能讀出不能寫入,而發(fā)送緩沖器則只能寫入不能讀出,它們的地址為99H。這個通信口既可以用于網(wǎng)絡(luò)通信,亦可實現(xiàn)串行異步通信,還可以構(gòu)成同步移位寄存器使用。如果在傳行口的輸入輸出引腳上加上電平轉(zhuǎn)換器,就可方便地構(gòu)成標準的RS-232接口[13]。下面我們分別介紹。①基本概念數(shù)據(jù)通信的傳輸方式有單工,半雙工,全雙工和多工方式。單工方式:數(shù)據(jù)僅按一個固定方向傳送。因而這種傳輸方式的用途有限,常用于串行口的打印數(shù)據(jù)傳輸與簡單系統(tǒng)間的數(shù)據(jù)采集。半雙工方式:數(shù)據(jù)可實現(xiàn)雙向傳送,但不能同時進行,實際的應(yīng)用采用某種協(xié)議實現(xiàn)收/發(fā)開關(guān)轉(zhuǎn)換。全雙工方式:允許雙方同時進行數(shù)據(jù)雙向傳送,但一般全雙工傳輸方式的線路和設(shè)備較復雜。多工方式:以上三種傳輸方式都是用同一線路傳輸一種頻率信號,為了充分地利用線路資源,可通過使用多路復用器或多路集線器,采用頻分,時分或碼分復用技術(shù),即可實現(xiàn)在同一線路上資源共享功能,我們盛之為多工傳輸方式。串行數(shù)據(jù)通信兩種形式。異步通信在這種通信方式中,接收器和發(fā)送器有各自的時鐘,它們的工作是非同步的,異步通信用一幀來表示一個字符,其內(nèi)容如下:一個起始位,僅接著是若干個數(shù)據(jù)位。17同步通信同步通信格式中,發(fā)送器和接收器由同一個時鐘源控制,為了克服在異步通信中,每傳輸一幀字符都必須加上起始位和停止位,占用了傳輸時間,在要求傳送數(shù)據(jù)量較大的場合,速度就慢得多。同步傳輸方式去掉了這些起始位和停止位,只在傳輸數(shù)據(jù)塊時先送出一個同步頭(字符標志即可[14]。同步傳輸方式比異步傳輸方式速度快,這是它的優(yōu)勢。但同步傳輸方式也有其缺點,即它必須要用一個時鐘來協(xié)調(diào)收發(fā)器的工作,所以它的設(shè)備也較復雜。串行數(shù)據(jù)通信的傳輸速率。串行數(shù)據(jù)傳輸速率有兩個概念,即每秒轉(zhuǎn)送的位數(shù)bps(Bitpersecond和每秒符號數(shù)—波特率(Bandrate,在具有調(diào)制解調(diào)器的通信中,波特率與調(diào)制速率有關(guān)。②MCS-51的串行口和控制寄存器串行口控制寄存器MCS-51單片機串行口寄存器結(jié)構(gòu)如圖3.6所示。SBUF為串行口的收發(fā)緩沖器,它是一個可尋址的專用寄存器,其中包含了接收器和發(fā)送器寄存器,可以實現(xiàn)全雙工通信。但這兩個寄存器具有同一地址(99H。MCS-51的串行數(shù)據(jù)傳輸很簡單,只要向發(fā)送緩沖器寫入數(shù)據(jù)即可發(fā)送數(shù)據(jù)。而從接收緩沖器讀出數(shù)據(jù)即可接收數(shù)據(jù)[15]。此外,接收緩沖器前還加上一級輸入移位寄存器,MCS-51這種結(jié)構(gòu)目的在于接收數(shù)據(jù)時避免發(fā)生數(shù)據(jù)幀重疊現(xiàn)象,以免出錯,部分文獻稱這種結(jié)構(gòu)為雙緩沖器結(jié)構(gòu)。而發(fā)送數(shù)據(jù)時就不需要這樣設(shè)置,因為發(fā)送時,CPU是主動的,不可能出現(xiàn)這種現(xiàn)象。圖3.6Mcs-51串行口寄存器結(jié)構(gòu)串行通信控制寄存器SCON控制寄存器是一個可尋址的專用寄存器,用于串行數(shù)據(jù)的通信控制,單元地址是98H,其結(jié)構(gòu)格式如表3.1:表3.1SCON寄存器結(jié)構(gòu)下面我們對各控制位功能介紹如下:18aSM0、SM1:串行口工作方式控制位。SM0,SM1工作方式00方式001方式110方式211方式3bSM2:多機通信控制位。多機通信是工作于方式2和方式3,SM2位主要用于方式2和方式3。接收狀態(tài),當串行口工作于方式2或3,以及SM2=1時,只有當接收到第9位數(shù)據(jù)(RB8為1時,才把接收到的前8位數(shù)據(jù)送入SBUF,且置位RI發(fā)出中斷申請,否則會將接受到的數(shù)據(jù)放棄[16]。當SM2=0時,就不管第位數(shù)據(jù)是0還是1,都難得數(shù)據(jù)送入SBUF,并發(fā)出中斷申請。工作于方式0時,SM2必須為0。cREN:允許接收位。REN用于控制數(shù)據(jù)接收的允許和禁止,REN=1時,允許接收,REN=0時,禁止接收。dTB8:發(fā)送接收數(shù)據(jù)位8。在方式2和方式3中,TB8是要發(fā)送的——即第9位數(shù)據(jù)位。在多機通信中同樣亦要傳輸這一位,并且它代表傳輸?shù)牡刂愤€是數(shù)據(jù),TB8=0為數(shù)據(jù),TB8=1時為地址。eRB8:接收數(shù)據(jù)位8。在方式2和方式3中,RB8存放接收到的第9位數(shù)據(jù),用以識別接收到的數(shù)據(jù)特征。fTI:發(fā)送中斷標志位??蓪ぶ窐酥疚弧7绞?時,發(fā)送完第8位數(shù)據(jù)后,由硬件置位,其它方式下,在發(fā)送或停止位之前由硬件置位,因此,TI=1表示幀發(fā)送結(jié)束,TI可由軟件清“0”。gRI:接收中斷標志位??蓪ぶ窐酥疚弧=邮胀甑?位數(shù)據(jù)后,該位由硬件置位,在其他工作方式下,該位由硬件置位,RI=1表示幀接收完成。電源管理寄存器PCONPCON主要是為CHMOS型單片機的電源控制而設(shè)置的專用寄存器,單元地址是87H,其結(jié)構(gòu)格式如表3.2:表3.2PCON電源管理寄存器結(jié)構(gòu)在CHMOS型單片機中,除SMOD位外,其他位均為虛設(shè)的,SMOD是串行口波特率倍增位,當SMOD=1時,串行口波特率加倍。系統(tǒng)復位默認為SMOD=0。19中斷允許寄存器IE[17]。ES為串行中斷允許控制位,ES=1允許串行中斷,ES=0,禁止串行中斷。表3.3IE中斷允許控制寄存器結(jié)構(gòu)溫度檢測系統(tǒng)多有聲光報警功能,當檢測溫度超過上下限時,進行聲光提示。本系統(tǒng)在從機和主機部分均設(shè)計了報警電路。各從機的報警上下限由主機預置,從機實時監(jiān)測的過程中,一旦發(fā)現(xiàn)檢測溫度值連續(xù)超出閾值范圍,便啟動自身報警電路,同時向主控機發(fā)送報警信號[18]。報警電路原理如下所示:圖3.7聲光報警電路原理圖3.4通訊部分由于單片機串行口輸出的是TTL電平,要想實現(xiàn)多機通訊,必須要將其轉(zhuǎn)換成常用的串行通信總線標準接口電平,如RS-232或RS-485。其中RS-232適于短距離或帶調(diào)制解調(diào)器的通信場合,其邏輯電平與TTL、MOS邏輯電平完全不同,需要用MAX232驅(qū)動芯片進行電平轉(zhuǎn)換。其主要缺點是數(shù)據(jù)傳輸速率慢、傳送距離短(不超過30m,抗干擾能力差,不能滿足題目的要求。RS-485標準接口為差分驅(qū)動結(jié)構(gòu),它通過傳輸線驅(qū)動器把邏輯電平變換為電位差,完成信號的傳遞,具有傳輸速率快、傳送距離長(可傳1200m、抗干擾能力強等優(yōu)點,允許一對雙絞線上一個發(fā)送器驅(qū)動多個負載設(shè)備。所以系統(tǒng)使用RS-485總線進行傳輸,采用SN75176驅(qū)動芯片進行電平轉(zhuǎn)換。20圖3.8SN75176芯片及其邏輯關(guān)系多機系統(tǒng)是指由多臺計算機組成的系統(tǒng)。多機系統(tǒng)的結(jié)構(gòu)有很多種,如果從系統(tǒng)中各臺計算機的關(guān)系上分,可分為緊密耦合型和松散耦合型兩類。在緊密耦合的多機系統(tǒng)中,各臺計算機之間的聯(lián)系緊密,一般情況下他們通過總線(包括公共存儲器進行頻繁的信息交換,并在一個總的操作系統(tǒng)——分布式操作系統(tǒng)的控制下協(xié)調(diào)地工作。在松散耦合的多機系統(tǒng)中,計算機之間的聯(lián)系較少,每一臺計算機都有獨立的存貯器,并在各自的操作系統(tǒng)下獨立地工作。計算機之間通過通訊來協(xié)同工作。這類多機系統(tǒng)又可分為分布式和主從式兩類[19]。分布式多機系統(tǒng)中,各臺計算機具有平等的地位和相似的結(jié)構(gòu)。主從式多機系統(tǒng)中,有一臺功能較強的主計算機和若干臺結(jié)構(gòu)相似的從計算機。我們采用主從式系統(tǒng)完成本設(shè)計。在主從式多機系統(tǒng)中,計算機之間的通信由主機控制。主機主動和從機聯(lián)絡(luò)通信,向從機發(fā)出各種命令,如設(shè)計從機的工作參數(shù),修改從機的實時時鐘,詢問從機的狀態(tài),收集從機的數(shù)據(jù)等。而從機不能主動向主機或其他從機進行通訊聯(lián)系,他只有在主機向它發(fā)出命令時才做出相應(yīng),向主機回送信息。因此主計算機處于主導地位,而從計算機處于處于從屬地位[20]。在主從式多機系統(tǒng)中,主機的功能往往是監(jiān)視各從機的工作,定時收集各個從機的實時數(shù)據(jù)信息并將收集到的數(shù)據(jù)信息進行處理、存檔、格式化顯示和打印等。同時,操作人員通過人-機通訊,在主機上查詢從機的狀態(tài),診斷系統(tǒng)中各個從機是否出現(xiàn)故障,以便系統(tǒng)維護。從機的功能一般是進行現(xiàn)場數(shù)據(jù)信息的采集、計算和對現(xiàn)場的控制,從機自動完成對各要素的定時采樣和計算,在接到主機的命令時將結(jié)果送給主機。在設(shè)計主從式多機系統(tǒng)時,除了掌握單片及應(yīng)用系統(tǒng)的設(shè)計方法外,還必須注意以下幾個方面:①機和從機的功能劃分在設(shè)計一個多機系統(tǒng)時,應(yīng)著眼于整個系統(tǒng)的功能,設(shè)法提高整個系統(tǒng)的性能價格比,因此合理規(guī)定主機和從機的功能是十分重要的。系統(tǒng)的有些功能,例如數(shù)據(jù)的計算分析,可以由各個從機來完成,只把結(jié)果送給主機,也可以把原始數(shù)據(jù)直接送給主機,由主機處理。這兩種方法對中央處理機的工作時間、存儲器的容量以及主機和從機之間需傳送的信息量會產(chǎn)生影響。在確定主從機功能的同時,應(yīng)從系統(tǒng)的實時行要求,主機和從機的工作量,主從機之間的距離和現(xiàn)場操作需求來考慮。②通訊方式多機系統(tǒng)和單機系統(tǒng)在硬件上的最大不同是需要通訊口。通訊可采用各種方法來實現(xiàn),對于距離在幾米以上的系統(tǒng),一般均采用串行通訊。它又分為同步和異步兩種方式,前者速度快,通訊距離較近,后者速度慢,但通訊距離遠。一般的工業(yè)控制和數(shù)據(jù)采集系統(tǒng),在數(shù)據(jù)傳輸量不大的情況下,采用異步方式比較方便[21]。通訊的物理物理媒介也有許多種,如采用無線電通訊或電話線通訊,這是一般采用異步方式,并應(yīng)加入調(diào)制解調(diào)器,它的通訊距離最遠可達幾十公里以上;如果采用電纜通訊,可采用RS–232或RS-422、RS-456等方式,后二者可采用一般的雙絞線進行通訊,具有傳輸距離遠、抗干擾能力強等優(yōu)點,在通訊距離較遠時,應(yīng)采用RS-485等接口方式③主機選擇多機系統(tǒng)的主機應(yīng)根據(jù)應(yīng)用要求和現(xiàn)有條件來選擇。如果該系統(tǒng)需要有外部存儲設(shè)備以存儲各種數(shù)據(jù)時,應(yīng)采用由磁盤驅(qū)動器地主機,特別是在存儲數(shù)據(jù)量較大時,應(yīng)采用由硬盤的主機。如果主機需執(zhí)行較多的實時控制功能,則應(yīng)選擇可配備實時操作系統(tǒng)的主機。一般情況下,可采用等通用的個人計算機。由于一般的個人計算機配有串行接口,如果主從機采用通訊時,應(yīng)該再加入通訊處理機,它與主機用相連,與各從機用同步通訊方式相連。④通訊規(guī)程選擇這里的通訊規(guī)程主要是指主機之間的通訊約定,它包括從機尋址方式、通訊檢驗及通訊應(yīng)答等方式等。一般主機和多臺從機通訊時,只使用一套公共的的通訊線路,主機應(yīng)能和指定的任何一個從機通訊,也能向全部從機發(fā)命令。因為一臺主機只能和一臺從機通訊,所以有一個怎樣尋址從機的問題。對MCS-51單片機,它們的串行口由主從機通訊方式,允許發(fā)送地址或數(shù)據(jù)。但是如果通訊距離較遠或現(xiàn)場有干擾時,就不宜采用此方法。因為MCS-51等的主從機通訊方式中,地址與數(shù)據(jù)的區(qū)別只是發(fā)送的最后一位不同,如果有干擾改變了了這位的狀態(tài),會打亂整個系統(tǒng)的運行[22]。這是可采用在命令中增加幾位地址地方法。在有干擾時,主從機通訊應(yīng)加入檢驗,對異步通訊,可采用字符或字節(jié)的奇偶校驗加上一幀信息的累加和校驗。⑤從機設(shè)計方法從機是一個獨立地控制器或數(shù)據(jù)采集裝置,它的設(shè)計方法基本上與一般的單片機系統(tǒng)相同,只是需增加通訊口硬件和通訊處理軟件。為了減少通訊量,從機常用于完成對一個子系統(tǒng)的控制或數(shù)據(jù)采集。每臺從機所需完成地功能一般比較多,而且是綜合性地,這是它的結(jié)構(gòu)比較復雜,再加上通訊處理軟件需與控制或數(shù)據(jù)采集并行進行,所以在多機系統(tǒng)的從機中,應(yīng)該配備實時多任務(wù)操作系統(tǒng)。在由單片機構(gòu)成的多機串行通信系統(tǒng)中,一般采用主從式結(jié)構(gòu):從機不主動發(fā)送命令或數(shù)據(jù),一切都由主機控制。并且在一個多機通信系統(tǒng)中,只有一臺單機作為主機,各臺從機之間不能相互通訊,即使有信息交換也必須通過主機轉(zhuǎn)發(fā)。采用RS-485構(gòu)成的多機通訊原理框圖,如圖3.9所示。圖3.9采用RS-485構(gòu)成的多機通訊原理框圖在總線末端接一個匹配電阻,吸收總線上的反射信號,保證正常傳輸信號干凈,無毛刺。匹配電阻的取值應(yīng)該與總線的特性阻抗相當。當總線上沒有信號傳輸時,總線處于懸浮狀態(tài),容易受干擾信號的影響。將總線上差分信號的正端A+和+5電源間接一個10K的電阻;正端A+和負端B-間接一個10K的電阻;負端B-和地間接一個10K的電阻,形成一個電阻網(wǎng)絡(luò)。當總線上沒有信號傳輸時,正端A+的電平大約為3.2V,負端B-的電平大約為1.6V,即使有干擾信號,卻很難產(chǎn)生串行通信的起始信號0,從而增加了總線抗干擾的能力。通信規(guī)則由于RS-485通訊是一種半雙工通訊,發(fā)送和接收共用同一物理信道。在任意時刻只允許一臺單機處于發(fā)送狀態(tài)。因此要求應(yīng)答的單機必須在偵聽到總線上呼叫信號已經(jīng)發(fā)送完畢,并且沒有其它單機發(fā)出應(yīng)答信號的情況下,才能應(yīng)答。半雙工通訊對主機和從機的發(fā)送和接收時序有嚴格的要求。如果在時序上配合不好,就會發(fā)生總線沖突,使整個系統(tǒng)的通訊癱瘓,無法正常工作。要做到總線上的設(shè)備在時序上的嚴格配合,必須要遵從以下幾項原則:①復位時,主從機都應(yīng)該處于接收狀態(tài)。SN75176芯片的發(fā)送和接收功能轉(zhuǎn)換是由芯片的RE*,DE端控制的。RE*=1,DE=1時,SN75176發(fā)送狀態(tài);RE*=0,DE=0時,SN75176處于接收狀態(tài)。一般使用單片機的一根口線連接RE*,DE端。在上電復位時,由于硬件電路穩(wěn)定需要一定的時間,并且單片機各端口復位后處于高電平狀態(tài),這樣就會使總線上各個分機處于發(fā)送狀態(tài),加上上電時各電路的不穩(wěn)定,可能向總線發(fā)送信息。因此,如果用一根口線作發(fā)送和接收控制信號,應(yīng)該將口線反向后接入SN75176的控制端,使上電時SN75176處于接收狀態(tài)。另外,在主從機軟件上也應(yīng)附加若干處理措施,如:上電時或正式通訊之前,對串行口做幾次空操作,清除端口的非法數(shù)據(jù)和命令。②控制端RE*,DE的信號的有效脈寬應(yīng)該大于發(fā)送或接收一幀信號的寬度。在RS-232,RS-422等全雙工通訊過程中,發(fā)送和接收信號分別在不同的物理鏈路上傳輸,發(fā)送端始終為發(fā)送端,接收端始終為接收端,不存在發(fā)送、接收控制信號切換問題。在RS-485半雙工通訊中,由于SN75176的發(fā)送和接收都由同一器件完成,并且發(fā)送和接收使用同一物理鏈路,必須對控制信號進行切換??刂菩盘柡螘r為高電平,何時為低電平,一般以單片機的TI,RI信號作參考。發(fā)送時,檢測TI是否建立起來,當TI為高電平后關(guān)閉發(fā)送功能轉(zhuǎn)為接收功能。接收時,檢測RI是否建立起來,當RI為高電平后,接收完畢,又可以轉(zhuǎn)為發(fā)送[23]。在理論上雖然行得通,但在實際聯(lián)調(diào)中卻出現(xiàn)傳輸數(shù)據(jù)時對時錯的現(xiàn)象。根據(jù)查證有關(guān)資料,并在聯(lián)調(diào)中借助存儲示波器反復測試,才發(fā)現(xiàn)一個值得注意的問題,我們可以查看單片機的時序:圖3.10串行口模式3時序圖單片機在串行口發(fā)送數(shù)據(jù)時,只要將8位數(shù)據(jù)位傳送完畢,TI標志即建立,但此時應(yīng)發(fā)送的第九位數(shù)據(jù)位(若發(fā)送地址幀時和停止位尚未發(fā)出。如果在這是關(guān)閉發(fā)送控制,勢必造成發(fā)送幀數(shù)據(jù)不完整。如果單片機多機通訊采用較高的波特率,幾條操作指令的延時就可能超過2位(或1位數(shù)據(jù)的發(fā)送時間,問題或許不會出現(xiàn)。但是如果采用較低波特率,如9600,發(fā)送一位數(shù)據(jù)需100μs左右,單靠幾條操作指令的延時遠遠不夠,問題就明顯地暴露出來。接收數(shù)據(jù)時也同樣如此,單片機在接收完8個數(shù)據(jù)位后就建立起RI信號,但此時還未接收到第九位數(shù)據(jù)位(若接收地址幀時和停止位。所以,接收端必須延時大于2位數(shù)據(jù)位的時間(1位數(shù)據(jù)位時間=1/波特率,再作應(yīng)答,否則會發(fā)生總線沖突。③總線上所連接的各單機的發(fā)送控制信號在時序上完全隔開。為了保證發(fā)送和接收信號的完整和正確,避免總線上信號的碰撞,對總線的使用權(quán)必須進行分配才能避免競爭,連接到總線上的單機,其發(fā)送控制信號在時間上要完全隔離。總之,發(fā)送和接收控制信號應(yīng)該足夠?qū)?以保證完整地接收一幀數(shù)據(jù),任意兩個單機的發(fā)送控制信號在時間上完全分開,避免總線爭端。3.5主控機部分主控機主要負責控制從機,包括設(shè)置從機信息和收集從機檢測信號,然后將收集到的數(shù)據(jù)進行存儲、分析、顯示、打印,并能根據(jù)用戶設(shè)置的報警閾值進行聲光報警。這部分的硬件電路設(shè)計除了鍵盤、液晶、打印機等常規(guī)外設(shè)外,增加了一片24C04用來保存溫度數(shù)據(jù),另外,增加了一片日歷時鐘芯片PCF8563。24C04是基于I2C總線的串行E2PROM,存儲容量512個字節(jié),它占用單片機資源很少,僅占用了兩根I/O線,數(shù)據(jù)一旦寫入可保存100年,避免了普通RAM掉電保護的麻煩,非常適合于各類儀器儀表和控制裝置的參數(shù)保存。主控機每個整點收集一次數(shù)據(jù),并將數(shù)據(jù)保存到E2PROM。每個溫度數(shù)據(jù)占用2個字節(jié),這樣,我們設(shè)計共保存24組歷史數(shù)據(jù),占用1922424=??個字節(jié)。當存滿24組數(shù)據(jù)后,整點再次接收數(shù)據(jù)時,將最早保存的數(shù)據(jù)刪除,其他數(shù)據(jù)依次前移為新數(shù)據(jù)空出位置。PCF8563是低功耗的CMOS實時時鐘/日歷芯片,它提供一個可編程時鐘輸出,一個中斷輸出和掉電檢測器,所有的地址和數(shù)據(jù)通過I2C總線串行傳遞[24]。這兩部分電路設(shè)計原理圖如下:圖3.11主機24C04與8563部分電路原理圖PCF8563:PCF8563是PHILIPS公司推出的一款工業(yè)級內(nèi)含I2C總線接口功能的具有極低功耗的多功能時鐘/日歷芯片。PCF8563的多功能報警功能,定時功能,時鐘輸出功能以及中斷輸出功能能完成各種復雜的定時服務(wù),甚至為單片機提供看門狗功能。內(nèi)部時鐘電路,內(nèi)部振蕩電路,內(nèi)部低電壓檢測電路(1.0V以及兩線制I2C總線通訊方式,不但使外圍電路極其簡潔,而且也增加了芯片的可靠性。同時每次寫數(shù)據(jù)后,內(nèi)嵌的字地址寄存器會自動產(chǎn)生增量。當然作為時鐘芯片,PCF8563亦解決了2000年問題。因而,PCF8563是一款性價比極高的時鐘芯片,它已被廣泛用于電表,水表,氣表,電話,傳真機,便攜式儀器以及電池供電的儀器儀表等產(chǎn)品領(lǐng)域。PCF8563的特性:寬電壓范圍1.0~5.5V,復位電壓標準值0.9V;超低功耗;可編程時鐘輸出頻率為32.768KHz,1024Hz,32Hz,1Hz;四種報警功能和定時器功能;內(nèi)含復位電路,振蕩器電路和掉電檢測電路;開路中斷輸出;400KHzI2C總線,其從地址:讀,0A3H;寫,0A2H。PCF8563原理:PCF8563有16個8位寄存器;一個可自動增量的地址寄存器,一個內(nèi)置32.768KHz的震蕩器(帶有一個內(nèi)部集成的電容,一個分頻器,一個可編程時鐘輸出,一個定時器,一個報警器,一個掉電檢測器和一個400KHzI2C總線接口。所有16個寄存器設(shè)計成可尋址的8位并行寄存器,但不是所有位都有用。前兩個寄存器(內(nèi)存地址00H,01H用于控制寄存器和狀態(tài)寄存器內(nèi)存地址02H~08H用于時鐘計數(shù)器,地址09H~0CH用語報警寄存器(定義報警條件,地址0DH控制CLKOUT管腳的輸出頻率,地址0EH和0FH分別用于定時器控制寄存器和定時寄存器。秒,分鐘,小時,日,月,年,分鐘報警,小時報警,日報警寄存器,編碼格式為BCD,星期和星期報警寄存器不以BCD格式編碼。26當一個RTC寄存器被讀時,所有計數(shù)器的內(nèi)容被鎖存,因此,在傳送條件下,可以禁止對時鐘/日歷的讀錯。①報警功能模式一個或多個報警寄存器MSB清0時,相應(yīng)的報警條件有效,這樣,一個報警將在每分鐘至每星期范圍內(nèi)產(chǎn)生一次。設(shè)置報警標志位AF(控制/狀態(tài)寄存器2的位3用于產(chǎn)生中斷,AF只可以用軟件清除。②定時器8位的倒計數(shù)器(0FH由定時器控制寄存器控制,定時器控制寄存器用于設(shè)定定時器的頻率,以及設(shè)定定時器有效或無效。定時器從軟件設(shè)置的8位二進制數(shù)倒計時,每次到計數(shù)結(jié)束,定時器設(shè)置標志位TF,定時器標志位TF只可以用軟件清除,TF用于產(chǎn)生一個中斷,每個到計數(shù)周期產(chǎn)生一個脈沖作為中斷信號。TI/TP控制中斷產(chǎn)生的條件。當讀定時器時,返回當前到計數(shù)的數(shù)值。③CLKOUT管腳CLKOUT可以輸出可編程的方波。CLKOUT頻率寄存器決定方波的頻率,CLKOUT可以輸出321.7678KHz,1024,32,1Hz的方波。CLKOUT為開路輸出管腳,上電時輸出有效,無效時輸出為高阻抗。④復位PCF8563包含一個片內(nèi)復位電路,當振蕩器停止工作時,復位電路開始工作。在復位狀態(tài)下,I2C總線初始化,寄存器TF,VL,TD1,TD0,TESTC,AE被置邏輯1,其他的寄存器和地址指針被清0。⑤掉電檢測器和時鐘監(jiān)控PCF8563內(nèi)嵌掉電檢測器,當VDD低于VLOW時,位VL被置1,用于指明可能產(chǎn)生不準確的時鐘/日歷信息,VL標志位只可以用軟件清除,當VDD慢速降低達到VLOW時,標志位VL被置,這時可能會產(chǎn)生中斷。⑥EXT_CLK測試模式測試模式用于在線測試,建立測試模式和控制RTC的操作。測試模式由控制/狀態(tài)寄存器1的位TEST1設(shè)定,這時CLKOUT管腳成為輸入管腳。在測試模式狀態(tài)下。通過CLKOUT管腳輸入的頻率信號代替片內(nèi)的64Hz頻率信號,每64個上升沿將產(chǎn)生1秒的時間增量。注意:進入EXT_CLK測試模式時時鐘不與片內(nèi)64HZ時鐘同步,也確定不出預分頻的狀態(tài)。⑦電源復位(POR替換模式POR的持續(xù)時間直接也振蕩器的起動時間有關(guān)。一種內(nèi)嵌的長時間起動的電路可使POR失效,這樣可使設(shè)備測試加速。當進入替換模式時,芯片立即停止復位,操作通過I2C總線進入EXT_CLK測試模式。設(shè)27置TESTC邏輯0可消除替換模式,再次進入替換模式只有在設(shè)置TESTC為邏輯1后進行。在普通模式時設(shè)置TESTC為邏輯0沒有意義,除非想阻止進入POR替換模式[25]。⑧石英晶片頻率調(diào)整方法一定值OSCI電容——計算所需的電容平均值,用此值的定值電容,通電后在CLKOUT管腳上測出的頻率應(yīng)為32.768KHZ,測出的頻率值偏差取決于石英晶片,電容偏差和器件之間的偏差。平均偏差可達5分鐘/年。方法二OSCI微調(diào)電容——可通過調(diào)整OSCI管腳的微調(diào)電容使振蕩器頻率達到精確值,這時可測出管腳CLKOUT上的32.768KHZ信號。方法三OSCI輸出——直接測量管腳OSCI的輸出。3.6電源部分題目要求設(shè)計獨立的直流穩(wěn)壓電源,我們根據(jù)系統(tǒng)要求,設(shè)計了電源,能提供+12V、-12V、+5V三種電源。電路原理圖如下所示:圖3.12電源電路原理圖3.7多路開關(guān)的選擇2829多路模擬開關(guān)用來切換模擬信號。對于A/D通道來說,需要用多路輸入、一路輸出的模擬開關(guān),使輸入的多路模擬信號輪流與A/D轉(zhuǎn)換器接通。這種電路已經(jīng)有集成的電路產(chǎn)品,如CD4051、CD4052、CD4097都是可以進行雙向切換的多路開關(guān),他們既可以作多路輸入、一路輸出的模擬開關(guān),也可以作一路輸入、多路輸出的模擬開關(guān)。本設(shè)計中我所選用的是CD4051:圖3.13為CD4051的引腳圖。圖3.13CD4051的引腳圖其中-S引腳為選通端,只有當-S為低電平時,才能選通某一通道,使開關(guān)接通。A2~A0使開關(guān)通道號輸入端,當A2~A0輸入000~111時,分別對應(yīng)0~7通道上的開關(guān)處于閉合狀態(tài)。通常,-S和A2~A0信號由接在CPU數(shù)據(jù)總線上的一個鎖存器提供,這樣就可以用輸出指令實現(xiàn)通道選擇。-S端和A2~A0引腳均要求輸入TTL電平信號,而各個CMOS開關(guān)則要用CMOS電平控制,邏輯電平轉(zhuǎn)換電路完成從TTL電平到CMOS電平的轉(zhuǎn)換。8個I/O引腳I/00~I/O7可以作為輸入端,這時O/I引腳便作為輸出端,開關(guān)實現(xiàn)8到1的選擇功能。由于CMOS開關(guān)可以雙向工作,即信號也允許從O/I引腳輸入,根據(jù)需要,從8個I/O引腳中的某一個輸出,實現(xiàn)1-8的分配功能。該片子有三個電源引腳,其中,Vss通常與系統(tǒng)模擬地相連,Vdd接正電壓(如10V,Vee接負電壓或地.第四章軟件部分304.1軟件流程圖圖3.14主機總體流程31圖3.15從機響應(yīng)主機命令流程32圖3.16從機采樣溫度值主流程334.2程序voidUpdateDC({WORDDCVal;if(DspCalibrate==_False{DCVal=DspTable.DcVal;if(MuxAddr[CurrentDC]==_TempAddr{if(LastTemperature==0x7FFF//initconditionLastTemperature=DCVal-3692;LastTemperature=(LastTemperature+(DCVal-3692/2;CalcTable[_DCOffset+DCCalcTableXRef[CurrentDC]]=(DWORDLastTemperature;}else{/*ResetSystemifSync.ErrorDetected*///if((MuxAddr[CurrentDC]==_NegRefAddr&&//((DCVal>0xc0a2||(DCVal<0xbf5d//if(((

溫馨提示

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

評論

0/150

提交評論