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

正文內(nèi)容

倉庫溫濕度檢測系統(tǒng)設(shè)計課程(更新版)

2025-08-15 12:35上一頁面

下一頁面
  

【正文】 20最佳的工作方式,工作穩(wěn)定可靠,抗干擾能力強,而且電路也比較簡單,可以開發(fā)出穩(wěn)定可靠的多點溫度監(jiān)控系統(tǒng)。 DS18B20寄生電源供電方式電路圖(2)DS18B20寄生電源強上拉供電方式電路圖改進的寄生電源供電方式如下面圖10所示,為了使DS18B20在動態(tài)轉(zhuǎn)換周期中獲得足夠的電流供應(yīng),當(dāng)進行溫度轉(zhuǎn)換或拷貝到E2存儲器操作時,用MOSFET把I/O線直接拉到VCC就可提供足夠的電流,在發(fā)出任何涉及到拷貝到E2存儲器或啟動溫度轉(zhuǎn)換的指令后,必須在最多10μS內(nèi)把I/O線轉(zhuǎn)換到強上拉狀態(tài)。下面就是DS18B20幾個不同應(yīng)用方式下的測溫電路圖:(1)DS18B20寄生電源供電方式電路圖如下面圖9所示,在寄生電源供電方式下,DS18B20從單線信號線上汲取能量:在信號線DQ處于高電平期間把能量儲存在內(nèi)部電容里,在信號線處于低電平期間消耗電容上的電能工作,直到高電平到來再給寄生電源(電容)充電。單片機可通過單線接口讀到該數(shù)據(jù),讀取時低位在前,高位在后。(2)DS18B20中的溫度傳感器可完成對溫度的測量,以12位轉(zhuǎn)化為例:用16位符號擴展的二進制補碼讀數(shù)形式提供,℃/LSB形式表達,其中S為符號位。高溫度系數(shù)晶振隨溫度變化其振蕩率明顯改變,所產(chǎn)生的信號作為計數(shù)器2的脈沖輸入。 DS18B20的讀時序(2)DS18B20的寫時序 對于DS18B20的寫時序仍然分為寫0時序和寫1時序兩個過程。DS18B20有嚴格的通信協(xié)議來保證各位數(shù)據(jù)傳輸?shù)恼_性和完整性。 DS18B20的引腳介紹 TO-。 DS18B20產(chǎn)品的特點 (1)、只要求一個端口即可實現(xiàn)通信。DS18B20 數(shù)字溫度傳感器,測溫范圍 -55℃~+125℃,℃?!?。按IEC標準測溫范圍200~650℃,百度電阻比W(100)=,R0為100Ω和10Ω,其允許的測量誤差A(yù)級為177。同時增加了組件的測溫點免維護自由增減功能,以適應(yīng)系統(tǒng)的規(guī)模的自由裁剪。但是通過實際的考察,現(xiàn)實的系統(tǒng)根本不是這個樣子:由于糧食要定期的通過熏蒸來除蟲、防鼠,熏蒸藥劑具有高毒性,高腐蝕性,人員根本不能隨意接觸到倉內(nèi)設(shè)備,更不要說通過數(shù)碼管的顯示和報警器來及時發(fā)現(xiàn)溫度的異常變化,同時出于防爆的要求,在倉庫內(nèi)部的系統(tǒng),是完全密封的,并被充入低氧高氮的氣體,平時人員根本不能及時進入。關(guān)鍵詞:DS18B20 ;單片機 MCU;串行傳輸 Serial Data Transfer;單總線 1wire interface AbstractThis design as the main STC8952 of singlechip control module, using a simple external circuit to drive the 1Wire bus, the use of 1Wire bus protocol, to achieve a more accurate measurement of temperature. The use of MCS STC89C52 powerful features and its own internal RAM resources, it is easy to achieve singlechip and PC data transfer between aircraft and the use of software to facilitate the realization of the logic to determine the 1Wire bus ROM search, the realization of the temperature measurement device enumeration 18B20, no intervention to achieve a dynamic temperature measurement point cut, so the design of practical application. In addition,the system did not plete humidity testing. This article from the 1Wire bus starting with the principle, described in detail 1Wire bus ROM search process, as well as the design of hardware circuits, puting and software algorithms. Keywords :DS18B20。本文從1Wire總線的原理入手,詳細闡述了1Wire總線的ROM搜索過程,以及硬件電路的設(shè)計、計算和軟件的算法。在我們的印象中,溫度的測量不外乎由傳感器、放大器、數(shù)碼顯示、報警器等單元組成。根據(jù)實際的需求,我們提出了測溫組件的基本功能,需要說明的是,在這里你看不到傳統(tǒng)的溫度顯示功能,因為實際上工作人員根本不可能到現(xiàn)場去記錄溫度的顯示。缺點是價格貴,溫度系數(shù)小,受到磁場影響大,在還原介質(zhì)中易被玷污變脆。M檔在測溫范圍內(nèi)非線形誤差為177。方案三:采用DS18B20。因此用它來組成一個測溫系統(tǒng),具有線路簡單,在一根通信線上可以掛很多這樣的數(shù)字溫度計,十分方便。 (6)、內(nèi)部有溫度上、下限告警設(shè)置。 由于DS18B20是在一根I/O線上讀寫數(shù)據(jù),因此,對讀寫的數(shù)據(jù)位有著嚴格的時序要求。DS18B20在完成一個讀時序過程,至少需要60us才能完成。圖中低溫度系數(shù)晶振的振蕩頻率受溫度影響很小,用于產(chǎn)生固定頻率的脈沖信號送給計數(shù)器1。光刻ROM的作用是使每一個DS18B20都各不相同,這樣就可以實現(xiàn)一根總線上掛接多個DS18B20的目的。當(dāng)溫度轉(zhuǎn)換命令發(fā)布后,經(jīng)轉(zhuǎn)換所得的溫度值以二字節(jié)補碼形式存放在高速暫存存儲器的第0和第1個字節(jié)。 DS18B20測溫系統(tǒng)具有測溫系統(tǒng)簡單、測溫精度高、連接方便、占用口線少等優(yōu)點。 要想使DS18B20進行精確的溫度轉(zhuǎn)換,I/O線必須保證在溫度轉(zhuǎn)換期間提供足夠的能量,由于每個DS18B20在溫度轉(zhuǎn)換期間工作電流達到1mA,當(dāng)幾個溫度傳感器掛在同一根I/O線上進行多點測溫時,會造成無法轉(zhuǎn)換溫度或溫度誤差極大。當(dāng)電源電壓降為4V時,溫度誤差有3℃之多,這就應(yīng)該是因為寄生電源汲取能量不夠造成的吧,因此,在開發(fā)實際測溫系統(tǒng)時不使用此電路。注意:在外部供電的方式下,DS18B20的GND引腳不能懸空,否則不能轉(zhuǎn)換溫度,讀取的溫度總是85℃。(2)數(shù)據(jù)存儲器(RAM)STC89C52內(nèi)部有256個8位用戶數(shù)據(jù)存儲單元和128個專用寄存器單元,它們是統(tǒng)一編址的,專用寄存器只能用于存放控制指令數(shù)據(jù),用戶只能訪問,而不能用于存放用戶數(shù)據(jù),所以,用戶能使用的RAM只有256個,可存放讀寫的數(shù)據(jù),運算的中間結(jié)果或用戶定義的字型表?,F(xiàn)在我們對這些引腳的功能加以說明: STC89C52 的引腳Pin9:RESET/Vpd復(fù)位信號復(fù)用腳,當(dāng)STC89C52通電,時鐘電路開始工作,在RESET引腳上出現(xiàn)24個時鐘周期以上的高電平,系統(tǒng)即初始復(fù)位。更有一個特點,當(dāng)訪問外部程序存儲器,ALE會跳過一個脈沖。RS232C規(guī)定最大的負載電容為2500pF,這個電容限制了傳輸距離和傳輸速率,由于RS232C的發(fā)送器和接收器之間具有公共信號地(GND),屬于非平衡電壓型傳輸電路,不使用差分信號傳輸,因此不具備抗共模干擾的能力,共模噪聲會耦合到信號中。MAX232是單電源雙RS232C發(fā)送/接收芯片。 1Wire總線協(xié)議處理經(jīng)過單線接口訪問DS1820 的協(xié)議protocol 如下初始化ROM 操作命令存貯器操作命令處理數(shù)據(jù) 初始化單線總線上的所有處理均從初始化序列開始初始化序列包括總線主機發(fā)出一復(fù)位脈沖接著由從屬器件送出存在脈沖。 //delay 100 uS _nop_()。 dq = 1。0x01。i8。}有了上面的基本函數(shù),我們可以完成具體的ROM操作了舉例總線主機產(chǎn)生溫度變換命令然后讀出溫度,如下表所示:表 讀溫度主機方式數(shù)據(jù)LSB 在先注 釋TXReset(復(fù)位)復(fù)位脈沖480_960usRXPresence(存在)存在脈沖TX 55h 符合ROM 命令TX 64位ROM代碼發(fā)出DS1820 地址TX44h 溫度變換命令TXI/O 線高電平總線主機使I/O 線至少保持2 秒鐘的高電平以便完成變換TXReset 復(fù)位復(fù)位脈沖RXPresence 存在存在脈沖TX55h 符合ROM 命令TX64 位ROM 代碼發(fā)出DS1820 地址TXBeh讀暫存存貯器命令RX9 個數(shù)據(jù)字節(jié)讀整個暫存存儲器以及CRC 主機現(xiàn)在重新計算機從暫存存儲器接收來的8 位數(shù)據(jù)字節(jié)的CRC 并把計算得到的CRC 與讀出的CRC 比較如果二者相符主機繼續(xù)操作如果不符重復(fù)此讀操作TXReset復(fù)位復(fù)位脈沖RXPresence存在存在脈沖操作完成完成這部分功能的代碼如下/*************************************************************Function:CRC校驗*parameter:*Return:*Modify:*************************************************************/uchar CRC (uchar j){ uchar i,crc_data=0。 Temperature *= 10。 Init18b20 ()。}這里要說明的是: 1Wire協(xié)議提供了一種檢測數(shù)據(jù)是否存在著傳輸錯誤的手段,就是CRC校驗。uchar CRC (uchar j){ uchar i,crc_data=0。 64位ROM注冊碼搜索算法搜索算法采用的是二叉樹型結(jié)構(gòu),搜索過程沿各分節(jié)點進行,直到找到器件的ROM 碼即葉子為止;后續(xù)的搜索操作沿著節(jié)點上的其它路徑進行,按照同樣的方式直到找到總線上的所有器件代碼。按照這種搜索算法進行下去,最終除了一個從機器件外所有從機將進入等待狀態(tài),經(jīng)過最后一輪檢測就可得到最后保留(未進入等待狀態(tài))器件的ROM 碼。 分支選取;右側(cè)注釋欄對在流程圖中出現(xiàn)的符號進行了說明;在本文檔的源代碼附錄中也將用到這些專用符號。last_zero = 0。return FALSE。 }else { if (id_bit != cmp_id_bit) //10 01 search_direction = id_bit。 OWWriteBit(search_direction)。 if (LastDiscrepancy == 0) LastDeviceFlag = TRUE。 ‘FIRST’操作 ‘FIRST’操作是搜索1Wire 總線上的第一個從機器件。 ‘NEXT’操作‘NEXT’ 操作是搜索1Wire 總線上的下一個從機器件;一般情況下,此搜索操作是在‘FIRST’操作之后或上一次‘NEXT’ 操作之后進行;保持上次搜索后這些值的狀態(tài)不變、執(zhí)行又一次搜索即可實現(xiàn)‘NEXT’操作;之后從ROM_NO 寄存器中來讀出新一個ROM 碼,若前一次搜索到的是1Wire 上的最后一個器件,則返回一個無效標記FALSE, 并且把狀態(tài)設(shè)置成下一次調(diào)用搜索算法時將是‘FIRST’ 操作的狀態(tài)。putbyte((y%10)+0x30)。)。 puthex(temp_buff[0])。 puthex(temp_buff[2])。 puthex(temp_buff[4])。 puthex(temp_buff[6])。 putbyte(39。 //skip rom OWWriteByte(0x44)。 putbyte(lsi%100/10+39。)。知識固然得到了鞏固和提高,但我相信在實踐中的切身體會將會使我在以后的工作和學(xué)習(xí)中終身受用。如何在保證質(zhì)量和完成同等功能的情況下,把產(chǎn)品的成本降到最低并符合用戶的實際使用習(xí)慣?;鞠麥缌思Z食霉變事故,同時也節(jié)省了大量人力和物力,減輕了糧倉管理的工作強度,提高了糧庫管理效率,使糧食管理得到了安全可靠的保障。_nop_()。_nop_()。void OWWriteByte (uchar wr)。 //delayfloat gettemp(void)。 PCON=0。 case 4: //2400 TH1=0xe8。 break。 /* timer 1 run */// ES = 1。ls=((ui%10000)/1000+0x30)。}/*************************************//*發(fā)送一個字節(jié)的hex碼,分成兩個字節(jié)發(fā)。putbyte(hex_[ch])。 //delay 480 uS dr=R。}/*************************************************************Function:向18B20寫入一個位*parameter:*Return:*Modify:******************************************
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1