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

正文內(nèi)容

基于ds18b20傳感器溫度測量課程設計的報告-文庫吧資料

2025-07-03 17:46本頁面
  

【正文】 。主機發(fā)出延時500微秒的復位低脈沖 DJNZ R2,$ SETB DAT 。發(fā)出讀溫度命令 LCALL WRITE_1820 LCALL READ_1820 RET。準備讀溫度前先初始化 MOV A,0CCH 。發(fā)出溫度轉(zhuǎn)換命令 LCALL WRITE_1820 LCALL DISPLAY 。DS18B20的溫度轉(zhuǎn)換子程序GET_TEMPER: LCALL Set_18B20 MOV A,0CCH 。將讀出的2字節(jié)溫度格式化,并轉(zhuǎn)換為壓縮BCD碼 LCALL DISPLAY 。賦初始溫度為30度 MOV T_INTEGER,30HSTART: LCALL GET_TEMPER 。主函數(shù)開始 ORG 0000H AJMP MAIN ORG 0030HMAIN: CLR EA 。標志位DAT BIT 。FORMAT后的小數(shù)部分(decimal fraction),半字節(jié)的溫度小數(shù)(存在低四位)T_INTEGER EQU 32H 。用于保存讀出溫度的低字節(jié)TEMPER_H EQU 30H 。溫度傳感器18B20采用器件默認的12位轉(zhuǎn)化,最大轉(zhuǎn)化時間要750毫秒。4.計算溫度子程序 計算溫度子程序?qū)AM中讀取值進行BCD碼的轉(zhuǎn)換運算,并進行溫度值正負的判定,其流程圖如圖4所示。3.溫度轉(zhuǎn)換命令子程序 溫度轉(zhuǎn)換命令子程序主要是發(fā)溫度轉(zhuǎn)換開始命令,當采用12位分辯率時轉(zhuǎn)換時間約為750ms,在本程序設計中采用1s顯示程序延時法等待轉(zhuǎn)換的完成。2.讀出溫度子程序 讀出溫度子程序的主要功能是讀出RAM中的9字節(jié),在讀出時需要進行CRC校驗,校驗有錯時不進行溫度數(shù)據(jù)的改寫。(3)顯示模塊六、軟件設計 系統(tǒng)程序主要包括主程序、讀出溫度子程序、溫度轉(zhuǎn)換子程序、計算溫度子程序、顯示等等。溫度轉(zhuǎn)換計算方法舉例:例如當DS18B20采集到+125℃的實際溫度后,輸出為07D0H,則:實際溫度=07D0H╳=2000╳=1250C。當溫度轉(zhuǎn)換命令發(fā)布后,經(jīng)轉(zhuǎn)換所得的溫度值以二字節(jié)補碼形式存放在高速暫存存儲器的第0和第1個字節(jié)。Read Power Supply(讀電源)[B4h]對于在此命令發(fā)送至DS18B20之后所發(fā)出的第一讀數(shù)據(jù)的時間片,器件都會給出其電源方式的信號:“0”=寄生電源供電,“1”=外部電源供電。這種重新調(diào)出的操作在對DS18B20上電時也自動發(fā)生,因此只要器件一上電,暫存存儲器內(nèi)就有了有效的數(shù)據(jù)。如果使用寄生電源,總線控制器必須在發(fā)出這條命令后立即起動強上拉,并保持500ms。溫度轉(zhuǎn)換命令被執(zhí)行,而后DS18B20保持等待狀態(tài)。如果使用寄生電源,總線控制器必須在這條命令發(fā)出后立即起動強上拉并最少保持10ms。Copy Scratchpad(復制暫存存儲器)[48h]這條命令把暫存器的內(nèi)容拷貝到DS18B20的E2存儲器里,即把溫度報警觸發(fā)字節(jié)存入非易失性存儲器里。讀取將從字節(jié)0開始,一直進行下去,直到第9(字節(jié)8,CRC)字節(jié)讀完??梢栽谌魏螘r刻發(fā)出復位命令來中止寫入。③ 存儲器操作命令Write Scratchpad(寫暫存存儲器)[4Eh]這個命令向DS18B20的暫存器中寫入數(shù)據(jù),開始位置在地址2。只要DS18B20一上電,告警條件就保持在設置狀態(tài),直到另一次溫度測量顯示出非告警值或者改變TH或TL的設置,使得測量值再一次位于允許的范圍之內(nèi)。但是,僅在最近一次溫度測量出現(xiàn)告警的情況下,DS18B20才對此命令作出響應。搜索ROM命令允許總線控制器用排除法識別總線上的所有從機的64位編碼。如果在總線上存在多于一個的從屬器件而且在Skip ROM命令之后發(fā)出讀命令,那么由于多個從片同時發(fā)送數(shù)據(jù),會在總線上發(fā)生數(shù)據(jù)沖突(漏極開路下拉會產(chǎn)生線與的效果)。此命令在總線上有單個或多個器件的情況下均可使用。只有與64位ROM序列嚴格相符的DS18B20才能對后繼的存貯器操作命令作出響應。如果總線上存在多于一個的從屬器件,那么當所有從片企圖同時發(fā)送時將發(fā)生數(shù)據(jù)沖突的現(xiàn)象(漏極開路會產(chǎn)生線與的結(jié)果)。這些命令列表如下:Read ROM(讀ROM)[33h]此命令允許總線主機讀DS18B20的8位產(chǎn)品系列編碼,唯一的48位序列號,以及8位的CRC。② ROM操作命令一旦總線主機檢測到從屬器件的存在,它便可以發(fā)出器件ROM操作命令之一。初始化序列包括總線主機發(fā)出一復位脈沖,接著由從屬器件送出存在脈沖。一般情況下的溫度值應該為9位,但因符號位擴展成高8位,所以最后以16位補碼形式讀出。芯片內(nèi)部還有斜率累加器,可對頻率的非線性度加以補償。DS18B20內(nèi)部的低溫度系數(shù)振蕩器能產(chǎn)生穩(wěn)定的頻率信號;同樣的,高溫度系數(shù)振蕩器則將被測溫度轉(zhuǎn)換成頻率信號。測溫結(jié)束時,這9位數(shù)據(jù)轉(zhuǎn)存到暫存存儲器的前兩個字節(jié)中,符號位占用第一字節(jié),8位溫度數(shù)據(jù)占據(jù)第二字節(jié)。1/2LSB,℃。在計數(shù)器2停止計數(shù)后,℃進行比較,℃,溫度寄存器的最低位就置0;℃,最低位就置1;℃時,溫度寄存器的最低位就進位然后置0。計數(shù)器1的預置數(shù)也就是在給定溫度處使溫度寄存器寄存值增加1℃計數(shù)器所需要的計數(shù)個數(shù)。以后計數(shù)器1每一個循環(huán)的預置數(shù)都由斜率累加器提供。初始時,溫度寄存器被預置成55℃,每當計數(shù)器1從預置數(shù)開始減計數(shù)到0時,溫度寄存器中寄存的溫度值就增加1℃,這個過程重復進行,直到計數(shù)器2計數(shù)到0時便停止。DS18B20工作過程及時序DS18B20內(nèi)部的低溫度系數(shù)振蕩器是一個振蕩頻率隨溫度變化很小的振蕩器,為計數(shù)器1提
點擊復制文檔內(nèi)容
畢業(yè)設計相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1