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

正文內(nèi)容

ds18b20溫度計(jì)課程設(shè)計(jì)完整版(編輯修改稿)

2025-02-14 12:22 本頁面
 

【文章內(nèi)容簡介】 碼管“同時(shí)”顯示的效果。下圖為溫度顯示流程框圖。溫度為正符號(hào)位顯示“0”符號(hào)位顯示“—”整數(shù)部分顯示小數(shù)部分顯示溫度數(shù)據(jù)移入寄存器結(jié)束 溫度顯示流程圖 溫度設(shè)定模塊溫度設(shè)定模塊主要由按鍵程序和顯示程序構(gòu)成。按鍵掃描電路掃描調(diào)整鍵S18是否按下,檢測到按鍵按下時(shí),延時(shí)1ms,再次檢測按鍵是否按下,若檢測到按下,才確定此按鍵,本設(shè)計(jì)中每個(gè)按鍵設(shè)計(jì)都運(yùn)用了防抖動(dòng)功能,避免抖動(dòng)產(chǎn)生的誤差。當(dāng)檢測到按鍵S18按下一次時(shí),顯示為設(shè)定的上限值,此時(shí)S19和S20分別遞增鍵和遞減鍵,在上限或下限沒超過125℃時(shí),每次檢測到按下時(shí)則上限值增加或減少1,并將bb標(biāo)志位置1。當(dāng)S18被按下兩次時(shí),顯示為設(shè)定的下限值,此時(shí)S19和S20分別遞增鍵和遞減鍵,每次檢測到按下時(shí)則下限值增加或減少1,并將bb標(biāo)志位置2。當(dāng)S18被第三次按下時(shí),bb標(biāo)志位置3,此時(shí)恢復(fù)到正常的測溫模式,并將設(shè)定的上限值和下限值寫入到傳感器中。顯示程序顯示設(shè)定值的變化,當(dāng)bb為0時(shí),顯示測量到的溫度的值,當(dāng)bb為1時(shí),顯示上限值,并隨S19,S20按鍵按下的時(shí)上限值的變化而變化,當(dāng)bb為2是,顯示下限值,并隨S19,S20按鍵按下時(shí)下限值的變化而變化。 報(bào)警模塊報(bào)警模塊主要由由單片機(jī)輸出電平來驅(qū)動(dòng)蜂鳴器構(gòu)成。當(dāng)所測溫度超過設(shè)定的上限(TH值)或下限溫度(TL值)時(shí)置beepflag=1,表示溫度值越界。在調(diào)用報(bào)警子程序時(shí)先判斷beepflag的值,若為1則在蜂鳴器端口輸出低電平信號(hào)beep=0,蜂鳴器報(bào)警,延時(shí)1000us,蜂鳴器報(bào)警持續(xù),再產(chǎn)生一個(gè)高電平信號(hào)beep=1,蜂鳴器停止報(bào)警,循環(huán)此過程,則蜂鳴器間隙性報(bào)警。在蜂鳴器報(bào)警的同時(shí),DS18B20處于正常測溫狀態(tài),并用數(shù)碼管顯示出來,并不斷閃爍。5 系統(tǒng)整合調(diào)試調(diào)試方法:寫好一段程序后不能急于上機(jī)調(diào)試,而是先進(jìn)行邏輯分析、可行性分析。用KeilμVision 2軟件進(jìn)行調(diào)試,不能出現(xiàn)錯(cuò)誤,警告可以有,只要不影響生成HEX文件即可。理解其實(shí)現(xiàn)的功能,預(yù)想程序應(yīng)該出現(xiàn)的結(jié)果。先進(jìn)行軟件仿真,出現(xiàn)錯(cuò)誤馬上修改,不斷進(jìn)行。先一個(gè)模塊一個(gè)模塊的仿真,準(zhǔn)確后再連線總體仿真。仿真完后出現(xiàn)預(yù)期的效果后再下載程序到硬件進(jìn)行驗(yàn)證,往往還有問題,還得反復(fù)修改,編譯,調(diào)試,下載,驗(yàn)證。可以一個(gè)模塊一個(gè)模塊的下載調(diào)試這樣就可以知道問題的所在。采用Proteus和Keil結(jié)合仿真的可以大大簡化軟、硬件電路的設(shè)計(jì)過程。 硬件調(diào)試Proteus是英國Labeenter electronics公司研發(fā)的EDA工具軟件。Proteus不僅是模擬電路、數(shù)字電路、模/數(shù)混合電路的設(shè)計(jì)與仿真平臺(tái),更是目前世界最先進(jìn)、最完整的多種型號(hào)微控制器系統(tǒng)的設(shè)計(jì)與仿真平臺(tái)。它真正實(shí)現(xiàn)了在計(jì)算機(jī)上完成從原理圖設(shè)計(jì)、電路分析與仿真、單片機(jī)代碼級(jí)調(diào)試與仿真、系統(tǒng)測試與功能驗(yàn)證到形成PCB的完整電子設(shè)計(jì)與研發(fā)過程。Proteus產(chǎn)品系列也包含了革命性的VSM技術(shù),可以對(duì)基于微控制器的設(shè)計(jì)連同所有的外圍電子器件一起仿真。由于我們的設(shè)計(jì)外圍電路比較簡單實(shí)現(xiàn)的功能葉不是很復(fù)雜,所以在Proteus仿真時(shí)我們是將主程序直接下載到芯片中仿真,主要是驗(yàn)證是否采集到溫度還有溫度是否顯示正確。仿真可以在實(shí)物沒有出來前進(jìn)行先期的驗(yàn)證。最后加上我們的擴(kuò)展功能一起仿真調(diào)試。需要說明的是仿真正確不代表最后的下載程序不會(huì)出錯(cuò)。我們?cè)谙螺d程序的時(shí)候也遇到一點(diǎn)小問題。比如在仿真的時(shí)候,三極管始終處于導(dǎo)通狀態(tài),后來通過努力解決了這個(gè)問題。在實(shí)物做出來之前,我們采用Proteus仿真調(diào)試,通過將軟件編譯通過的程序下載到畫好的仿真圖中,這樣便于檢查軟、硬件設(shè)計(jì)的不足。但是Proteus仿真也存在不足的情況,仿真模擬的是理想的環(huán)境,不會(huì)差生誤差但是實(shí)際的測試會(huì)出現(xiàn)一定的誤差。通過硬件仿真可以查找出硬件設(shè)計(jì)的不足。 軟件調(diào)試 KeilμVision 2是Keil公司關(guān)于8051系列MCU的開發(fā)工具,可以用來編譯C源碼、匯編源程序、連接和重定位目標(biāo)文件和庫文件、創(chuàng)建HEX文件、調(diào)試目標(biāo)程序等,是一種集成化的文件管理編譯環(huán)境。它集成了文件編輯處理、編譯連接、項(xiàng)目管理、窗口、工具引用和軟件仿真調(diào)試等多種功能,是相當(dāng)強(qiáng)大的開發(fā)工具。實(shí)驗(yàn)中我們采用KeilμVision 2來對(duì)我們編寫的程序進(jìn)行編譯、鏈接和生成HEX文件。在下載程序出錯(cuò)時(shí)進(jìn)行必要的調(diào)試,再下載驗(yàn)證。同時(shí)采用Proteus和Keil結(jié)合仿真的方法對(duì)設(shè)計(jì)的單片機(jī)測溫系統(tǒng)進(jìn)行了虛擬仿真和性能檢測,得到了比較好的仿真結(jié)果和分析結(jié)果。結(jié)果證明采用Proteus和Keil結(jié)合仿真的可以大大簡化硬件電路的設(shè)計(jì)過程,可以降低單片機(jī)系統(tǒng)的開發(fā)成本、提高效率和開發(fā)速度,具有很好的實(shí)際應(yīng)用和指導(dǎo)意義。軟件仿真的優(yōu)勢在于,可以設(shè)置斷點(diǎn)、單步運(yùn)行等,這在用實(shí)物調(diào)試是不能實(shí)現(xiàn)的,通過軟件仿真,可以知道程序哪兒出錯(cuò)了,便于及時(shí)改正。若直接下載在芯片中用實(shí)物調(diào)試,只能知道程序錯(cuò)了,只能去盲目查找程序的錯(cuò)誤之處。在程序的編寫之中難免會(huì)出現(xiàn)一些無法錯(cuò)誤,用KeilμVision 2編譯會(huì)得到及時(shí)的提示,方便立即修改,大大縮短了設(shè)計(jì)的時(shí)間,提高設(shè)計(jì)效率。在設(shè)計(jì)初期,我們通過軟件仿真發(fā)現(xiàn)了很多錯(cuò)誤,比如語法錯(cuò)誤,亂碼,字符閃爍問題,后來這些問題都一一克服,語法錯(cuò)誤一樣是缺少括號(hào),亂碼是由于共陰、共陽譯碼的錯(cuò)誤,還有就是由于人眼的“滯留”問題,必須要位選,在進(jìn)行譯碼。字符閃爍一般是由于延時(shí)過短等問題。這些問題都是通過軟件調(diào)試找出來的,從而說明軟件調(diào)試的必要性。6 系統(tǒng)功能、指標(biāo)參數(shù) 系統(tǒng)功能本設(shè)計(jì)實(shí)現(xiàn)的主要功能是通過DS18B20溫度傳感器采集溫度并通過8位七段數(shù)碼管顯示所測溫度,可顯示零度以下溫度,溫度測量范圍為55℃128℃,后四位顯示小數(shù)位。可以精確到小數(shù)點(diǎn)后4位,℃, 并可以產(chǎn)生報(bào)警。通過三個(gè)按鍵的配合使用可以設(shè)定溫度報(bào)警的上限值和下限值,當(dāng)所測的溫度超過所設(shè)定的上限或下限溫度時(shí)產(chǎn)生報(bào)警信號(hào),在報(bào)警的同時(shí),系統(tǒng)處于正常的測溫模式,當(dāng)溫度回到所設(shè)定的范圍時(shí),報(bào)警停止。 系統(tǒng)指標(biāo)參數(shù)測試 下圖是采用Proteus軟件對(duì)本系統(tǒng)溫度測量范圍的仿真,仿真模擬溫度輸入為55℃,系統(tǒng)8位七段顯示數(shù)碼管顯示的也為55℃,由于仿真軟件不考慮測量誤差,所以測量的溫度沒有誤差,做出的實(shí)物出現(xiàn)了一點(diǎn)誤差,但誤差在允許的范圍內(nèi)。 圖6. 1 對(duì)系統(tǒng)測量最低溫度仿真 下圖是采用Proteus軟件對(duì)本系統(tǒng)溫度測量范圍的仿真,仿真模擬溫度輸入為127℃,系統(tǒng)8位七段顯示數(shù)碼管顯示的為127℃,本系統(tǒng)的測量溫度上限為128℃,若測量的溫度等于128℃,系統(tǒng)則輸出一個(gè)負(fù)數(shù),這是由于DS18B20傳感器的對(duì)數(shù)據(jù)的處理所引起的,當(dāng)所測的溫度剛好為128時(shí),128用二進(jìn)制表示為11111111,本傳感器處理數(shù)據(jù)的高五位為符號(hào)位,當(dāng)出現(xiàn)11111111時(shí),系統(tǒng)默認(rèn)所測溫度為負(fù)數(shù)。 對(duì)系統(tǒng)測量最高溫度仿真通過以上兩個(gè)仿真驗(yàn)證了本系統(tǒng)的溫度測量范圍,由于軟件仿真對(duì)報(bào)警的仿真不容易觀察,也不太容易記錄,所以我們對(duì)報(bào)警沒有通過軟件仿真,而是通過對(duì)事物的調(diào)試來實(shí)現(xiàn)。由于對(duì)溫度上下限的設(shè)定是一個(gè)動(dòng)態(tài)的實(shí)現(xiàn),所以我們也是通過實(shí)物演示來實(shí)現(xiàn)。 系統(tǒng)功能及指標(biāo)參數(shù)分析本設(shè)計(jì)滿足實(shí)驗(yàn)要求,可以測量的溫度范圍是55℃128℃,并通過8位七段數(shù)碼管顯示,顯示的第一位為符號(hào)位,后四位為小數(shù)位,由于DS18B20的分辨率很高,℃,℃,℃。在本設(shè)計(jì)中,我們充分利用了DS18B20的具有TH、TL寄存器的優(yōu)勢,通過對(duì)TH,TL寄存器進(jìn)行賦值,可以實(shí)現(xiàn)設(shè)定溫度范圍,這樣可以使本系統(tǒng)不僅具有測溫的功能,還具備超過溫度范圍報(bào)警的功能,這樣的設(shè)計(jì)在實(shí)際工程中運(yùn)用更加廣泛。在設(shè)計(jì)中,我們通過鍵盤可以設(shè)定溫度的上下限報(bào)警范圍,并將設(shè)定的上下限的的值寫入到寄存器中,刷新上次寫入的值,便于隨時(shí)調(diào)節(jié)的報(bào)警上限范圍。 7 結(jié)論經(jīng)過將近四周的智能化課程設(shè)計(jì),終于完成了我們的數(shù)字溫度計(jì)的設(shè)計(jì)。不僅完全達(dá)到設(shè)計(jì)要求溫度的采集和顯示,還在此基礎(chǔ)上增加了擴(kuò)展功能超溫報(bào)警,就是采集的溫度不在我們自己設(shè)定的范圍內(nèi)時(shí)驅(qū)動(dòng)蜂鳴器輸出報(bào)警信號(hào)。不僅利用Proteus完成了硬件仿真,還把實(shí)物都做了出來,并下載程序驗(yàn)證成功,高興之余不得不深思呀!在本次設(shè)計(jì)的過程中,我們發(fā)現(xiàn)很多的問題。比如在硬件仿真時(shí)往往出現(xiàn)亂碼的情況,原因在于共陽數(shù)碼管和共陰數(shù)碼管顯示時(shí)所送的段碼是不一樣的,所以我們將段碼取反,但仍然沒有成功,網(wǎng)上查閱資料找到問題的關(guān)鍵在于如果采用動(dòng)態(tài)掃描的方法,控制程序先送段碼再送位碼,由于人眼的“滯留”效應(yīng),將會(huì)產(chǎn)生亂碼現(xiàn)象。為了讓顯示器不顯示亂碼,其控制程序要么在每次顯示更新前先關(guān)閉顯示器再送段位及位碼,要么先送位碼再送段碼,都可解決這一問題。所以我們采用先送位碼再送段碼的方法解決了此問題。智能化課程設(shè)計(jì)重點(diǎn)就在于軟件算法的設(shè)計(jì),雖然以前還做過這樣的設(shè)計(jì)但這次設(shè)計(jì),但都比較簡單程序也不是很長也不需要有很巧妙的程序算法。這次軟件設(shè)計(jì)中讓我充分理解到了利用子程序的好處。在設(shè)計(jì)中也遇到很多問題比如溫度轉(zhuǎn)化的時(shí)候我們的程序看起來是合乎邏輯的但始終沒有小數(shù)部分的值,經(jīng)過多次調(diào)試修改終于顯示成功。還有很多下問題則不必累述。下載程序驗(yàn)證的時(shí)候也出現(xiàn)問題,并沒有顯示實(shí)際的溫度,全是“0”,究其原因在于參數(shù)傳遞并沒有傳遞到顯示程序中。在這次的智能化課程設(shè)計(jì)中,雖然我們已經(jīng)做出結(jié)果,但仍然有很多問題未得到解決。一是Proteus仿真正確但下載到實(shí)際的電路板中卻存在問題。二是當(dāng)我們?cè)黾恿藬U(kuò)展功能溫度報(bào)警后,溫度的分辨率卻減小了由原來的12位減小到9位,通過修改仍沒有解決。三是小組聯(lián)合調(diào)試沒有完成。我們可以將采集的溫度放到24C02存儲(chǔ),在輸出在液晶屏上顯示,還可以利用采集的溫度大小來控制電機(jī)的轉(zhuǎn)速等等。希望以后有機(jī)會(huì)再次深入學(xué)習(xí)。這次設(shè)計(jì)讓我真真正正的意識(shí)到,在以后的學(xué)習(xí)中,要理論聯(lián)系實(shí)際,把我們所學(xué)的理論知識(shí)用到實(shí)際當(dāng)中,學(xué)習(xí)單機(jī)片機(jī)更是如此,程序只有在經(jīng)常的寫與讀的過程中才能提高,這就是我在這次課程設(shè)計(jì)中的最大收獲。8 總結(jié)與體會(huì)就此次設(shè)計(jì)來看,我們所設(shè)計(jì)的電子體溫計(jì)原理電路較為簡單,此電路設(shè)計(jì)用到了一個(gè)單片機(jī)STC89C5DS18B電阻、電源和簡單的外圍電路,因此設(shè)計(jì)的核心就是芯片DS18B20。由于此前對(duì)此芯片缺乏了解,所以此次設(shè)計(jì)的難點(diǎn)在編程,通過搜集和閱讀DS18B20的資料,以及本組成員的編譯和數(shù)天調(diào)試,攻克了程序設(shè)計(jì)的難題,使此次的課程設(shè)計(jì)取得突破性的成功。DS18B20 是一種傳感器精度高、互換性好。它直接將溫度數(shù)據(jù)進(jìn)行編碼,可以只使用一根電纜傳輸溫度數(shù)據(jù),通信方便,傳輸距離遠(yuǎn)且抗干擾性好的數(shù)
點(diǎn)擊復(fù)制文檔內(nèi)容
電大資料相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1