




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、1設計目的12. 設計要求13 總體設計方案13. 1數(shù)字溫度計設計方案論證13. 2方案一的總體設計框圖13.3 ds18b20溫度傳感器與單片機的接口電路63. 4系統(tǒng)整體硬件電路635系統(tǒng)軟件算法分析103. 6讀出溫度子程序113. 7溫度轉換命令子程序123.8計算溫度子程序133. 9顯示數(shù)據(jù)刷新子程序144 總結與體會16參考文獻16附錄181設計目的1 學會掌握0809單片機.a/d轉換芯片的用法;2. 學會掌握8051單片機用法;3 學會單片機的程序設計;4 培養(yǎng)杳閱資料的能力。2. 設計要求1基本范圍0°c100°c2精度誤差小于0.5°c3
2、led數(shù)碼直讀顯示3. 總體設計方案3. 1數(shù)字溫度計設計方案論證3. 1. 1方案一曲于本設計是測溫屯路,可以使用熱敏電阻之類的器件利用其感溫效應,進行 a/d轉換后,就可以用單片機進行數(shù)據(jù)的處理,在顯示電路上,就可以將被測溫度 顯示岀來,這種設計需要用到a/d轉換電路,感溫電路比較麻煩。3. 1.2方案二進而考慮到用溫度傳感器,在單片機電路設計屮,大多都是使用傳感器,所以 這是非常容易想到的,所以可以采用一只溫度傳感器ds18b20,此傳感器,可以很 容易直接讀取被測溫度值,進行轉換,就可以滿足設計要求。根據(jù)單片機課程設計的要求與學習口的,學習a/d轉換器的應用與實現(xiàn)和單片機的 接口連接,
3、故采用方案一來實現(xiàn)數(shù)字溫度計的控制。32方案一的總體設計框圖溫度計電路設計總體設計方框圖如圖1所示,控制器采用單片機at89s51, a/d轉 換器采用0809傳輸,溫度傳感器采用ds18b20,用3位led數(shù)碼管以串口傳送數(shù)據(jù)實 現(xiàn)溫度顯示,并用蜂鳴報警器來監(jiān)視溫度的值不超過量程范圍。圖1總體設計方框圖3. 2. 1主控制器單片機at89s51具有低電壓供電和體積小等特點,四個端口只需要兩個口就能滿足 屯路系統(tǒng)的設計需要,很適合便攜手持式產品的設計使用系統(tǒng)可用二節(jié)屯池供屯。3. 2. 2顯不電路顯示電路采用3位共陽led數(shù)碼管,從p3 口 rxd,txd串口輸出段碼。3. 2. 3溫度傳感器
4、ds 18b20溫度傳感器是美國dallas半導體公司最新推出的一種改進型智能溫度 傳感器,與傳統(tǒng)的熱敏電阻等測溫元件相比,它能直接讀出被測溫度,并冃可根據(jù)實際 要求通過簡單的編程實現(xiàn)91 2位的數(shù)字值讀數(shù)方式。ds18b20的性能特點如(1)獨特的單線接口僅需要一個端口引腳進行通信;(2)多個ds18b20可以并聯(lián)在惟一的三線上,實現(xiàn)多點組網功能;(3)無須外部器件;(4)可通過數(shù)據(jù)線供電,電壓范圍為3.05.5v;(5)零待機功耗;(6)溫度以9或12位數(shù)字;(7)用戶可定義報警設置;(8)報警搜索命令識別并標志超過程序限定溫度(溫度報警條件)的器件;(9)負電壓特性,電源極性接反時,溫度
5、計不會因發(fā)熱i佃燒毀,但不能正常工作;ds18b20采用3腳pr-35封裝或8腳soic封裝,其內部結構框圖如圖2所示。圖2 ds18b20內部結構64位rom的結構開始8位是產品類型的編號,接著是每個器件的惟一的序號,共 有48位,最后8位是前面56位的crc檢驗碼,這也是多個ds18b2o可以采用一線進 行通信的原因。溫度報警觸發(fā)器th和tl,可通過軟件寫入戶報警上下限。ds18b20溫度傳感器的內部存儲器還包括一個高速暫存ram和一個非易失 性的可電擦除的eeramo高速暫存ram的結構為8字節(jié)的存儲器,結構如圖3 所示。頭2個字節(jié)包含測得的溫度信息,第3和第4字節(jié)th和tl的拷貝,是易
6、 失的,每次上電復位時被刷新。第5個字節(jié),為配置寄存器,它的內容用于確定溫 度值的數(shù)字轉換分辨率。ds18b20工作時寄存器中的分辨率轉換為相應精度的溫度 數(shù)值。該字節(jié)各位的定義如圖3所示。低5位一直為1, tm是工作模式位,用于 設置ds18b20在工作模式還是在測試模式,ds18b20出廠時該位被設置為0 ,用 戶要去改動,r1和r0決定溫度轉換的精度位數(shù),來設置分辨率。由表1可見,ds18b20溫度轉換的時間比較長,而且分辨率越高,所需要的溫度數(shù) 據(jù)轉換時間越長。因此,在實際應用中要將分辨率和轉換時間權衡考慮。高速暫存ram的第6、7、8字節(jié)保留未用,表現(xiàn)為全邏輯1。第9字節(jié)讀出前 面所
7、有8字節(jié)的crc碼,可用來檢驗數(shù)據(jù),從而保證通信數(shù)據(jù)的正確性。當ds18b20接收到溫度轉換命令后,開始啟動轉換。轉換完成后的溫度值就以16 位帶符號擴展的二進制補碼形式存儲在高速暫存存儲器的第1、2字節(jié)。單片機可以通 過單線接口讀出該數(shù)據(jù),讀數(shù)據(jù)時低位在先,高位在后,數(shù)據(jù)格式以0.0625c/lsb形 式表示。當符號位3 = 0時,表示測得的溫度值為正值,可以直接將二進制位轉換為十進制; 當符號位s=1時,表示測得的溫度值為負值,要先將補碼變成原碼,再計算十進制數(shù) 值。表2是一部分溫度值對應的二進制溫度數(shù)據(jù)。表1 ds18b20溫度轉換時間表r1r0分辨率/位溫度最大轉向時間/ms00993
8、.750110187.510113751112750ds18b20完成溫度轉換后,就把測得的溫度值與ram中的tii、tl字節(jié)內容作比較。 若t>th或t<tl,則將該器件內的報警標志位置位,并對主機發(fā)出的報警搜索命令作 出響應。因此,可用多只ds18b20同吋測量溫度并進行報警搜索。在64位rom的最高有效字節(jié)中存儲有循環(huán)兀余檢驗碼(crc)o主機rom的前56位 來計算crc值,并和存入ds18b20的crc值作比較,以判斷主機收到的rom數(shù)據(jù)是否正 確。ds18b20的測溫原理是這這樣的,器件中低溫度系數(shù)晶振的振蕩頻率受溫度的影響 很小,用于產牛固定頻率的脈沖信號送給減法計數(shù)
9、器1 ;高溫度系數(shù)晶振隨溫度變化其 振蕩頻率明顯改變,所產生的信號作為減法計數(shù)器2的脈沖輸入。器件中還有一個計數(shù) 門,當計數(shù)門打開時,ds18b20就對低溫度系數(shù)振蕩器產生的時鐘脈沖進行計數(shù)進而完 成溫度測量。計數(shù)門的開啟時間由高溫度系數(shù)振蕩器來決定,每次測量前,首先將一55°c 所對應的一個基數(shù)分別置入減法計數(shù)器1、溫度寄存器中,計數(shù)器1和溫度寄存器被預 置在一55°c所對應的一個基數(shù)值。減法計數(shù)器1對低溫度系數(shù)晶振產生的脈沖信號進行減法計數(shù),當減法計數(shù)器1的 預置值減到0時,溫度寄存器的值將加1 ,減法計數(shù)器1的預置將重新被裝入,減法計 數(shù)器1重新開始對低溫度系數(shù)晶振產
10、生的脈沖信號進行計數(shù),如此循環(huán)直到減法計數(shù)器 計數(shù)到0吋,停止溫度寄存器的累加,此時溫度寄存器中的數(shù)值就是所測溫度值。其輸 擊用于修正減法計數(shù)器的預置值,只要計數(shù)器門仍未關閉就重復上述過程,直到溫度寄存器值大致被測溫度值。表2 部分溫度對應值表溫度/°c二進制表示十六進制表示+1250000 0111 1101 000007d0h+850000 0101 0101 00000550h+25. 06250000 0001 1001 00000191h+10. 1250000 0000 1010 000100a2i1+0.50000 0000 0000 00100008h00000 00
11、00 0000 10000000h-0.51111 1111 1111 0000fff8h-10. 1251111 1111 0101 1110ff5eh-25.06251111 1110 0110 1111fe6f11-551111 1100 1001 0000fc90h另外,由fds18b20單線通信功能是分時完成的,它有嚴格的時隙概念,因此讀寫 時序很重要。系統(tǒng)對ds18b20的各種操作按協(xié)議進行。操作協(xié)議為:初使化ds18b20(發(fā) 復位脈沖)一發(fā)rom功能命令一發(fā)存儲器操作命令一處理數(shù)據(jù)。圖4 ds18b20與單片機的接口電路3.3 ds18b20溫度傳感器與單片機的接口電路ds18
12、b20可以采用兩種方式供電,一種是采用電源供電方式,此時ds18b20的1腳 接地,2腳作為信號線,3腳接屯源。另一種是寄生屯源供屯方式,如圖4所示單片機 端口接單線總線,為保證在有效的ds18b20時鐘周期內提供足夠的電流,可用一個 mosfet管來完成對總線的上拉。當ds18b20處于寫存儲器操作和溫度a/d轉換操作時,總線上必須冇強的上拉,上 拉開啟時間最大為louso采用寄生電源供電方式時vdd端接地。3.4系統(tǒng)整體硬件電路3.4. 1主板電路系統(tǒng)整體硬件電路包括,傳感器數(shù)據(jù)采集電路,溫度顯示電路,上下限報警調整電路,單片機主板電路,a/d轉換器等,如圖5所示。03 pin2in1in
13、oabcaled7d6d5n1x)d22=3d5r91113fi- viinjin4in5ln6zstf0(d30eclkvclvre0ndmo 1 o 91 t 3 2 一一一 a尉enleka pv16xix21a一r524 p07 p06 p27 p23 p一325 62 2 p p4 5 o o p p0 12 o o o p p p1 93 10 122 2 2 p p p1234567822222222_rdw圖5數(shù)字溫度計控制電路(1) 單片機80518051單片機有5個存儲器空間,分別用來安排4種不同功用的存儲器: 一內部數(shù)據(jù)存儲器;二特殊功能寄存器;三內部程序存儲器;四外部程
14、序存儲器 五/外部數(shù)據(jù)存儲器。內部數(shù)據(jù)存儲器和特殊功能寄存器以及內部程序存儲器集成于片內,外部程序存 儲器和外部數(shù)據(jù)存儲器則安排在片外,用接口電路與單片機連接。4種存儲器屮, 除內部數(shù)據(jù)存儲器和特殊功能寄存器是統(tǒng)一編址的除外,各存儲器均分開編址,并 用不完全相同的尋址方式來訪問它們。a) ram,共128字節(jié),地址范圍為00h 7fh,見下圖2。前32個單元(地址 00h - 1fh)稱為寄存器區(qū)。其中,每8個寄存器形成個寄存器組。具休說來: 寄存器0組地址00h 一 07h寄存器1組地址08h 0fh寄存器2組地址10h 17h寄存器3組地址18h 1fhb)程序存儲器mcs-51單片機具有
15、64k字節(jié)的程序存儲器空間。其中,8051或8751在片內 各有4k字節(jié)的程序存儲器rom或eprom,并處于這一空間的最低地址區(qū)。8031 片內沒有程序存儲器,必須在外部擴展程序存儲器才能構成單片機應用屯路。擴展 容量可為64k字節(jié)屮的任一容量,并且常用eprom或e2prom的形式,程序存 儲器屮的某些地址被同定地用丁特定程序的入口地址: 地址用途0000h復位操作后的程序入口0003h外部中斷0服務程序入口000bh定時器0中斷服務程序入口0013h外部中斷1服務程序入口 001bh定時器1屮斷服務程序入口0023h串行i/o '|«斷服務程序入口在編程吋,通常在這些入
16、口地址開始的二三個地址單元屮,放入-條轉移類指令, 以使相應的程序在指定的程序存儲器區(qū)域中生成。程序存儲器用來存放固化了的用 戶程序,取指地址由程序計數(shù)器pc給出,pc具有自動加1的功能,從而在無轉移 類指令的條件下,指令被逐一執(zhí)行。轉移類指令可改變pc值,使程序得以轉移。 程序存儲器屮也可固化-片數(shù)據(jù)區(qū),存放被查閱的表格和參數(shù)等。圖5屮有三個獨立式按鍵可以分別調整溫度計的上下限報警設置,圖小蜂鳴器可以 在被測溫度不在上下限范圍內時,發(fā)出報警鳴叫聲音,同時led數(shù)碼管將沒有被測溫度 值顯示,這吋可以調整報警上下限,從而測出被測的溫度值。圖5中的按健復位電路是上電復位加手動復位,使用比較方便,在
17、程序跑飛時,可 以手動復位,這樣就不用在重起單片機電源,就可以實現(xiàn)復位。(2) 直流穩(wěn)壓電源按設計要求需加直流穩(wěn)壓電源用來對溫度控制系統(tǒng)進行供電。如圖:ic27s05圖5. 1肓流穩(wěn)壓電源(3) a/d轉換部分a/d轉換部分采用adc0809, a/d轉換器0809的任務是將模擬量轉換成數(shù)字量,它 是模擬信號和數(shù)字儀器的接口。其內部原理圖如下所示主耍部件的功能:©256r電阻梯形網絡。即r-2r電阻網絡。 比較器。將輸入模擬量與逐次逼近值進行比較。 多路開關。選擇不同通道的模擬量。圖5. 2 a/d轉換器0809內部邏輯圖內部邏輯結構圖引腳意義:ale:地址鎖存信號。選擇8個模擬通道
18、之一。oe:輸岀允許信號,高電平有效。eoc:轉換結束信號。in0-in7: 8路模擬電壓輸入端。d0-d7: 8位數(shù)據(jù)輸岀端。ado、adi、ad2: 3位地址線,選擇8路模擬輸入量之一引腳圖如下:79 to 1t1213"1ztne3dst4tnt.5jjn6in7steocd3oeclk vccvrbf-htn2iniintoabokd vrff- d1d2282726252423222120t918171615圖0809引腳圖3. 4. 2顯示電路顯示電路是使用的串口顯示,這種顯示最大的優(yōu)點就是使用口資源比較少,只用p3 口的rxd,和txd,串口的發(fā)送和接收,四只數(shù)碼管采用
19、74ls164右移寄存器驅動,顯示 比較清晰。3. 5系統(tǒng)軟件算法分析系統(tǒng)程序主要包括主程序,讀出溫度子程序,溫度轉換命令子程序,計算溫度子程 序,顯示數(shù)據(jù)刷新子程序等。3. 5. 1主程序主程序的主要功能是負責溫度的實時顯示、讀出并處理ds18b20的測量的當前溫度 值,溫度測量每is進行一次。這樣可以在一秒z內測量一次被測溫度,其程序流程見 圖7所示。圖7主程序流程圖36讀出溫度子程序讀出溫度子程序的主要功能是讀出ram中的9字節(jié),在讀出時需進行crc校驗,校驗冇錯時不進行溫度數(shù)據(jù)的改寫。英程序流程圖如圖8示結束圖8讀溫度流程圖讀出溫度轉換的子程序:emper:setb p2.0 ;定時入
20、口lcall init.1820jb 20h.l,tss2ret;若ds18b20不存在則返冋tss2:mov a,#0cch ;跳過 rom 匹配lcall write_ 1820mov a,#44h ;發(fā)出溫度轉換命令lcall write_ 1820lcall init_1820mov a,#0cch ;跳過 rom 匹配lcall write_ 1820mov a,#0beh ;發(fā)出讀溫度命令lcall write_ 1820lcall re ad_ 18200mov 37h,a ;將讀出的溫度數(shù)據(jù)保存ret3. 7溫度轉換命令子程序溫度轉換命令子程序主要是發(fā)溫度轉換開始命令,當采用1
21、2位分辨率吋轉換吋間 約為750ms,在本程序設計中采用is顯示程序延時法等待轉換的完成。溫度轉換命令子 程序流程圖如上圖,圖9所示圖9溫度轉換流程圖溫度命令了程序:temper_cov:mov a,#ofohanl a,36h ;舍去溫度低位中小數(shù)點swap amov 3711, amov a,36hjxb acc. 3, temper_cov1 ;四舍五入去溫度值inc 37htemper_cov1:mov a, 3511anl a,#07hswap aadd a, 37hmov 37h,a ;保存變換后的溫度數(shù)據(jù)lcall bin_bcdret3. 8計算溫度子程序英程序流程圖如圖10所
22、示。圖10計算溫度流程圖計算機溫度子程序:bin_bcd:mov3911, 3711mova, 37hmovb,#100divabmov38h, amov3711, bxcha,bmovb,#10divabmov37h, amov3611, bret3. 9顯示數(shù)據(jù)刷新子程序顯示數(shù)據(jù)刷新子程序主要是對顯示緩沖器屮的顯示數(shù)據(jù)進行刷新操作,當最高顯示位為0時將符號顯示位移入下一位。程序流程圖如圖ho圖11顯示數(shù)據(jù)刷新流程圖 顯示數(shù)據(jù)子程序:read_18200:mov r4,#2 ;將溫度高位和低位ds18b20中讀reoo: mov r2,#8reo1:clr csetb p2. 0nopnopclr p2.0nopnopnopsetb p2. 0nopnopmov c, p2. 0mov r3,#35re20:djnz r3,re20rrc adjxz r2, reo1mov r1, adec r1djnz r4,re00ret4. 總結與體會經過將近三周的單片機課程設計,終于完成了我的數(shù)字溫度計的設計,雖然沒冇完 全達到設計要求,但從心底里說,還是高興的,畢竟這次設計把實物都做了出來,高興 之余不得不深思呀!在本次設計的過程屮,我發(fā)現(xiàn)很多的問題,雖然以前述做過這樣的設計但這次設計 真的讓我長進了很多,單片機課程設計重點就在于軟件算法的設計,需要有很巧
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五版股權增資協(xié)議
- 建筑架子工勞務分包合同二零二五年
- 餐廳店面租賃協(xié)議書二零二五年
- 二零二五版學校勞動合同書
- 二零二五委托前期物業(yè)管理合同
- 二零二五商品混凝土買賣合同范例
- 二零二五版離婚協(xié)議書探望權的約定
- 二零二五版在廠員工免責協(xié)議書
- 公司重大資產股份轉讓框架協(xié)議
- 二零二五師范類實習協(xié)議書
- DB37T 1389-2024鋼箱梁頂推施工技術規(guī)范
- 捷信達酒店前臺管理系統(tǒng)V8
- 構造地質學期末復習
- AQ 1020-2006 煤礦井下粉塵綜合防治技術規(guī)范(正式版)
- 《創(chuàng)傷失血性休克中國急診專家共識(2023)》解讀
- 第十四課 中望3D-工程圖系列1講解
- 新教材同步備課2024春高中數(shù)學課時分層作業(yè)28空間點直線平面之間的位置關系新人教A版必修第二冊
- 2024年(高級)政工師理論考試題庫及答案(含各題型)
- 心電監(jiān)護儀的使用幻燈片
- 軟件功能需求說明書
- 數(shù)字普惠金融發(fā)展對企業(yè)績效影響的實證研究
評論
0/150
提交評論