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

正文內(nèi)容

數(shù)字溫度計(jì)設(shè)計(jì)報(bào)告(編輯修改稿)

2025-02-17 17:21 本頁面
 

【文章內(nèi)容簡介】 數(shù)字溫度計(jì)的測量溫度程序主要包括5個(gè)方面的內(nèi)容:一是單片機(jī)從DS1302中讀取數(shù)據(jù)進(jìn)行計(jì)數(shù),二是利用按鍵進(jìn)行時(shí)間溫度上下限的調(diào)整,三是單片機(jī)中讀取DS1302,EEPROM中的和DS18B20采集的數(shù)據(jù)在數(shù)碼管上顯示時(shí)間溫度。主程序流程圖主程序的主要功能是負(fù)責(zé)溫度,時(shí)間的實(shí)時(shí)顯示、讀出并處理DS18B20的測量的當(dāng)前溫度值,DS1302的時(shí)間。 初始化 讀取溫度,時(shí)間 讀出溫度值溫度,時(shí)鐘時(shí)間,計(jì)算處理顯示數(shù) 據(jù)刷新 發(fā)溫度,時(shí)間轉(zhuǎn)換開始 命令 調(diào)試顯示子程序 結(jié)束 主程序流程圖 讀出溫度子程序的主要功能是讀出RAM中的9字節(jié),在讀出時(shí)需進(jìn)行CRC校驗(yàn),校驗(yàn)有錯(cuò)時(shí)不進(jìn)行溫度數(shù)據(jù)的改寫。其流程圖如圖所示 發(fā)DS18B20的復(fù)位命令 發(fā)跳過ROM命令 發(fā)讀取溫度命令 讀取操作,CRC校驗(yàn) Y 9字節(jié)完 N Y CRC N 校驗(yàn)正 移入溫度暫存器 結(jié)束 讀溫度流程圖溫度超出報(bào)警讀出溫度超過上限值時(shí),發(fā)出警報(bào),讀出溫度低于下限值時(shí),發(fā)出警報(bào),通過按鍵更改溫度上下限。開始控制鍵有效,進(jìn)入溫度上下限設(shè)置報(bào)警溫度上限設(shè)置溫度超出溫度正常溫度下限設(shè)置溫度正常溫度超出報(bào)警讀出DS1302時(shí)鐘芯片的時(shí)間,在數(shù)碼管上顯示出來 測試儀器 數(shù)字萬用表、秒表、電吹風(fēng)。 數(shù)字萬用表主要用來測試分立元件的電阻、壓降、漏電流、截止、導(dǎo)通狀態(tài)等參數(shù)。 秒表用來測試時(shí)間的準(zhǔn)確度。 電吹風(fēng)用來測試溫度的變化。 測試方法: 先是硬件調(diào)試,溫度傳感器DS18B20能否正常工作,讀出溫度;時(shí)鐘芯片能否正常計(jì)時(shí),接著軟件調(diào)試,最后是軟硬件調(diào)試。調(diào)試時(shí)可以采用逐個(gè)調(diào)試,先調(diào)試溫度傳感器,接著是時(shí)鐘芯片,最后在整體調(diào)試。 測試數(shù)據(jù)及結(jié)果分析測試溫度(186。C)實(shí)際溫度(186。C)25304060測試時(shí)間(t)實(shí)際時(shí)間(t)6060120120180180240240結(jié)果分析:測試溫度與實(shí)際溫度存在著一定誤差,誤差不是很大。猜測是周圍環(huán)境對測得溫度產(chǎn)生了影響,但是影響不是很大,可以忽略不計(jì)。測試時(shí)間與實(shí)際時(shí)間之間不存在誤差,達(dá)到了我們的要求。5問題分析與解決方法1 問題: 進(jìn)行硬件調(diào)試時(shí),數(shù)碼管顯示的數(shù)字基本錯(cuò)誤。 解決方法: 用萬用表檢查接線,發(fā)現(xiàn)數(shù)碼管的8個(gè)段選,接錯(cuò)4位,重新焊接后顯示無誤。2 問題: 測溫度時(shí),數(shù)碼管上顯示亂碼。 解決方法: 先用萬用表檢查接線,檢查無誤;接著檢查程序,發(fā)現(xiàn)DS18B20管腳定義錯(cuò)誤,經(jīng)過改正后,能夠正常顯示溫度。 3 問題: 整體調(diào)試時(shí),兩個(gè)數(shù)碼管雖能準(zhǔn)確顯示溫度和時(shí)間,但是數(shù)碼管不停的閃爍,在逐個(gè)調(diào)試時(shí)沒有這個(gè)問題。解決方法: 先是檢查軟件有沒有弄錯(cuò),檢查無誤,查閱資料才弄清原因。因?yàn)閿?shù)碼管顯示是通過人眼視覺暫留效果,得不停的刷新人眼才無法辨別出來,閃爍是因?yàn)樗⑿碌乃俣缺容^慢,說明程序在一個(gè)周期里面執(zhí)行的代碼時(shí)間過長。經(jīng)過一些調(diào)整,只能進(jìn)行優(yōu)化,而不能徹底解決這個(gè)問題。5心得體會通過本次設(shè)計(jì),使我們對單片機(jī)的了解有了更加深一步,我發(fā)現(xiàn)只有動手做才會孰能技巧,還有對材料的整理和理解。這次設(shè)計(jì)運(yùn)用到的知識很多方面,尤其是單片機(jī),像AT89C52,引腳多,硬件內(nèi)部線路接通,所以用起來很方便,還有ds1302芯片與單片機(jī)之間的連接,以及如入使用ds1302,ds12b20芯片。當(dāng)然也要對這些元器件作相應(yīng)調(diào)查。主要就是電路原理圖,還有對引腳的作用熟悉。對于軟件方面則是靈活運(yùn)用單片機(jī)有關(guān)的程序語言,還有很多擴(kuò)展功能,由于知識匱乏,但是理論知識還是比較詳細(xì)的。我們最大的成功之處是在這整個(gè)過程,動腦尋求解決一個(gè)一個(gè)問題的辦法,對程序是不斷思索,務(wù)必寫出很簡單的程序來,使得數(shù)字溫度計(jì)能做成功!附錄代碼includeincludedefine uchar unsigned char define uint unsigned intsbit ds=P2^2。sbit wela=P1^2。sbit dula=P1^0。sbit shidula=P1^1。 //段選 sbit led=P2^0。sbit beep=P2^3。sbit k1=P2^5。sbit k2=P2^6。sbit k3=P2^7。sbit k4=P2^4。sbit T_RST=P3^7。//ds13025sbit T_IO=P3^6。//ds13026sbit T_CLK=P3^5。//ds13027sbit ACC0=ACC^0。sbit ACC7=ACC^7。//累加器A 51單片機(jī)原理中有介紹sbit up=P3^2。sbit down=P3^3。sbit set=P3^4。sbit shangxian=P1^7。//溫度上限指示燈sbit xiaxian=P1^6。//溫度下限指示燈sbit zhengwen=P1^5。sbit fuwen=P1^4。sbit baojing=P1^3。uint temp1。float f_temp。int alarmH=310。int alarmL=100。uchar a,b,clock_ss,clock_sg,clock_fs,clock_fg,clock_ms,clock_mg。int hour,mie,sei。uchar clk_time[3]。 //秒,分,時(shí)寄存器初始值code uchar ledmap[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x40}。//數(shù)碼管段碼 unsigned char code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd,0x87,0xff,0xef}。void key_to1()。void key_to2()。void key()。/******************DS1302:寫入操作(上升沿)*********************/ void write_byte(uchar da){ uchar i。 ACC=da。 for(i=8。i0。i) { T_IO=ACC0。 T_CLK=0。 T_CLK=1。 ACC=ACC1。 }}/******************DS1302:讀取操作(下降沿)*****************/uchar read_byte(void){ uchar i。 for(i=0。i8。i++) { ACC=ACC1。 T_CLK = 1。 T_CLK = 0。 ACC7 = T_IO。 } return(ACC)。}/**********
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1