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

正文內(nèi)容

基于ds18b20數(shù)字溫度傳感器的數(shù)字溫度計設計(編輯修改稿)

2025-01-11 02:27 本頁面
 

【文章內(nèi)容簡介】 ,$ MOV R0,22 LT2: JNB ,LT3 。等待 DS18B20 回應 DJNZ R0,LT2 LJMP LT4 LT3: SETB FLAG1 。置標志位 ,表示 DS1820 存在 LJMP LT5 LT4: CLR FLAG1 。清標志位 ,表示 DS1820 不存在 LJMP LT7 LT5: MOV R0,210 LT6: DJNZ R0,LT6 。時序要求延時一段時間約 420us LT7: SETB RET 。讀出轉換后的溫度值 GET_TEMPER: JB FLAG1,GT2 RET 。判斷 DS1820 是否存在 ?若 DS18B20 不存在則返回 GT2: MOV A,0CCH 。跳過 ROM 匹配 LCALL WRITE_1820 MOV A,44H 。發(fā)出溫度轉換命令 LCALL WRITE_1820 LCALL D1MS 。延時一段時間 ,等待 AD 轉換結束 LCALL INIT_1820 。準備讀溫度前先復位 MOV A,0CCH 。跳過 ROM 匹配 LCALL WRITE_1820 MOV A,0BEH 。發(fā)出讀溫度命令 LCALL WRITE_1820 LCALL READ_1820 。將讀出的溫度數(shù)據(jù) 保存到 28H/29H RET 13 。寫 DS18B20 的子程序,寫一個字節(jié) WRITE_1820: MOV R2,8 。一共 8位數(shù)據(jù) CLR C WR1: CLR 。寫開始至少 1us 低電平,此處約 12us MOV R3,5 。在寫開始 15us 之前要讀入數(shù)據(jù),也即在寫 1時要在啟動后 15us 內(nèi) DJNZ R3,$ 。拉高數(shù)據(jù)線,而寫 0還是 0,此處 12us 后數(shù)據(jù)線拉高 (寫 1時 ) RRC A MOV ,C MOV R3,25 。延時 15us60us 讓 DS18B20 采樣數(shù)據(jù)線,此處延時約 51us DJNZ R3, 。注意寫 0過程總持續(xù)時間要為 60us120us,開始延時12us,這里延時 51us,總共約 63us SETB NOP DJNZ R2,WR1 。8 位數(shù)據(jù)是否寫完 SETB RET 。讀 DS18B20 的子程序 ,從 DS18B20 中讀出兩個 字節(jié)的溫度數(shù)據(jù) READ_1820: MOV R4,2 。將溫度高位和低位從 DS18B20 中讀出 MOV R1,29H 。低位存入 29H(TEMPER_L),高位存入 28H(TEMPER_H) RE1: MOV R2,8 。數(shù)據(jù)一共有 8 位 RE2: CLR C SETB NOP NOP 。讀開始低電平延時至少 1us,這里延時 2us CLR NOP NOP NOP SETB 。設為數(shù)據(jù)輸入 MOV R3,5 。延時 10us DJNZ R3,$ MOV C, 。讀與寫一樣,啟動后 15us 之前讀入數(shù)據(jù),這里延時 13us后讀入數(shù)據(jù) MOV R3,25 。延時 50us,保證讀總過程持續(xù) 60us,這里總過程約 63us DJNZ R3,$ RRC A DJNZ R2,RE2 。8 位數(shù)據(jù)是否讀完? MOV @R1,A DEC R1 。讀完存緩沖區(qū),緩沖區(qū)地址減 1 14 DJNZ R4,RE1 。兩字節(jié)溫度值是否讀完,讀完則返回,否則繼續(xù) RET 。顯示子程序 DISPLAY: MOV P3,0FFH MOV A,29H 。將 29H 中的十六進制數(shù)轉換成 10 進制 MOV B,10 。16 進制 /10=10 進制 DIV AB MOV B_BIT,A 。十位在 a MOV A_BIT,B 。個位在 b MOV A,R0 。精度 度 JNB ,DL1 MOV C_BIT,5 AJMP DL2 DL1: MOV C_BIT,0 DL2: MOV DPTR,NUMTAB 。指定查表啟始地址 MOV R0,2 S1:MOV R1,50 S2:MOV A,C_BIT 。取十分位數(shù) MOVC A,@A+DPTR 。查十分位數(shù)的 7段代碼 MOV P3,A 。送出十分位的 7段代碼 CLR 。開十分位顯示 CLR ACALL D1MS SETB SETB MOV P3,0FFH MOV A,A_BIT 。取個位數(shù) MOVC A,@A+DPTR 。查個位的 7段代碼 MOV P3,A 。送出個位的 7 段代碼 CLR CLR 。開個位顯示 ACALL D1MS SETB MOV P3,0FFH MOV A,B_BIT 。取十位數(shù) MOVC A,@A+DPTR 。查十位數(shù)的 7 段代碼 MOV P3,A 。送出十位的 7 段代碼 CLR 。開十位顯示 ACALL D1MS SETB MOV P3,0FFH 15 DJNZ R1,S2 DJNZ R0,S1 RET 。1MS 延時 (按 12MHZ 算 ) D1MS: MOV R6,10 L: MOV R7,49 DJNZ R7,$ DJNZ R6,L RET 。7 段數(shù)碼管 0~ 9 數(shù)字的共陽顯示代碼 NUMTAB: DB 0C0H, 0F9H, 0A4H, 0B0H, 99H, 92H, 82H, 0F8H, 80H, 90H END 16 第三章 軟件仿真與實物的檢測、調(diào)試 軟件仿真 程序 編寫完成后,編譯通過無錯誤,可以由 KeiluVision2 軟件生成后綴為 .HEX的文件,仿真軟件選用 軟件。先用仿真軟件畫出仿真圖(圖 31),仿真圖與原理圖相似,仿真圖畫好后,鼠標雙擊圖上 AT89C51 芯片,在出現(xiàn)的對話框中選擇 圖 31 仿真靜態(tài)圖 Program File 欄,點擊選擇用 KeiluVision2 軟件編寫程序生成的 .HEX 文件。在點擊仿真軟件運行,就可以通過仿真看到實物效果(圖 32, 33),點擊 DS18B20上的“ +”和“ ”可以模擬溫度升高和降低, DS18B20 上的數(shù)據(jù)改變,數(shù)碼管顯示的內(nèi)容與其保持一致,同步變化則說明仿真實驗成功。 17 圖 32 DS18B20 仿真圖 圖 33 仿真運行圖 實物的調(diào)試 軟件 仿真成功后,可以進行實物的調(diào)試,制作實物時 AT89C51 只是焊接了與之封裝對應的芯片插槽,這時便于 拆取芯片燒錄程序,同樣將后綴為 .HEX 的文件燒錄 18 到芯片中,將芯片和數(shù)碼管裝好,接通 5V 電源,數(shù)碼管就會顯示當前環(huán)境溫度數(shù)值(圖 34),環(huán)境溫度低于人體溫度時,用手夾住 DS18B20 溫度傳感器,可看到數(shù)碼管數(shù)值在增加,松開手,數(shù)碼管顯示數(shù)值又會慢慢減小直到恢復當前環(huán)境溫度數(shù)值。 圖 34 溫度計實物顯示圖 19 設計結論 經(jīng)過 一個月的畢業(yè)設計,基本完成了設計要求的內(nèi)容,做出了一個簡易的數(shù)字溫度計,本設計中所采用的 DS18B20 溫度傳感器是之前學習中沒有接觸過器件,通過此次設計,理解了 DS18B20 的工作原理,明白了溫度傳感器與單片機芯片之間的數(shù)據(jù)傳輸和數(shù)據(jù)轉換。設計中進一步的熟悉了 protel 99 se 畫圖軟件和KeiluVision2 編程軟件,并且學會使用 仿真軟件,為理論設計的準確性停工了更多的保證。在原理圖的繪制過程中芯片與其它器件之間不僅僅是簡單的導線連 接,數(shù)碼管需要加驅動電路和上拉電阻。仿真時仿真圖的內(nèi)容要與實物所包含器件一致,這樣仿真的效果才是最好最接近實際效果。在實物制作工程中,見到了以前沒見過的實物器件,自己親自采買元件,了解市場行情。在 PCB 板的制作中更是收獲良多,全過程自己動手,對實物電路理解更深刻。 20 致 謝 參考文獻 [1]金龍國,陳萌, 李雪梅編 單片機原理與應用 中國水利水電出版社 2021 年 8 月 [2]吳金戌等編 8051 單片機實踐與應用 清華大學出版社 2021 年 9 月 [3]閻石等編 數(shù)字電子技術基礎(第五版) 高
點擊復制文檔內(nèi)容
研究報告相關推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1