freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

數(shù)字體溫計的設計畢業(yè)設計(論文)(參考版)

2024-09-01 13:28本頁面
  

【正文】 電路板的調(diào)試 數(shù)字體溫計的設計 41 通過查閱資料和請教老師,運用仿真軟件設計電路原理圖以后,生成 PCB 板。 既然提到了 PCB 版圖設計就需要明白版圖設計的方案的流程: 由于 Protel 軟件有一個功能是能把電路圖通過設置自動生成 PCB版圖,但是還有很多問題需要 解決: ( 1) 布局的問題:在 PCB 的設計中會有很多器件,這個時候要進行整體考慮和分析,比如考慮原件的位置擺放,走線的安排,特殊元件(高頻器件)等這些問題都需要考慮,以免產(chǎn)生電路信號完整性和干擾等問題,盡量減少 PCB 的設計失?。? ( 2) 尺寸的選擇:尺寸的選擇包括兩部分,一個是電子元器件的大小的選擇,一個是 PCB 版圖的大小。 下圖就是溫度超出范圍的仿真圖,如圖 55 所示 圖 55 溫度超出設定范圍 數(shù)字體溫計的設計 40 印刷電路板 PCB 的設計 PCB 設計的方案 通過上面的軟件仿真后發(fā)現(xiàn)能實現(xiàn)數(shù)字體溫計的設計功能,準確測出體溫,方便快捷讀出示數(shù),但是仿真是基于 理論和理想情況下進行的,在現(xiàn)實生活中肯定會有多多少少的誤差的,所以需要在實物中慢慢進行修改和改進,需要設計出實物的電路板,同樣在 Protel 軟件中,設計出的電路圖,在電路圖監(jiān)測沒有問題以后,可以依據(jù)電路原理圖繪制印刷電路板的電路,也就是我們做實物的電路板的設計 [12]。 數(shù)字體溫計的設計 38 圖 53 數(shù)字體溫計工作時仿真圖 ( 3)通過按鍵修改體溫上下限,設計一共設計了三個按鍵,一個是溫度上調(diào),一個是溫度下調(diào),還有一個是選擇復 位按鍵,通過按鍵設置體溫區(qū)間,從圖中可以看出,當按下選擇復位按鍵時, LCD1602 顯示屏上光標閃爍,提示修改,如下圖可以看出,在 TH 處出現(xiàn)一個光標移動的標志,這個時候按下溫度上調(diào)按鍵,就會看到溫度上調(diào),按鍵按一次溫度就會上調(diào),如果按溫度下調(diào)按鍵,就會發(fā)現(xiàn)溫度減小,顯示在 LCD1602上,可以清晰的看出,同樣的再按一次選擇復位按鍵,進行第二次選擇,可以看到光標閃爍移動,提示是修改上限還是下限。仿真如下圖所示,從圖中可以看出 LCD1602 成功驅(qū)動了,通過軟件編程設置的開機畫面:在理想狀況下仿真圖如下所示: 數(shù)字體溫計的設計 37 圖 52 數(shù)字體溫計開機仿真界面 通電后, DS18B20 傳感器工作,傳感器采集到的溫度信號傳送給單片機進行處理,單片機將接收到信號進行處理,將物理量轉(zhuǎn)換為電信號,溫度信號進行采集以后,進行 轉(zhuǎn)換成電平,電壓信號,通過 DS18B20采集,不需要 A/D 轉(zhuǎn)換,直接實現(xiàn)物理信號轉(zhuǎn)換為電信號,方便快捷實現(xiàn),在電路上實現(xiàn)了設計簡約的風格。下面是在 Proteus 軟件仿真狀態(tài)下的電路圖,在 Proteus 軟件開發(fā)環(huán)境中按照 Protel 軟件設計出的電路圖進行搭建連接,將使用軟件 Keil 編程出的程序代碼生成 Hex文件下載到單片機中,通過對仿真軟件的靈活使用,將程序下載以后進行仿真,開始時候出現(xiàn)一些問題,進行軟件程序的修改, 修改程序中和硬件不兼容的代碼,查看技術手冊進行參數(shù)修改,然后重新生成 Hex 文件下載到單片機中,在這期間需要對電子器件有很多的了解認識。 在 protues 軟件中,連接電路圖,進行調(diào)試和仿真,把軟件程序通過生成 hex 文件下載到 89C51 芯片中進行仿真,出現(xiàn)問題進行調(diào)試,在軟件下載過程中會遇到很多問題,比如程序的問題, LCD1602 液晶屏的數(shù)字體溫計的設計 36 驅(qū)動程序,在理想情況下進行仿真,出現(xiàn)的問題和現(xiàn)實生活中的問題還有差距,需要進行反復的調(diào)試,才能在實踐中得到結果。 電路圖設計如下圖 51 所示如下: 圖 51 整體硬件電路圖的設計 電路的仿真調(diào)試 硬件電路圖搭建如上,需要對以上電路圖進行軟件上的仿真,通過軟件模擬出電路的實時情況。這些測試信號包括模擬信號和數(shù)字信號。這些虛擬儀器儀表具有理想的參數(shù)指標,盡可能減少了儀器對測量結果的影響。使用 Proteus 軟件進行單片機系統(tǒng)仿真設計,是虛擬仿真技術和計算機多媒體技術相結合的綜合運用,使用 Proteus 進行系統(tǒng)仿真開發(fā)成功之后再進行實際制作,能極大提高單片機系統(tǒng)設計效率 , 使用Proteus 仿真環(huán)境下可以實現(xiàn)以下功能: 1. Proteus 軟件可提供的仿真資源有很多,有 30 多個元件庫,可以輕松實現(xiàn)基本電路的仿真,如仿真數(shù)字和模擬、交流和直流等,還能提供仿真儀表,我們常用的如示波器、 I2C 調(diào)試器、信號發(fā)生 器、交直流電壓表、交直流電流表等,在仿真環(huán)境中上同一種儀器可以在一個電路中隨意的調(diào)用。它具有更好靈活性的設計,可以大大縮短設計時間,減少開銷,而且還可以減少項目生產(chǎn)的風險。還可以從原理圖設計一鍵切換到 PCB 設計,真正實現(xiàn)了完整的設計從概念到仿真再到產(chǎn)品的三合一。 Proteus 軟件是英國實驗室中心電子公司公布的 EDA 工具。 仿真軟件 Protel 是澳大利亞的 Altium 公司在推出的 EDA 軟件,在電子設計行軟件中,它排在眾多 EDA 軟件的前面,是電子設計者的首選軟件,特別是設計硬件電路圖,它具有布線功能,并且能檢測電路圖設計是否符合電子設計要求,并且可以進行 PCB 版圖設計,還能分析信號完整性,能進行自動布線提高了工作效率,減輕了工作量。//延時 } else { SPEAKER=1。 void baojing() { if((test=th)||(test=tl))//如果測得的溫度值 =上限溫度值( TH)或 =下限溫度 值( TL) { SPEAKER=~SPEAKER。 } 報警器程序設計 當體溫超出設定限度,報警器發(fā)出報警信號。 write_data(Tl/10+0x30)。+39。 write_(0x80+0x00+12)。 write_data(Th/10+0x30)。+39。 } //以下是溫度的上限和下限初始化顯示部分 write_(0x80+0x00+4)。i2。 } write_(0x80+0X40+10)。i5。 } write_(0x80+0X40+0x00)。i3。 } write_(0x80+9)。i3。 //LCD 清屏 write_(0x80+0x01)。//設置為顯示開,關光標,不閃爍 write_(0x06)。 } init_lcd()//LCD 初始化函數(shù) { write_(0x38)。 delay(5)。 E=1。 } write_data(uchar dat)//LCD 寫數(shù)據(jù)函數(shù) { rs=1。 delay(50)。 E=1。 write_(uchar )//LCD 寫地址函數(shù) { rs=0。 uchar code tab1[]=TH:。 uchar tmp6[]=^。 sbit E=P3^2。流程圖如下圖 45 所示, 圖 45 溫度顯示子程序 數(shù)字體溫計的設計 30 首先是初始化 sbit rs=P3^0。//溫度小數(shù)部分的十分位 write_data(a3)。)。//顯示溫度整數(shù)部分的個位 write_data(39。 write_data(a1)。//溫度整數(shù)部分的十位 a2=(test%10)|0x30。)。//如果測得的溫度為負值,顯示負號 else write_data(39。39。//啟動下次溫度測量 //以下是溫度值處理部分 write_(0x80+0X40+0x05)。//復位 DS18B20 Write cmd(0xcc)。//取出整數(shù)部分溫度值 test0=(test0|0x0f)/16。//低 8 位值賦予 test0 test1=read date[1]。//將取補的高溫度值,送回數(shù)組 if(result255)//如果低 8 位有進位 ,則高 8 位加 1 {read date[1]++。//低位取反碼 result=read date[0]+1。 Read date[1]=~ readdate[1]。//置負號標志為 0 if(( read date[1]amp。//讀溫度的低 8 位 Read date[1]=readdat()。//向 DS18B20 發(fā)送跳過 ROM 搜索命令 數(shù)字體溫計的設計 28 Write cmd(0xbe)。//啟動一次溫度轉(zhuǎn)換 reset()。//復位 DS18B20 Write cmd(0xcc)。//每中斷一次, time count 加 1 if(time count==20)//中斷定時達到 1S, 50ms*20=1s {time count=0。 TL0=0XB0。//開中斷 } } } 計算溫度子程序 計算溫度子程序?qū)?RAM 中讀取值進行 BCD 碼的轉(zhuǎn)換運算,并進行溫度值正負的判定,其程序流程圖如圖 44 所示 數(shù)字體溫計的設計 27 圖 44 計算溫度子程序 程序如下: void timer0() interrupt 1//定時器 0 中斷,中斷標號為 1 { uint result。//次數(shù)清零 write_(0x0c)。//設置為顯示開,開光標,閃爍 } if(num==2)//如果按下選擇鍵的次數(shù)為 2 { write_(0x80+0x00+13)。//關閉中斷 write_(0x80+0x00+5)。//設置為顯示開,關光標,不閃爍 TR0=1。//光標移到第一行第十五個位置 } if(num==3)//如果按下選擇鍵的次數(shù)為 3 { num=0。//光標移到第一行第七個位置 write_(0x0f)。//等待按鍵抬起 ; if(num==1)//如果按下選擇鍵的次數(shù)為 1 { TR0=0。//延時消抖 if(XuanZe==0)//如果按鍵還處于按下狀態(tài) { num++。所以在程序編寫上也是體現(xiàn)了按鍵的功能,在軟件設計中,按鍵按一次,進行延時, LCD 光標閃爍進行選擇,再按一次按鍵, 因為 溫度轉(zhuǎn)換命令子程序主要是 指 溫度轉(zhuǎn)換開始命令, 所以 當采用12 位分辨率時轉(zhuǎn)換時間約為 750ms,在本程序設計中采用 1s 顯示程序延時法等待轉(zhuǎn)換的完成。//延時一段時間 } return temp。//總線拉高,執(zhí)行如下的讀操作 if(DQ)//如果 DS18B20 輸出高電平 temp|=0x80。//總線為低電平 temp=1。i0。//定義位循環(huán)變量 uchar temp=0。//延時( 30us),等待 DS18B20 取走總線數(shù)據(jù) DQ=1; //總線拉高 cmd=1。0x01。i) //循環(huán) 8 次 { DQ=0。 //定義位循環(huán)變量 for(i=8。 //將 DS18B20 的回應讀到變量 x,用于判斷復位 delay1(20)。 //使總線為高電平 delay1(14)。 //使總線為低電平 delay1(80)。 //使總線為高電平 delay1(8)。其程序流程圖如圖 42 所 示 42 讀溫度子程序 圖 void reset() //DS18B20 的復位函數(shù) { uchar x=0。 讀溫度子程序 數(shù)字體溫計的設計 22 當 DS18B20 采集到溫度信號以后,傳送給單片機進行處理,單片機處理以后進行溫度信號的轉(zhuǎn)換。 //調(diào)用報警函數(shù) } } 測溫模塊程序 DS18B20 是在一根線上實現(xiàn)數(shù)據(jù)的雙向傳輸,并且需要嚴格的通信協(xié)議來保證每位數(shù)據(jù)傳輸?shù)臏蚀_性和完整性,首先將 DS18B20 進行初始化,復位 DS18B20,然后單片機進行等待 DS18B20 的應答脈沖信號,單片機檢測到應答脈沖,便發(fā)起跳過 ROM匹配操作命令,成功執(zhí)行 ROM操作命令后,就可以使用內(nèi)存操作命令啟動溫度轉(zhuǎn)換,延時一段時間后等待溫度轉(zhuǎn)換。 //開總中斷 while(1) { key()。 //啟動定時器 0 ET0=1。 //50ms 溢出一次 TL0=0XB0。 //初始化 LCD TMOD=0X01。這樣可以在一秒之內(nèi) 迅速 測量一次被測溫度, 通過把采集到的信號傳輸給單片機進行分析和處理,單片機進行處理進行溫度轉(zhuǎn)換,進行溫度處理后然后在 LCD1602 上顯示,讀有出實時溫度,通過按鍵可以設置溫度區(qū)間,溫度超過設置的區(qū)間,啟動蜂鳴器報警,便于及時監(jiān)測病人體溫變化。使用 Keil C51生成的目標代碼效率和質(zhì)量非常高,數(shù)字體溫計的設計 20 語句生成的匯編代碼結構很緊湊,容易理解。即使不使用 C 語言而僅用匯編語言編程,它具有的集成環(huán)境、強大的軟件仿真調(diào)試工具也會讓你在設計中得心應手,在開發(fā)大型軟
點擊復制文檔內(nèi)容
黨政相關相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1