《單片機原理及接口技術》課程設計報告-數字溫度計設計_第1頁
《單片機原理及接口技術》課程設計報告-數字溫度計設計_第2頁
《單片機原理及接口技術》課程設計報告-數字溫度計設計_第3頁
《單片機原理及接口技術》課程設計報告-數字溫度計設計_第4頁
《單片機原理及接口技術》課程設計報告-數字溫度計設計_第5頁
已閱讀5頁,還剩23頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

1、單片機原理及接口技術課程設計報告課題名稱數字溫度計設計學 院自動控制與機械工程學院專 業電氣工程及其自動化專業班 級XX級電氣(X)班姓 名學 號XXXXXXXXXXXXXX時 間2011年12月 27日數字溫度計設計報告摘要基于AT89C52單片機的一種數字溫度測量及報警電路運用74HC244隔離電壓來保護單片機,該電路采用TP100作為溫度檢測元件測量溫度范圍:-50110;在該系統系統中擴展8位AVD轉換器ADC0808完成模數轉換,AVD轉換控制可使用查詢方式,或中斷方式;使用LED顯示模塊,能設置溫度報警上下限。該電路設計額定功率強大、結構簡單,在數字化、智能化方面有廣泛的應用。關鍵

2、詞 溫度測量 PT100 AT89C51單片機 LED顯示模塊74HC244 SummaryAT89C52 single chip microcomputer based on a digital temperature measurement and alarm circuit using 74 HC244 isolation voltage to protect a single-chip microcomputer, the circuit is used as test components TP100 temperature measuring temperature range:-

3、50 110 ; In the system of eight AVD system extension ADC0808 completed converter module conversion, AVD conversion control can use inquires the way, or interrupt mode; Use LED display module, can set the lower temperature alarm. The circuit design rated power strong, simple structure, in digital, in

4、telligent with extensive application. Keyword : Temperature measurement PT100 AT89C51 single-chip microcomputer LED display module 74 HC244 目錄一、內容提要31、設計任務:32、設計要求:3二、步驟及方案41、設計步驟42、方案論證4三、硬件設計51、總體電路設計圖52、主控制器63、A/D轉換74、測溫電路95、低通有源濾波放大106、顯示電路10四、軟件設計141、計算溫度子程序152、數據轉換子程序163、報警子程序17五、系統調試18六、課程設計體

5、會21七、參考文獻22附錄23一、內容提要1、 設計任務:基于MS-51系列單片機AT89C51,使用熱敏電阻類的傳感器件,設計一個數字顯示溫度計。2、設計要求:(1)、測量溫度范圍:-50110。(2)、精度誤差小于0.5。(3)、LED數碼自讀顯示。(4)、可以任意設計溫度的上下限報警功能。(5)、編程實現熱敏電阻的非線性補償。(7)、實現語音報出測量的溫度值。二、步驟及方案1、設計步驟(1)、硬件電路圖,由XX同學設計完成;軟件程序部分由XX同學編寫調試;實驗設計報告由XX同學完成。(2)、首先設計硬件電路,調試電路參數,找出溫度變化與電壓變化之間的關系,調試電路,實際結果為:溫度為-5

6、0時電路輸出電壓值為0.10V,溫度為110時電路輸出電壓值為4.81V。(3)、根據電路中溫度與電壓之間的關系,編寫程序算法,對應關系為溫度值電壓值0.66-55,根據設計要求編寫調試程序。(4)、根據設計要求,基于硬件電路與軟件程序的設計思路撰寫設計報告。2、方案論證根據系統的設計的要求,選擇PT100作為本系統的溫度傳感器,選擇單片機AT89C52為監測系統的核心來完成數據采集、處理、顯示、報警等功能。同時還選用8位A/D轉換器ADC0808完成模數轉換,省卻了采樣/保持電路、運放以及進行長距離傳輸時的串/并轉換電路,簡化了電路,縮短了系統的工作時間,降低了系統的硬件成本。該系統的設計總

7、體思路如下,溫度傳感器PT100把所測得的溫度發送到A/D轉換器ADC0808上,完成模數轉換;接著再把信號傳到AT89C52單片機上,經過52單片機的處理,將把溫度在LED顯示模塊上顯示,本系統采用4位共陽極LED數碼管以動態掃描的方法實現。測量溫度范圍:-50110。 按照系統設計功能的要求,確定系統由4個模塊組成:主控制器、A/D轉換、測溫電路和顯示電路。 數字溫度計總體設計電路結構圖如圖1所示:圖1 數字溫度計總體電路結構框圖三、硬件設計1、總體電路設計圖數字溫度計總體設計電路圖如圖2所示:圖2 數字溫度計總體設計電路圖2、主控制器(1)單片機的選擇AT89C51作為溫度測試系統的核心

8、器件。該器件是INTEL公司生產的MCS51系列單片機的基礎產品,采用了可靠的CMOS工藝制造技術,具有高性能的8位單片機,屬于標準的MCS51的CMOS產品。不僅結合了HMOS的高速和高密度技術及HMOS的低功耗特征,而且繼承和擴展了MCS48單片機的體系結構和指令系統。單片機小系統的電路圖如圖3所示。圖3 單片機小系統電路AT89C51單片機的主要特征:A、與MCS51兼容,4K字節可編程閃爍存儲器;b、靈活的在線系統編程,掉電標識和快速編程特性;c、壽命為1000次寫/擦周期,數據保留時間可10年以上;d、全靜態工作模式:0HZ33HZ;e、三級程序存儲器鎖定;f1288位內部RAM,3

9、2位可編I/O線;g、兩個16位定時器/計數器,5個中斷源,4個8位并行的I/O接口,1個全雙工I/O接口。h、有位尋址功能、適于布爾處理的位處理機。(2)單片機與報警電路系統中的報警電路是由發光二極管和限電流電阻組成,并與單片機的P1.2端口連接。P1端口的作用和接線方法與P2端口相同,不同的是Flash編程和程序校驗,P1接收低8位地址數據。(3)程序存儲器 本系統的所需的沒有必要外擴程序存儲器,所以不用考慮存儲器擴充容量的大小,單片機本身的存儲器就已足夠。(4)數據存儲器 根據系統的功能要求,不需擴展外部RAM,89C51本身的RAM就能滿足要求。(5)I/O接口芯片 根據系統的功能要求

10、,I/O接口芯片的也不需進行擴展。(6)總線驅動能力 MCS-51系列單片機的外部擴展功能很強,但4個8位并行的帶負載的能力是有限的。P0口能驅動8個TTL電路,P1P3口只能驅動3個TTL電路。在實際運用中,這些端口的負載不應超過總負載能力的70%,以保證留有一定的余量,以增強系統的抗干擾能力,在外接負載較多的情況下,應采用總線驅動電路,以提高端口的驅動能力和抗干擾能力。3、A/D轉換ADC0808是采樣分辨率為8位的、以逐次逼近原理進行模/數轉換的器件。其內部有一個8通道多路開關,它可以根據地址碼鎖存譯碼后的信號,只選通8路模擬輸入信號中的一個進行A/D轉換。一般在硬件仿真時采用ADC08

11、08進行A/D轉換,實際使用時采用ADC0809進行A/D轉換。利用ADC0808實現測量值為50110的溫度,基準電壓采用5V電源電壓。由于ADC0808為8位A/D轉換器,則A/D采樣的最小分辨溫度為5/150=0.03。由此 可知,顯示的溫度只要小數點后保留一位即可。ADC0808芯片有28條引腳,采用雙列直插式封裝,如圖4所示。其時序圖如圖5所示,各引腳功能如下: 15和2628(IN0IN7):8路模擬量輸入端。 8、14、15和1721:8位數字量輸出端。 22(ALE):地址鎖存允許信號,輸入,高電平有效。 6(START): AD轉換啟動脈沖輸入端,輸入一個正脈沖(至少100n

12、s寬)使其啟動(脈沖上升沿使0809復位,下降沿啟動A/D轉換)。 7(EOC): AD轉換結束信號,輸出,當AD轉換結束時,此端輸出一個高電平(轉換期間一直為低電平)。 9(OE):數據輸出允許信號,輸入,高電平有效。當AD轉換結束時,此端輸入一個高電平,才能打開輸出三態門,輸出數字量。 10(CLK):時鐘脈沖輸入端。要求時鐘頻率不高于640KHZ。 12(VREF(+)和16(VREF(-):參考電壓輸入端 。11(Vcc):主電源輸入端。 13(GND):地。 圖4 0808的引腳圖圖5 0808的時序圖4、測溫電路金屬鉑(Pt)的電阻值隨溫度的變化而變化,并具有良好的重視性和穩定性。

13、Pt100在200850內比熱電偶更精確、線性度更佳兩端產生的降壓遠遠大于熱電偶的輸出,并且不需要冷端補償。此外,Pt100還具有抗振動、防腐蝕、良好的互換性、重視性和穩定性等優點,常用于低中溫測量。Pt100的電阻值與溫度的關系Pt100在實際應用主要有以下要點:、選型應該根據實際使用溫度測量范圍、精度、尺寸及安裝固定方式。、允許流過電流應小于5mA。在進行電流電源激勵Pt100(特別是采用電橋的電路形式)時,應注意滿足該條件,負責會造成Pt100自然而影響測量精確度。一般激勵電流采用1mA,甚至更小。、電路接入方式一般有兩線制、三線制和四線制。二線制時傳感器電阻與連導線電阻值共同構成總的電

14、阻值,所以導線電阻帶來的附加誤差會使實際測量值偏高,一般適用于低測量精度且引線短的場合;三線制要求三根引線截面積和長度均相同、引線(正負線)電阻產生的影響才能相互抵消,工業中一般采用三線制;四線制用在測量精確度高且變化很小的場合,因為在這些場合下引線電阻可能引入明顯誤差,這時可利用其中的兩條條引線提供恒定電流,另外兩條引線提供未知電阻的電壓降,四線制也是經常使用。、誤差:溫度傳感器在測量溫度的過程中主要誤差來源有傳感器對分度表的誤差;絕緣不良引起的誤差;線路引起的誤差;測量儀表引起的誤差以及傳熱誤差、動態相應誤差、干擾誤差等。其中有些誤差只有在一定條件下才出現,并且可以通過一定措施來減小或消除

15、誤差。該系統除了采用三線制的接入方式來減小引線電阻的影響外,還采用了二階有源濾波放大電路來減小外部干擾所帶來的誤差。5、低通有源濾波放大 由于被測溫度是緩慢變化的,從而Pt100的輸出信號也是緩慢變化的,采用如圖6所示的低通有源濾波放大電路來調理信號,能有效地濾除一些低頻干擾,使得輸出信號更平滑,根據圖中的參考數,可算出截止頻率圖6 低通有源濾波放大6、顯示電路 顯示電路采用4位共陽極LED數碼管,從P0口輸出斷碼,列掃描P2.0P2.3口分別作為LED的1、2、3、4。LED顯示分別為靜態顯示和動態顯示。這里采用靜態顯示,系統通過單片機的串行口來實現靜態顯示。串行口為方式零狀態,即工作在移位

16、寄存器方式,波特頻率為振蕩頻率的1/12。當器件執行任何一條將SUBF作為目的的寄存器的命令時,數據便開始從RXD端發送。信號有效時,相隔一個 機器周期后發送控制器SEND有效,即允許RXD端發送數據,同時允許TXD端輸出移位脈沖。如圖7為顯示電路連接圖,圖8為讀取數據的流程圖。圖7 顯示電路連接圖圖8 讀取數據的流程圖 讀出溫度數據后,LOW的低四位為溫度的小數部分,可以精確到0.0625,LOW的高四位和HIGH的低四位為溫度的整數部分,HIGH的高四位全部為一表示負數,全部為0表示正數。所以先將數據提取出來,分為三個部分:小數部分、整數部分和符合部分。小數部分進行四舍五入處理,大于0.5

17、的話,向個位進1;小于0.5的時候,舍去不要。當數據是負數的時候,顯示之前要進行數據轉換,將其整數部分反加一。因為PT100的最溫度只能為50,所以可以將整數部分的最高位換成一個“”,表示為負數。如圖9為溫度數據處理程序的流程圖。圖9 溫度數據處理程序的流程圖。四、軟件設計系統程序主要包括主程序,計算溫度子程序,數據轉換子程序,報警子程序和顯示數據子程序,其主程序流程圖如圖10所示。圖10 主程序流程圖1、 計算溫度子程序 計算溫度子程序將RAM所讀的數據中進行BCD碼轉換運算,并進行溫度值正負的判斷,其流程圖如圖11所示。圖11 計算溫度子程序2、 數據轉換子程序數據轉換子程序主要是將P1口

18、送入b,判斷輸入的值是否大于83,通過各種線性關系分別顯示數據,其流程圖如圖12所示。圖12 數據轉換子程序3、 報警子程序報警子程序主要是對所讀春的溫度值進行判斷是否超出量程,若大于110度,則紅燈亮蜂鳴器響,若小于-50度綠燈亮蜂鳴器響,其流程圖如圖13所示。圖13 報警子程序五、系統調試經軟件調試仿真軟件Protues調試,將溫度傳感器調到一定的溫度值,根據溫度傳感器PT100隨溫度變化電阻值發生變化的特性,利用A/D轉換采集數據,利用AT89C51作為溫度測試系統的核心器件將電壓變化轉換為溫度變化。待顯示穩定后記錄顯示模塊的溫度值,觀察對二者進行比較看是否對應,并將其記錄下來。進行多組

19、測量,觀察是否存在誤差。例如,仿真Protues,j將溫度傳感器調為0.0度,待顯示穩定后讀出測量結果為0.0度。實驗結果是,得到的有些數據存在誤差,其余的都符合設計要求。實驗基本成功。調試仿真結果如下:1、當溫度低于-50時,低溫報警,發光二極管綠燈點亮,蜂鳴器發出報警聲,仿真圖如圖14所示:圖14 低溫報警仿真圖2、當溫度高于105時,高溫報警,發光二極管紅燈點亮,蜂鳴器發出報警聲,仿真圖如圖15所示:圖15 高溫報警仿真圖3、當溫度為0時,LED顯示器應顯示000.0,仿真圖如圖16所示:圖16 溫度為0時顯示仿真圖六、課程設計體會作為一名電氣工程及其自動化專業的學生,我覺得做單片機課程

20、設計是很有意義的,而且是很有必要的,在這次課程設計的過程中帶給我們的影響很大,我們又一次的查閱大量的設計資料,每一步都有可能出現的問題,我們所做的就是迎接問題,改正錯誤,使自己的作品更加完善。其次,在這次課程設計中,我們運用了以前學過的專業知識,如Protues仿真、匯編語言、C語言、模擬和數字電路的知識等。雖然在電子技術大賽期間也曾獨立運用過它們,但是在學習過程中帶著問題去學習我發現效率很高,這就是在這次課程設計中的又一個收獲。最后,要做好一個課程設計,就必須做到在課程設計之前,對所用單片機的內部結構有一個系統的理解,知道該單片機有哪些資源:要有一個清晰的思路和一個完整的軟件電路圖;在程序設

21、計時,不能妄想一次將整個程序設計好,反復修改、不斷改進是程序設計的必經之路,要養成注釋程序的好習慣,這樣為資料的保留和交流提供了方便。在今后的學習生活中,要牢記在實驗中的經驗教訓,爭取獲得更大的進步。七、參考文獻1、李雪莉、張巖.基于AVR單片機的多功能電源設計 .現代電子技術.2009-09-012、吳亦鋒、陳德為.單片機原理與接口技術.電子工業出版社.20103、北京賽億凌科技有限公司.鉑電阻溫度傳感器(pdf).4、趙繼文.傳感器與應用電路設計.科學出版社,20025、MCP60 datas.6、楊素行.模擬電子技術M. 高等教育出版社.2006附錄源程序代碼/-/名稱:用AD0808與

22、單片機做數字溫度計/-#include#defineuncharunsignedchar#defineunintunsignedint sbitST=P25;/ADC0808引腳定義sbitOE=P27;sbitEOC=P26;sbitCLK=P24;sbitH_LED=P30;/報警指示燈sbit L_LED=P31;sbitBEEP=P37; /蜂鳴器uncharcodeDSY_CODE=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x00,0x80;/數碼管斷碼定義uncharTemperature=0,0,0,0;/待顯示各溫度數位unchart=0; unchar b,d,c;/-/延時/- void DelayMS(unint ms)unchar i;while(ms-) for(i=0;i120;i+);/-/顯示函數/-voidShow_Temperature() unchari,DSY_IDX=0xF7,0xFB,0xFD,0xFE;for(i=0;i4;i+) P0=DSY

溫馨提示

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

評論

0/150

提交評論