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

正文內(nèi)容

簡(jiǎn)易數(shù)字溫度計(jì)的設(shè)計(jì)(編輯修改稿)

2025-07-08 00:32 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 +125 0000 0111 1101 0000 07D0H +85 0000 0101 0101 0000 0550H + 0000 0001 1001 0000 0191H + 0000 0000 1010 0001 00A2H + 0000 0000 0000 0010 0008H 0 0000 0000 0000 1000 0000H 1111 1111 1111 0000 FFF8H 1111 1111 0101 1110 FF5EH 1111 1110 0110 1111 FE6FH 55 1111 1100 1001 0000 FC90H DS18B20 完成溫度轉(zhuǎn)換后,就把測(cè)得的溫度值與 RAM 中的 TH、 TL 字節(jié)內(nèi)容作比較。若 T> TH 或 T< TL,則將該器件內(nèi)的報(bào)警標(biāo)志位置位,并對(duì)主機(jī)發(fā)出的報(bào)警搜索命令作出響應(yīng)。因此,可用多只 DS18B20 同時(shí)測(cè)量溫度并進(jìn)行報(bào)警搜索。 在 64 位 ROM 的最高有效字節(jié)中存儲(chǔ)有循環(huán)冗余檢驗(yàn)碼( CRC)。主機(jī) ROM 的前 56位來(lái)計(jì)算 CRC值,并和存入 DS18B20 的 CRC 值作比較,以判斷主機(jī)收到的 ROM 數(shù)據(jù)是否正確。 DS18B20的測(cè)溫原理 如圖 310所示 ,器件中低溫度系數(shù)晶振的振蕩頻率受溫度的影響很小,用于產(chǎn)生固定頻率的脈沖信號(hào)送給減法計(jì)數(shù)器 1;高溫度系數(shù)晶振隨溫度變化其振蕩頻率明顯改變,所產(chǎn)生的信號(hào)作為減法計(jì)數(shù)器 2的脈沖輸入。器件中還有一個(gè)計(jì)數(shù)門(mén),當(dāng)計(jì)數(shù)門(mén)打開(kāi)時(shí), DS18B20 就對(duì)低溫度系數(shù)振蕩器產(chǎn)生的時(shí)鐘脈沖進(jìn)行計(jì)數(shù)進(jìn)而完成溫度測(cè)量。計(jì)數(shù)門(mén)的開(kāi)啟時(shí) 間由高溫度系數(shù)振蕩器來(lái)決定,每次測(cè)量前,首先將-55℃所對(duì)應(yīng)的一個(gè)基數(shù)分別置入減法計(jì)數(shù)器 溫度寄存器中,計(jì)數(shù)器 1和溫度寄存器被預(yù)置在 - 55℃ 所對(duì)應(yīng)的一個(gè)基數(shù)值。 減法計(jì)數(shù)器 1 對(duì)低溫度系數(shù)晶振產(chǎn)生的脈沖信號(hào)進(jìn)行減法計(jì)數(shù),當(dāng)減法計(jì)數(shù)器 1的預(yù)置值減到 0時(shí),溫度寄存器的值將加 1,減法計(jì)數(shù)器 1的預(yù)置將重新被裝入,減法計(jì)數(shù)器 1 重新開(kāi)始對(duì)低溫度系數(shù)晶振產(chǎn)生的脈沖信號(hào)進(jìn)行計(jì)數(shù),如此循環(huán)直到減法計(jì)數(shù)器計(jì)數(shù) 2 計(jì)數(shù) 到 0時(shí),停止溫度寄存器的累加,此時(shí)溫度寄存器中的數(shù)值就是所測(cè)溫度值。 圖 410 中的累加器用于補(bǔ)償和修正測(cè)溫過(guò)程中的 非線形性, 其輸出用于修正減法計(jì)數(shù)器的預(yù)置值,只要計(jì)數(shù)器門(mén)仍未關(guān)閉就重復(fù)上述過(guò)程,直到溫度寄存器值 達(dá)到 被測(cè)溫度值。 圖 310 DS18B20測(cè)溫原理圖 DS18B20 的單線協(xié)議和命令 由于 DS18B20 單線通信功能是分時(shí)完成的,它有嚴(yán)格的時(shí)隙概念,因此讀寫(xiě)時(shí)序很重要。系統(tǒng)對(duì) DS18B20 的各種操作按協(xié)議進(jìn)行。操作協(xié)議為:初使化 DS18B20(發(fā)復(fù)位脈沖)→發(fā) ROM 功能命令→發(fā)存儲(chǔ)器操作命令→處理數(shù)據(jù)。 初始化 通過(guò)單線總線的所有執(zhí)行(處理)都從一個(gè)初始化序列開(kāi)始。初始化序列包括一個(gè)由總線控制器發(fā)出的復(fù)位脈沖和跟有其后由從機(jī)發(fā)出的應(yīng)答脈沖。應(yīng)答脈沖讓總線控制器知道 DS18B20 在總線上且已準(zhǔn)備好操作。 DS18B20 的各個(gè) ROM 操作命令 一旦總線控制器探測(cè)到一個(gè)應(yīng)答脈沖,它就可以發(fā)出 5 個(gè) ROM 命令中的任一個(gè)。所有 ROM 操作命令都是 8 位長(zhǎng)度。下面是這些命令: Read ROM [33h] 這個(gè)命令允許總線控制器讀到 DS18B20 的 8 位系列編碼、唯一的序列號(hào)和 8 位 CRC 碼。只有在總線上存在單只 DS18B20 的時(shí)候才能使用這個(gè)命令。如果總線上有不止一個(gè)從機(jī),當(dāng) 所有從機(jī)試圖同時(shí)傳送信號(hào)時(shí)就會(huì)發(fā)生數(shù)據(jù)沖突(漏極開(kāi)路連在一起形成相 “ 與 ” 的效果) 。 Match ROM [55h] 這是個(gè) 匹配 ROM 命令,后跟 64 位 ROM 序列,讓總線控制器在多點(diǎn)總線上定位一只特定的 DS18B20 。只有和 64 位 ROM 序列完全匹配的 DS18B20 才能響應(yīng)隨后的存儲(chǔ)器操作命令。所有和 64 位 ROM 序列不匹配的從機(jī)都將等待復(fù)位脈沖。這條命令在總線上有單個(gè)或多個(gè)器件時(shí)都可以使用。 Skip ROM [0CCh] 這條命令允許總線控制器不用提供 64 位 ROM 編碼就使用存儲(chǔ)器 操作命令,在單點(diǎn)總線情況下右以節(jié)省時(shí)間。如果總線上不止一個(gè)從機(jī),在 Skip ROM 命令之后跟著發(fā)一條讀命令,由于多個(gè)從機(jī)同時(shí) 傳送信號(hào),總線上就會(huì)發(fā)生數(shù)據(jù)沖突(漏極開(kāi)路下拉效果相當(dāng)于相與) 。 Search ROM [0F0h] 當(dāng)一個(gè)系統(tǒng)初次啟動(dòng)時(shí),總線控制器可能并不知道單線總線上有多少器件或它們的64 位 ROM 編碼。搜索 ROM 命令允許總線控制器用排除法識(shí)別總線上的所有從機(jī)的 64 位編碼 。 Alarm Search [0ECh] 這條命令的流程圖和 Search ROM 相同。然而,只有在最近一次 測(cè)溫后遇到符合報(bào)警條件的情況 , DS18B20 才會(huì)響應(yīng)這條命令。報(bào)警條件定義為溫度高于 TH 或低于 TL。只要 DS18B20 不掉電,報(bào)警狀態(tài)將一直保持,直到再一次測(cè)得的溫度值達(dá)不到報(bào)警條件。 存儲(chǔ)器操作命令 Write Scratchpad [4E] 這個(gè)命令向 DS18B20 的暫存器中寫(xiě)入數(shù)據(jù),開(kāi)始位置在地址 2。接下來(lái)寫(xiě)入的兩個(gè)字節(jié)將被存到暫存器中的地址位置 2 和 3??梢栽谌魏螘r(shí)刻發(fā)出復(fù)位命令來(lái)中止寫(xiě)入。 Read Scratchpad [0BEh] 這個(gè)命令讀取暫存器的內(nèi)容。讀取將從字 節(jié) 0 開(kāi)始,一直進(jìn)行下去,直到字節(jié) 8(第 9 個(gè)字節(jié), CRC)。如果不想讀完所有字節(jié),控制器可以在任何時(shí)間發(fā)出復(fù)位命令來(lái)中止讀取。 Copy Scratchpad [48h] 這條命令把暫存器的內(nèi)容拷貝到 DS18B20 的 E2 存儲(chǔ)器里,即把溫度報(bào)警觸發(fā)字節(jié)存入非易失性存儲(chǔ)器里。如果總線控制器在這條命令之后跟著發(fā)出讀時(shí)間隙,而 DS18B20 又正在忙于把暫存器拷貝到 E2 存儲(chǔ)器, DS18B20 就會(huì)輸出一個(gè) “ 0” ,如果拷貝結(jié)束的話, DS18B20 則輸出 “ 1” 。如果使用寄生電源,總線控制器必須在 這條命令發(fā)出后立即起動(dòng)強(qiáng)上拉并最少保持 10ms 。 Convert T [44h] 這條命令啟動(dòng)一次溫度轉(zhuǎn)換而無(wú)需其他數(shù)據(jù)。溫度轉(zhuǎn)換命令被執(zhí)行,而后 DS18B20 保持等待狀態(tài)。如果總線控制器在這條命令之后跟著發(fā)出讀時(shí)間隙,而 DS18B20 又忙于做時(shí)間轉(zhuǎn)換的話, DS18B20 將在總線上輸出 “ 0” ,若溫度轉(zhuǎn)換完成,則輸出 “ 1” 。如果使用寄生電源,總線控制器必須在發(fā)出這條命令后立即起動(dòng)強(qiáng)上拉,并保持 500ms 。 Recall E2[0B8h] 這條命令把報(bào)警觸發(fā)器里的值拷回暫存器。這種拷回操 作在 DS18B20 上電時(shí)自動(dòng)執(zhí)行,這樣器件一上電暫存器里馬上就存在有效的數(shù)據(jù)了。若在這條命令發(fā)出之后發(fā)出讀時(shí)間隙,器件會(huì)輸出溫度轉(zhuǎn)換忙的標(biāo)識(shí): “ 0” = 忙, “ 1” = 完成。 Read Power Supply [B4h] 若把這條命令發(fā)給 DS18B20 后發(fā)出讀時(shí)間隙,器件會(huì)返回它的電源模式: “ 0” = 寄生電源, “ 1” = 外部電源。 時(shí)序 主機(jī)使用時(shí)間隙 (time slots)來(lái)讀寫(xiě) DSl820 的數(shù)據(jù)位和寫(xiě)命令字的位 (1)初始化 時(shí)序見(jiàn)圖 311。 主機(jī)總線 to 時(shí)刻發(fā)送一復(fù)位脈沖 (最短為 480us 的低電平信號(hào) ),接著在 tl 時(shí)刻釋放總線并進(jìn)入接收狀態(tài) , DSl820 在檢測(cè)到總線的上升沿之后 , 等待1560us, 接著 DS1820 在 t2 時(shí)刻發(fā)出存在脈沖 (低電平 , 持續(xù) 60240 us), 如圖中虛線所示 。 圖 311 初始化時(shí)序 (2)寫(xiě)時(shí)間隙 寫(xiě)時(shí)間隙如圖 311(a)和 311(b)所示, 當(dāng)主機(jī)把數(shù)據(jù)線從邏輯高電平拉到邏輯低電平的時(shí)候,寫(xiě)時(shí)間隙開(kāi)始。有兩種寫(xiě)時(shí)間隙:寫(xiě) 1 時(shí)間隙和寫(xiě) 0 時(shí)間隙。所有寫(xiě)時(shí)間隙必須最少持續(xù) 60μs,包括兩個(gè)寫(xiě)周期間至少 1μs 的恢復(fù)時(shí)間。 I/O 線 電平變低后,DS18B20 在一個(gè) 15μs 到 60μs 的窗口內(nèi)對(duì) I/O 線采樣。如果線上是高電平,就是寫(xiě) 1,如果線上是低電平,就是寫(xiě) 0。主機(jī)要生成一個(gè)寫(xiě)時(shí)間隙,必須把數(shù)據(jù)線拉到低電平然后釋放,在寫(xiě)時(shí)間隙開(kāi)始后的 15μs 內(nèi)允許數(shù)據(jù)線拉到高電平。主機(jī)要生成一個(gè)寫(xiě) 0時(shí)間隙,必須把數(shù)據(jù)線拉到低電平并保持 60μs。 (3)讀時(shí)間隙 讀時(shí)間隙如圖 312 所示, 當(dāng)從 DS18B20 讀取數(shù)據(jù)時(shí),主機(jī)生成讀時(shí)間隙。當(dāng)主機(jī)把數(shù)據(jù)線從高高平拉到低電平時(shí),寫(xiě)時(shí)間隙開(kāi)始。數(shù)據(jù)線必須保持至少 1μs;從 DS18B20 輸出的數(shù)據(jù)在讀時(shí)間隙的下降沿出現(xiàn)后 15μs 內(nèi)有效。因此,主機(jī)在讀時(shí)間隙開(kāi)始后必須停止把 DQ 腳驅(qū)動(dòng)為低電平 15μs,以讀取 DQ 腳狀態(tài)。在讀時(shí)間隙的結(jié)尾, DQ 引腳將被外部上拉電阻拉到高電平。所有讀時(shí)間隙必須最少 60μs,包括兩個(gè)讀周期間至少 1μs的恢復(fù)時(shí)間 。 圖 311(a) 寫(xiě) 0 時(shí)序 圖 311(b) 寫(xiě) 1 時(shí)序 圖 312 DS18B20的讀時(shí)序 溫度數(shù)據(jù)的計(jì)算處理方法 從 DS18B20 讀取出的二進(jìn)制必須先轉(zhuǎn)換成十進(jìn)制,才能用于字符的顯示。因?yàn)镈S18B20 的轉(zhuǎn)換精度為 9~ 12 位可 選的,為了提高精度采用 12 位。在采用 12位精度轉(zhuǎn)換時(shí),溫度寄存器里的值以 為步進(jìn)的,即溫度值為溫度寄存器里的二進(jìn)制值乘以 ,就是實(shí)際的十進(jìn)制溫度值。 通過(guò)觀察表 35可以發(fā)現(xiàn)一個(gè)十進(jìn)制和二進(jìn)制之間有很明顯的關(guān)系,就是二進(jìn)制的高字節(jié)的低半字節(jié)和低字節(jié)的高半字節(jié)組成一個(gè)字節(jié),這個(gè)字節(jié)的二進(jìn)制值化為十進(jìn)制后,就是溫度值的百、十、個(gè)位值,而剩下的低字節(jié)的低半字節(jié)化成十進(jìn)制后,就是溫度值的小數(shù)部分。小數(shù)部分因?yàn)槭前雮€(gè)字節(jié),所以二進(jìn)制值范圍是 0~ F,轉(zhuǎn)換成十進(jìn)制小數(shù)就是 的倍數(shù) (0~ 15 倍 )。這樣需要 4位的數(shù)碼管來(lái)顯示小數(shù)部分,實(shí)際應(yīng)用不必有這么高的精度,采用 1位數(shù)碼管來(lái)顯示小數(shù),可以精確到 ℃ 。下表就是二進(jìn)制和十進(jìn)制的近似對(duì)應(yīng)關(guān)系表。 表 35 小數(shù)部分二進(jìn)制和十進(jìn)制的近似對(duì)應(yīng)關(guān)系表 小數(shù)部分二進(jìn)制值 0 1 2 3 4 5 6 7 8 9 A B C D E F 十進(jìn)制值 0 0 1 1 2 3 3 4 5 5 6 6 7 8 8 9 4 系統(tǒng)硬件電路的設(shè)計(jì) 系統(tǒng)整體硬件電路包括,傳感器數(shù)據(jù)采集電路,溫度顯示電路,上下限報(bào)警調(diào)整電路,單片機(jī)主板電路等,如圖 41 所示。 圖 41中有三個(gè)獨(dú)立式按鍵可以分別調(diào)整溫度計(jì)的上下限報(bào)警設(shè)置,圖中蜂鳴器可以在被測(cè)溫度不在上下限范圍內(nèi)時(shí),發(fā)出報(bào)警鳴叫聲音,同時(shí) LED 數(shù)碼管將沒(méi)有被測(cè)溫度值顯示,這時(shí)可以調(diào)整報(bào)警上下限,從而測(cè)出被測(cè)的溫度值。 圖 41中的按健復(fù)位電路是上電復(fù)位加手動(dòng)復(fù)位,使用比較方便,在程序跑飛時(shí),可以手動(dòng)復(fù)位,這樣就不用在重起單片機(jī)電源,就可以實(shí)現(xiàn)復(fù)位。 顯示電路是使用的串口顯示,這種顯示最大的優(yōu)點(diǎn)就是使用口資源比較少,只用p3口的 RXD,和 TXD,串口的發(fā)送和接收,四只數(shù)碼管采用 74LS164 右移寄存器驅(qū)動(dòng),顯示比較清晰。如圖 42所示。 圖 41 單片機(jī)主板電路 圖 42 溫度顯示電路 DS18B20 溫度傳感器與單片機(jī)的接口電路 DS18B20 可以采用兩種方式供電,一種是寄生電源供電方式,如圖 53 所示,單片機(jī)端口接單線總線,為保證在有效的 DS18B20 時(shí)鐘周期內(nèi)提供足夠的電流,可用一個(gè)MOSFET管來(lái)完成對(duì)總線的上拉。 這個(gè)電路會(huì)在 I/O或 VDD引腳處于高電平時(shí) “ 偷 ” 能量。當(dāng)有特定的時(shí)間和電壓需求時(shí), I/O 要提供足夠的能量。寄生電源有兩個(gè)好處:進(jìn)行遠(yuǎn)距離測(cè)溫時(shí),無(wú)需本地電 源;可以在沒(méi)有常規(guī)電源的條件下讀 ROM。 當(dāng) DS18B20 處于寫(xiě)存儲(chǔ)器操作和溫度 A/D 轉(zhuǎn)換操作時(shí),總線上必須有強(qiáng)的上拉,上拉開(kāi)啟時(shí)間最大為 10us。 要想使 DS18B20 能夠進(jìn)行精確的溫度轉(zhuǎn)換, I/O 線必須在轉(zhuǎn)換期間保證供電。由于 DS18B20 的工作電流達(dá)到 ,所以僅靠 5K上拉電阻提供電源是不行的,當(dāng)幾只 DS18B20 掛在同一根 I/O 線上并同時(shí)想進(jìn)行溫度轉(zhuǎn)換時(shí),這個(gè)問(wèn)題變得更加尖銳。 有兩種方法能夠使 DS18B20 在動(dòng)態(tài)轉(zhuǎn)換周期中獲得足夠的電流供應(yīng)。第一種方法,當(dāng)進(jìn)行溫度轉(zhuǎn)換或拷貝到 E2 存儲(chǔ)器 操作時(shí),給 DQ線提供一個(gè)強(qiáng)上拉。用 MOSFET 把 DQ線直接拉到電源上就可以實(shí)現(xiàn),見(jiàn)圖 43。在發(fā)出任何涉及拷貝到 E2存儲(chǔ)器或啟動(dòng)溫度轉(zhuǎn)換的協(xié)議之后,必須在最多 10μs 之內(nèi)把 I/O 線轉(zhuǎn)換到強(qiáng)上拉。 采用寄生電源供電方式時(shí) VDD 和
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1