數(shù)字式溫度計設計說明書_第1頁
數(shù)字式溫度計設計說明書_第2頁
數(shù)字式溫度計設計說明書_第3頁
數(shù)字式溫度計設計說明書_第4頁
數(shù)字式溫度計設計說明書_第5頁
已閱讀5頁,還剩11頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、學習情境三數(shù)字式溫度計制作與調試說明書電子1034班組別:第四組組員:XXXXXX2021年3月8日目錄一、工作任務-3-二、總體設計思路-3-2.1 整體功能說明-3-2.2 總體框圖-3-三、硬件設計-3-3.1 硬件模塊組成-3-3.2 各模塊說明-3-1) 主限制器-3-2顯示驅動與顯示電路-4-3測溫模塊-4-4報警電路-4-5復位電路-5-四、軟件設計-5-1.1 程序結構-5-1.2 各模塊說明及流程圖-6-1主程序流程圖-6-2讀出溫度子程序流程圖-6-3顯示數(shù)據(jù)刷新子程序流程圖-7-4計算溫度子程序流程-7-5溫度轉換命令子程序流程圖-8-1.3 程序清單-8-五、調試過程-

2、13-5.1 調試方法與步驟-13-5.2 調試結果-13-六、附件-14-一、工作任務開發(fā)完成一個簡易的數(shù)字式溫度計.二、總體設計思路2.1 整體功能說明進行報警功能.開發(fā)完成一個簡易的數(shù)字式溫度計.測溫范圍在一55125C,誤差在土05c以內.溫度測量間隔時間選擇12s.通過鍵盤擴展行列式或獨立式按鍵,有溫度上下限值及溫度報警功能.在數(shù)字式溫度計的制作中主要以51單片機AT89C51來限制,用溫度傳感器檢測外界的溫度,軟件的顯示子程序用四位一體數(shù)碼管顯示出來,精確到1位小數(shù)點,在超出測溫范圍時,2.2 總體框圖時鐘晶振單片機8051系統(tǒng)框圖報警三、硬件設計3.1 硬件模塊組成本電路由單片機

3、,測溫電路,復位電路,報警電路,顯示驅動與顯示電路等組成了數(shù)字式溫度計.3.2 各模塊說明1主限制器:單片機AT89C51具有低電壓和小體積等特點,兩個端口-3-剛好滿足系統(tǒng)的設計需要痕適合便攜手持式產(chǎn)品的設計使用篙魯空藍哥;:2舌一2顯示驅動與顯示電路:采用共陽四位LED數(shù)碼管,用三極管做驅動3測溫模塊:DS18B20溫度傳感器是智能溫度傳感器,它能直接讀出被測溫度,并且可根據(jù)實際要求通過簡單的編程實現(xiàn)912位的數(shù)字值讀數(shù)方式.4報警電路:運用直流的蜂鳴器,發(fā)光二極管組成,用于電路在超限的情況下發(fā)出光報警,也可通過取反來實現(xiàn)電路的閃爍報警5復位電路:采用按鍵手動復位電路,外接電容電阻與點動開

4、關四、軟件設計4.1 程序結構軟件設計分為主程序、讀出溫度子程序、溫度轉換命令子程序、計算溫度子程序和顯示數(shù)據(jù)刷新子程序軟件流程圖4.2 各模塊說明及流程圖1主程序流程圖RAM中的9字節(jié).在讀出時須進行CRC校驗,說明:主程序的主要功能是負責溫度的實時顯示、讀出并處理DS18B20的測量溫度值溫度測量每1s進行一次.這樣可以在1s之內測量一次被測溫度.2讀生溫度子程序流程圖讀出溫度子程序的主要功能是讀出校驗有錯時不進行溫度數(shù)據(jù)的改寫.3顯示數(shù)據(jù)刷新子程序流程圖顯示數(shù)據(jù)刷新子程序主要是對顯示緩沖器中的顯示數(shù)據(jù)進行刷新操作,當最高數(shù)據(jù)顯示位為0時,將符號顯示位移入下一位.4計算溫度子程序流程計算溫

5、度子程序將RAM中讀取值進行BCD碼的轉換運算,并進行溫度值正負的判定.5溫度轉換命令子程序流程圖溫度轉換命令子程序主要是發(fā)溫度轉換開始命令.當采用12位分辨率時,轉換時間約為750ms0在本程序設計中,采用1s顯示程序延時法等待轉換的完成.4.3 程序清單.*;常數(shù)定義*TIMELEQU0E0HTIMEHEQU0B1HTEMPHEADEQU36H*工作內存定義*BITSTDATA20HTIME1SOKBITBITST.1TEMPONEOKBITBITST.2TEMPLDATA26HTEMPHDATA27HTEMPHCDATA28HTEMPLCDATA29H*;20MS,定時器0時間常數(shù)11;

6、引腳定義;*;TEMPDINBITP3.4.*;ORG0000HAJMPMAINORG0003HAJMPINT_0ORG000BHAJMPT_BDJNZR6,$;ORG0013HMOVR6,#3CHAJMPINT_1LOOP1820:MOVC,TEMPDIN;ORG0030HJCINITDS1820OUT;MAIN:MOVTMOD,#00HDJNZR6,LOOP1820MOVTH0,#63HMOVR6,#064H;DELAY200usMOVTL0,#18HDJNZR6,$;MOVR5,#100SJMPINITDS1820;SETB07HRET;SETBIT0INITDS1820OUT:SETB

7、TEMPDIN;SETBIT1RET;SETBEX0;讀DS18B20的程序,從DS18B20中讀出一個字節(jié)的數(shù)據(jù)SETBEX1READDS1820:MOVR7,#08H;SETBET0SETBTEMPDIN;SETBEANOP;SETBTR0NOP;LCALLREADTEMPREADDS1820LOOP:CLRTEMPDIN;LOOP:LCALLCFNOP;LCALLDISNOP;AJMPLOOPNOP;T_B:SETBTEMPDIN;MOVTH0,#63HMOVR6,#07H;DELAY15usMOVTL0,#18HDJNZR6,$;DJNZR5,LOOP8MOVC,TEMPDINMOVR

8、5,#100MOVR6,#3CH;DELAY120usLCALLREADTEMPDJNZR6,$;LCALLREADTEMP1CALLCONVTEMPrrca;LOOP8:RETISETBTEMPDIN;INT_0:CLR05HDJNZINT_1:JB05H,READDS1820LOOP;MOVR6,#3CH;DELAY120us;子程序區(qū)DJNZR6,$;RET;RESETDS18B20;寫DS18B20的程序,從DS18B20中寫一個字節(jié)的數(shù)據(jù);WRITEDS1820:MOVR7,#08H;INITDS1820:SETBTEMPDIN;SETBTEMPDIN;NOP;NOP;NOP;NOP

9、;CLRTEMPDIN;WRITEDS1820LOP:CLRTEMPDIN;MOVR6,#0A0H;DELAY480usMOVR6,#07H;DELAY15usDJNZR6,$DJNZR6,$;MOVR6,#0A0HRRCAJR7,R6,$DJNZJSETBTEMPDINMOVR6,#32H;DELAY70us;*XRLA,#18H;UpdateTheCRCValue;READTEMPCRC8LOOP2:RRCA;PositionTheNewCRC;*MOVB,A;StoreTheNewCRCREADTEMP:LCALLINITDS1820;POPACC;GetTheRemainingBits

10、MOVA,#0CCH;RRA;PositionTheNextBitLCALLWRITEDS1820;SKIPROMPUSHACC;SaveTheRemainingBitsMOVR6,#34H;DELAY104usDJNZR7,CRC8LOOP1;RepeatFor8BitsDJNZR6,$;POPACCMOVA,#44H;RETLCALLWRITEDS1820;STARTCONVERSION;處理溫度BCD碼子程序MOVR6,#34H;DELAY104usCONVTEMP:MOVA,TEMPH;DJNZR6,$;ANLA,#80H;RET;JZTEMPC1;READTEMP1:LCALLINI

11、TDS1820;CLRC;MOVA,#0CCH;MOVA,TEMPL;LCALLWRITEDS1820;SKIPROMCPLA;MOVR6,#34H;DELAY104usADDA,#01H;DJNZR6,$;MOVTEMPL,A;MOVA,#0BEH;MOVA,TEMPH;-LCALLWRITEDS1820;SCRATCHPADCPLA;MOVR6,#34H;DELAY104usADDCA,#00H;DJNZR6,$;MOVTEMPH,A;TEMPHCHI=符號位MOVR5,#09H;MOVTEMPHC,#0BH;MOVR0,#TEMPHEAD;SJMPTEMPC11;MOVB,#00HTEM

12、PC1:MOVTEMPHC,#0AH;+READTEMP2:LCALLREADDS1820;TEMPC11:MOVA,TEMPHCMOVR0,A;SWAPAINCR0;MOVTEMPHC,AREADTEMP21:LCALLCRC8CAL;MOVA,TEMPL;DJNZR5,READTEMP2;ANLA,#0FH;乘0.0625MOVA,B;MOVDPTR,#TEMPDOTTAB;JNZREADTEMPOUT;MOVCA,A+DPTRMOVA,TEMPHEAD+0;MOVTEMPLC,A;MOVTEMPL,A;TEMPLCLOW=小數(shù)局部BCDMOVA,TEMPHEAD+1;MOVA,TEMPL

13、;整數(shù)局部MOVTEMPH,A;ANA,#0F0H;READTEMPOUT:RET;SWAPA;CalculateCRC-8Values.UsesTheCCITT-8Polynomial,ExpressedAsMOVTEMPL,A;XA8+XA5+XA4+1MOVA,TEMPH;RETJJMOVTEMPDIN,C;CRC8CAL:PUSHACC;MOVR6,#34H;DELAY104usMOVR7,#08H;NumberBitsInByteDJNZR6,$;CRC8LOOP1:XRLA,B;CalculateCRCSETBTEMPDIN;RRCA;MoveToCarryDJNZR7,WRITE

14、DS1820LOPMOVA,B;GetTheLastCRCValueJNCCRC8LOOP2;SkipIfData=0SWAPA;ORLA,TEMPL;LCALLHEX2BCD1;MOVTEMPL,A;ANLA,#0F0H;SWAPA;ORLA,TEMPHC;TEMPHCLOW=十位數(shù)BCDMOVTEMPHC,A;MOVA,TEMPL;ANLA,#0FH;SWAPA;TEMPLCHI=個位數(shù)BCDORLA,TEMPLC;MOVTEMPLC,A;MOVA,R7;JZTEMPC12;ANLA,#0FH;SWAPA;MOVR7,A;MOVA,TEMPHC;TEMPHCHI=百位數(shù)BCDANLA,#0

15、FH;ORLA,R7;MOVTEMPHC,A;TEMPC12:RET;.*ANLA,#0FHJ;小數(shù)局部碼表.*;TEMPDOTTAB:DB00H,01H,01H,02H,03H,03H,04H,04H,05H,06HDB06H,07H,08H,08H,09H,09H;單字節(jié)16進制轉BCD.*HEX2BCD1:MOVB,#064H;16進制->BCDDIVAB;B=A%100MOVR7,A;R7=百位數(shù)MOVA,#0AH;XCHA,B;DIVAB;B=A%BSWAPA;ORLA,B;RET;DIS:MOVR1,#70HMOVR2,#11111110BLD0:MOVP0,#00HMOVA

16、,R1MOVDPTR,#TABLEMOVP0,AMOVA,R2DB0BFH;DB36HJNBACC.2,NB;DB0A1HSETBP0.7;DB86HAJMPBN;DB8eHNB:CLRP0.7DELAY:MOVR3,#030HBN:MOVP2,ALOOP0:MOVR4,#00FHLCALLDELAYDJNZR4,$INCR1DJNZR3,LOOP0MOVA,R2RETJNBACC.3,LD1CF:MOVA,29HRLAANLA,#0FHMOVR2,AMOV73H,AAJMPLD0MOVA,29HLD1:RETANLA,#0F0HORG0A00HSWAPATABLE:DB0c0HMOV72H,

17、ADB0f9HMOVA,28HDB0a4HANLA,#0FHDB0b0HMOV71H,ADB99HMOVA,28HDB92HANLA,#0F0HDB82HSWAPADB0f8HMOV70H,ADB80HRETDB90HENDDB0FFHMOVCA,A+DPTR五、調試過程5.1調試方法與步驟1、程序調試數(shù)字式溫度計的源程序編寫完之后,我們使用軟件和Protel共同來調試源程序的爭取與否.2、仿真硬件設計的內容使用Protel軟件,來畫出主控模塊,采集模塊,顯示模塊和報警模塊五個模塊來組成完整的仿真圖.3、電路板調試用萬用表檢查電路板各局部接線,檢查是否已焊接正確,檢查完成之后,用仿真器與電路板

18、相連,參加+5V電壓,下載軟件程序并正確編譯,在電路板上觀察LED的顯示變化,記錄室溫的變化5.2調試結果能準確測量室溫,并一秒定時更新一次.LED顯示DS18B20勺當前溫度19.2攝氏度.顯示當前室溫,顯示溫度LED可隨室溫的升高而逐漸升高,溫度到達上限時,蜂鳴器會發(fā)出報警聲音提示,假設溫度到了所設定的最低溫度以下,也會發(fā)出警報聲.本次設計實現(xiàn)了低功耗高精度便攜式數(shù)字溫度計的設計.DS18B20專感器精度高、互換性好;它直接將溫度數(shù)據(jù)進行編碼,可以只是使用一根電纜傳輸數(shù)據(jù),通信方便,傳輸距離遠且抗干擾性好;與用傳統(tǒng)溫度傳感器組成的多點測溫系統(tǒng)相比可節(jié)省大量電纜.而且系統(tǒng)得以簡化,系統(tǒng)擴充維護十分方便.DS18B2M以廣泛用于工廠工業(yè)過程、大型糧倉、釀酒廠、食品加工廠的溫度檢測以及賓館、儀器儀表室等處的溫度檢測與控制.六、附件元器件清單序號名稱數(shù)值型號數(shù)量1電容C110uf

溫馨提示

  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論