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

正文內(nèi)容

多功能數(shù)字溫度計-文庫吧資料

2025-01-23 23:38本頁面
  

【正文】 ANL A,0FH 。 MOV TEMPL,A 。 計算整數(shù)位溫度BCD值 ANL A,0F0H 。 TEMPLC LOW= 小數(shù)部分 BCD。 MOVC A,A+DPTR 。 ANL A,0FH 。 計算小數(shù)位溫度BCD值 SWAP A MOV TEMPHC,A 。 置+標(biāo)志 不顯示。 置標(biāo)志 SJMP TEMPC11 。 MOV TEMPH,A 。 CPL A 。 MOV TEMPL,A 。 溫度值補碼 變成原碼 MOV A,TEMPL 。 判斷最高位 JZ TEMPC1 。*************************************CONVTEMP: MOV A,TEMPH 。*************************************。判斷是否寫完 SETB TEMPDIN 。延時 DJNZ R3,$ SETB TEMPDIN 。數(shù)據(jù)右移 MOV TEMPDIN,C 。 MOV R3,6 。/ NOP 。C清0 SETB TEMPDIN 。*******************************************WRITE_1820:MOV R2,8 。*******************************************。發(fā)出讀溫度命令 LCALL WRITE_1820 LCALL READ_18200 。準(zhǔn)備讀溫度前先復(fù)位 MOV A,0CCH 。顯示溫度。這里通過調(diào)用顯示子程序?qū)崿F(xiàn)延時一段時間,等待AD轉(zhuǎn)換結(jié)束,12位的話750微秒。發(fā)出溫度轉(zhuǎn)換命令 LCALL WRITE_1820。DS18B20已經(jīng)被檢測到!! MOV A,0CCH 。先復(fù)位DS18B20 JB FLAG1,TSS2 RET 。****************************************GET_TEMPER:SETB TEMPDIN 。****************************************。時序要求延時一段時間TSR7: SETB TEMPDIN 。 LJMP TSR5TSR4: CLR FLAG1 。DS1820不存在TSR3: SETB FLAG1 。延時TSR2: JNB TEMPDIN,TSR3 。主機發(fā)出延時537微秒的復(fù)位低脈沖 MOV R1,3TSR1: MOV R0,107 DJNZ R0,$ DJNZ R1,TSR1 SETB TEMPDIN 。 這是DS18B20復(fù)位初始化子程序。循環(huán)。調(diào)用數(shù)碼管顯示子程序。顯示區(qū)BCD碼溫度值刷新子程序 MOV P0,TEMPLC MOV P2,TEMPHC。調(diào)用讀溫度子程序 LCALL CONVTEMP 。設(shè)置堆棧 MOV P1, 0FFH 。,我們不要求顯示小數(shù)所以可以拋棄29H的低4位。**********************************************。 RETI 。中斷返回(不開中斷) ORG 0023H 。定時器T1中斷入口地址 DB 00H,00H,00H,00H,00H,00H,00H 。 RETI 。跳至定時器T0執(zhí)行中斷服務(wù)程序 ORG 0013H 。定時器T0中斷入口地址 DB 00H,00H,00H,00H,00H,00H,00H 。 RETI 。轉(zhuǎn)主程序 ORG 0003H 。********************************************** ORG 0000H 。數(shù)據(jù)腳定義DIN BIT 。顯示緩沖寄存器十?dāng)?shù)位BUF4 EQU 37H 。顯示緩沖寄存器小數(shù)位BUF2 EQU 35H 。溫度轉(zhuǎn)換寄存器低8位TEMPLC EQU 33H 。用于保存讀出正確溫度值的低8位TEMPH EQU 31H 。用于保存讀出溫度的高8位FLAG1 EQU 38H 。*************************************************TEMPER_L EQU 40H 。顯示溫度55到+125度, *。, *。DS18B20的讀寫程序, *。九、各部分程序的詳細設(shè)計步驟??偨Y(jié)經(jīng)驗的時候我們得出這樣的結(jié)論,學(xué)習(xí)應(yīng)該學(xué)以致用,有目的的去學(xué)習(xí),如果學(xué)了不用等于沒學(xué)。這是我們第二次自己動手設(shè)計的電路,通過系統(tǒng)仿真軟件protel,使我們進一步了解了單片機的設(shè)計制作過程,其中最為困難的是軟件部分,即編程部分。發(fā)DS18B20復(fù)位命令發(fā)跳過ROM命令發(fā)溫度轉(zhuǎn)換開始命令結(jié)束圖8 二進制轉(zhuǎn)換BCD碼流程圖計算溫度子程序?qū)AM中讀取值進行BCD碼的轉(zhuǎn)換運算,并進行溫度值正負的判定,其程序流程圖如圖9所示。發(fā)DS18B20復(fù)位命令發(fā)跳過ROM命令發(fā)讀取溫度命令讀取操作,CRC校驗9字節(jié)完?CRC校驗正?確?移入溫度暫存器結(jié)束 NNYY圖7 讀出溫度子程序流程二進制轉(zhuǎn)換BCD碼命令子程序 二進制轉(zhuǎn)換BCD碼命令子程序主要是發(fā)溫度轉(zhuǎn)換開始命令,當(dāng)采用12位分辨率時轉(zhuǎn)換時間約為750ms,在本程序設(shè)計中采用1s顯示程序延時法等待轉(zhuǎn)換的完成。返回 開始 初始化 調(diào)顯示子程序 得出溫度總子程序圖6 主程序流程讀出溫度子程序讀出溫度子程序的主要功能是讀出RAM中的9字節(jié),在讀出時需進行CRC校驗,校驗有錯時不進行溫度數(shù)據(jù)的改寫。主程序主程序的主要功能是負責(zé)溫度的實時顯示、讀出并處理DS18B20的測量的當(dāng)前溫度值,溫度測量每1s進行一次。圖5 硬件系統(tǒng)框圖七、系統(tǒng)軟件設(shè)計框圖本次課程設(shè)計采用的是protel軟件仿真。表3 ROM操作指令指令代碼Read ROM(讀ROM)[33H]Match ROM(匹配ROM)[55H]Skip ROM(跳過ROM)[CCH]Search ROM(搜索ROM)[F0H]Alarm search(告警搜索)[ECH]存儲器操作命令如表4。初始化后,才可進行讀寫操作。分別說明如下:初始化 單總線的所有處理均從初始化開始。系統(tǒng)對DS18B20的各種操作按協(xié)議進行。主機ROM的前56位來計算CRC值,并和存入DS18B20的CRC值作比較,以判斷主機收到的ROM數(shù)據(jù)是否
點擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1