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

正文內(nèi)容

江蘇省徐州機(jī)電工程高等職業(yè)學(xué)校畢業(yè)論文(編輯修改稿)

2024-12-10 08:52 本頁面
 

【文章內(nèi)容簡介】 3 系統(tǒng)軟件設(shè)計(jì) 主控程序設(shè)計(jì) 通過對(duì)系統(tǒng)工作原理的了解,我們可以大致知道系統(tǒng)軟件運(yùn)行工作的流程圖如下: 圖 系統(tǒng)運(yùn)行流程圖 當(dāng)接通電源開始工作后,單片機(jī)中的程序開始運(yùn)行,將對(duì) DS18B20 進(jìn)行初始化,以便單片機(jī)芯片和 DS18B20 達(dá)成通信協(xié)議。完成初始化后,由于本系統(tǒng)只有一個(gè)測溫元件,單片機(jī)會(huì)向其發(fā)出跳過 ROM 指令,接下來便可向其發(fā)送操作指令,設(shè)定溫度上下限,啟動(dòng)測溫程序。測溫過程完成后,發(fā)出溫度轉(zhuǎn)換指令,從而便可將溫度轉(zhuǎn)化成數(shù)字模 式進(jìn)行顯示讀取。 溫度信息的采集 通過 DS18B20單線總線的所有執(zhí)行處理都從一個(gè)初始化序列開始。初始化序列包括一個(gè)由總線控制器發(fā)出的復(fù)位脈沖和隨后由從機(jī)發(fā)出的存在脈沖: 復(fù)位:首先我們必須對(duì) DS18B20芯片進(jìn)行復(fù)位,復(fù)位就是由控制器(單片機(jī))給 DS18B20單總線至少 480uS的低電平信號(hào)。當(dāng) 18B20接到此復(fù)位信號(hào)后則會(huì)在 15~60uS后回發(fā)一個(gè)芯片的存在脈沖。 存在脈沖:在復(fù)位電平結(jié)束之后,控制器應(yīng)該將數(shù)據(jù)單總線拉高,以便于在 15~60uS后接收存在脈沖,存在脈沖為一個(gè) 60~240uS的低電平信號(hào)。至此 ,通信雙方已經(jīng)達(dá)成了基本的協(xié)議,接下來將會(huì)是控制器與 18B20間的數(shù)據(jù)通信。 控制器發(fā)送 ROM指令:雙方打完了招呼之后最要將進(jìn)行交流了, ROM指令共有 5條,每一個(gè)工作周期只能發(fā)一條, ROM指令分別是讀 ROM數(shù)據(jù)、指定匹配芯片、跳躍 ROM、芯片搜索、報(bào)警芯片搜索。各自功能如下: Read ROM(讀 ROM) [33H] (方括號(hào)中的為 16進(jìn)制的命令字) 江蘇省徐州機(jī)電工程高等職業(yè)學(xué)校 2020 屆畢業(yè)設(shè)計(jì) 第 9 頁 這個(gè)命令允許總線控制器讀到 DS18B20的 64位 ROM。只有當(dāng)總線上只存在一個(gè) DS18B20的時(shí)候才可以使用此指令。 Match ROM(指定 匹配芯片) [55H] 這個(gè)指令后面緊跟著由控制器發(fā)出了 64位序列號(hào),當(dāng)總線 上有多只 DS18B20時(shí),只有與控制發(fā)出的序列號(hào)相同的芯片才能做出反應(yīng),其它芯片將等待下一次復(fù)位。這條指令適合單芯片和多芯片掛接。 Skip ROM(跳躍 ROM指令) [CCH] 這條指令使芯片不對(duì) ROM編碼做出反應(yīng),在單總線的情況之下,為了節(jié)省時(shí)間則可以選用此指令。如果在多芯片掛接時(shí)使用此指令將會(huì)出現(xiàn)數(shù)據(jù)沖突,導(dǎo)致錯(cuò)誤出現(xiàn)。 Search ROM(搜索芯片) [F0H] 在芯片初始化后,搜索指令允許總線上掛接 多芯片時(shí)用排除法識(shí)別所有器件的 64位 ROM。 Alarm Search(報(bào)警芯片搜索) [ECH] 在多芯片掛接的情況下,報(bào)警芯片搜索指令只對(duì)附合溫度高于 TH或小于 TL報(bào)警條件的芯片做出反應(yīng)。只要芯片不掉電,報(bào)警狀態(tài)將被保持,直到再一次測得溫度值達(dá)不到報(bào)警條件為止。 ROM指令為 8位長度,功能是對(duì)片內(nèi)的 64位光刻 ROM進(jìn)行操作。其主要目的是為了分辨一條總線上掛接的多個(gè)器件并作處理。誠然,單總線上可以同時(shí)掛接多個(gè)器件,并通過每個(gè)器件上所獨(dú)有的 ID號(hào)來區(qū)別,一般只掛接單個(gè) 18B20芯片時(shí)可以跳 過 ROM指令(注意:此處指的跳過 ROM指令并非不發(fā)送 ROM指令,而是用特有的一條 “ 跳過指令 ” )。 控制器發(fā)送存儲(chǔ)器操作指令:在 ROM指令發(fā)送給 18B20之后,緊接著(不間斷)就是發(fā)送存儲(chǔ)器操作指令了。操作指令同樣為 8位,共 6條,存儲(chǔ)器操作指令分別是寫 RAM數(shù)據(jù)、讀 RAM數(shù)據(jù)、將 RAM數(shù)據(jù)復(fù)制到 EEPROM、溫度轉(zhuǎn)換、將 EEPROM中的報(bào)警值復(fù)制到 RAM、工作方式切換。 Write Scratchpad (向 RAM中寫數(shù)據(jù)) [4EH]:這是向 RAM中寫入數(shù)據(jù)的指令,隨后寫入的兩個(gè)字節(jié)的數(shù)據(jù)將 會(huì)被存到地址 2(報(bào)警 RAM之 TH)和地址 3(報(bào)警 RAM之 TL)。寫入過程中可以用復(fù)位信號(hào)中止寫入。 Read Scratchpad (從 RAM中讀數(shù)據(jù)) [BEH]:此指令將從 RAM中讀數(shù)據(jù),讀地址從地址 0開始,一直可以讀到地址 9,完成整個(gè) RAM數(shù)據(jù)的讀出。芯片允許在讀過程中用復(fù)位信號(hào)中止讀取,即可以不讀后面不需要的字節(jié)以減少讀取時(shí)間。 Copy Scratchpad (將 RAM數(shù)據(jù)復(fù)制到 EEPROM中) [48H]:此指令將 RAM中的數(shù)據(jù)存入EEPROM中,以使數(shù)據(jù)掉電不丟失。此后由于芯片 忙于 EEPROM儲(chǔ)存處理,當(dāng)控制器發(fā)一個(gè)讀時(shí)間隙時(shí),總線上輸出 “0” ,當(dāng)儲(chǔ)存工作完成時(shí),總線將輸出 “1” 。在寄生工作方式時(shí)必須在發(fā)出此指令后立刻超用強(qiáng)上拉并至少保持 10MS,來維持芯片工作。 Convert T(溫度轉(zhuǎn)換) [44H]:收到此指令后芯片將進(jìn)行一次溫度轉(zhuǎn)換,將轉(zhuǎn)換的溫度值放入 RAM的第 2地址。此后由于芯片忙于溫度轉(zhuǎn)換處理,當(dāng)控制器發(fā)一個(gè)讀時(shí)間隙時(shí),總線上輸出 “0” ,當(dāng)儲(chǔ)存工作完成時(shí),總線將輸出 “1” 。在寄生工作方式時(shí)必須在發(fā)出此指令后立刻超用強(qiáng)上拉并至少保持 500MS,來維持芯片工作 。 Recall EEPROM(將 EEPROM中的報(bào)警值復(fù)制到 RAM) [B8H]:此指令將 EEPROM中的報(bào)警值復(fù)制到 RAM中的第 4個(gè)字節(jié)里。由于芯片忙于復(fù)制處理,當(dāng)控制器發(fā)一個(gè)讀時(shí)間隙時(shí),總線上輸出 “0” ,當(dāng)儲(chǔ)存工作完成時(shí),總線將輸出 “1” 。另外,此指令將在芯片上電復(fù)位時(shí)將被自動(dòng)執(zhí)行。這樣 RAM中的兩個(gè)報(bào)警字節(jié)位將始終為 EEPROM中數(shù)據(jù)的鏡像。 Read Power Supply(工作方式切換) [B4H]:此指令發(fā)出后發(fā)出讀時(shí)間隙,芯片會(huì)返回它的電源狀態(tài)字, “0” 為寄生電源狀態(tài), “1” 為外部電源狀態(tài)。 存儲(chǔ)器操作指令的功能是命令 18B20作什么樣的工作,是芯片控制的關(guān)鍵。 執(zhí)行或數(shù)據(jù)讀寫:一個(gè)存儲(chǔ)器操作指令結(jié)束后則將進(jìn)行指令執(zhí)行或數(shù)據(jù)的讀寫,這 江蘇省徐州機(jī)電工程高等職業(yè)學(xué)校 2020 屆畢業(yè)設(shè)計(jì) 第 10 頁 個(gè)操作要視存儲(chǔ)器操作指令而定。 DS18B20需要嚴(yán)格的協(xié)議以確保數(shù)據(jù)的完整性。協(xié)議包括幾種單線信號(hào)類型:復(fù)位脈沖、存在脈沖、寫 0、寫 1 、讀 0和讀 1。所有這些信號(hào),除存在脈沖外,都是由總線控制器發(fā)出的。和 DS18B20間的任何通訊都需要以初始化序列開始。一個(gè)復(fù)位脈沖跟著一個(gè)存在脈沖表明 DS18B20已經(jīng)準(zhǔn)備好發(fā)送 和接收數(shù)據(jù)(適當(dāng)?shù)?ROM命令和存儲(chǔ)器操作命令)。 DS18B20的復(fù)位時(shí)序 圖 DS18B20 的復(fù)位時(shí)序圖 DS18B20 的讀時(shí)序 對(duì)于 DS18B20 的讀時(shí)序分為讀 0時(shí)序和讀 1 時(shí)序兩個(gè)過程。對(duì)于 DS18B20 的讀時(shí)隙是從主機(jī)把單總線拉低之后,在 15us 之內(nèi)就得釋放單總線,以讓 DS18B20 把數(shù)據(jù)傳輸?shù)絾慰偩€上。 DS18B20 在完成一個(gè)讀時(shí)序過程,至少需要 60us 才能完成。 圖 DS18B20 的讀時(shí)序 圖 DS18B20 的寫時(shí)序: 對(duì)于 DS18B20 的寫時(shí)序仍然分為寫 0 時(shí)序和寫 1 時(shí)序兩個(gè)過程。對(duì)于 DS18B20 寫 0時(shí)序和寫 1時(shí)序的要求不同,當(dāng)要寫 0時(shí)序時(shí),單總線要被拉低至少 60us,保證 DS18B20 能夠在 15us 到 45us 之間能夠正確地采樣 IO 總線上的“ 0”電平,當(dāng)要寫 1時(shí)序時(shí),單總線被拉低之后,在 15us 之內(nèi)就得釋放單總線。 江蘇省徐州機(jī)電工程高等職業(yè)學(xué)校 2020 屆畢業(yè)設(shè)計(jì) 第 11 頁 圖 DS18B20的寫時(shí)序圖 [13] 溫度的顯示控制 當(dāng)所測溫度從 DS18B20輸送到單片機(jī)上之后,下一步就是要將 其在液晶顯示器上顯示出來。 首先應(yīng)該對(duì)液晶顯示器 SMC1602A進(jìn)行初始化設(shè)置,設(shè)置指令如下: 表 SMC1602A的初始化設(shè)置指令表 指令碼 功能 0 0 1 1 1 0 0 0 設(shè)置 16 2 顯示 ,8 位數(shù)據(jù)接口 0 0 0 0 1 D C B D=1 開顯示 。 D=0 關(guān)顯示 C=1 顯示光標(biāo) 。 C=0 不顯示光標(biāo) B=1 光標(biāo)閃爍 。 B=0 光標(biāo)不顯示 0 0 0 0 0 1 N S N=1 當(dāng)讀或?qū)懸粋€(gè)字符后地址指針加一 ,且 光標(biāo)加一 N=0 當(dāng)讀或?qū)懸粋€(gè)字符后地址指針減一 ,且 光標(biāo)減一 S=1 當(dāng)寫一個(gè)字符 ,整屏顯示左移 (N=1)或 右移 (N=0),以得到光標(biāo)不移動(dòng)而屏幕 移動(dòng)的效果 S=0 當(dāng)寫一個(gè)字符 ,整屏顯示不移動(dòng) 江蘇省徐州機(jī)電工程高等職業(yè)學(xué)校 2020 屆畢業(yè)設(shè)計(jì) 第 12 頁 然后進(jìn)行數(shù)據(jù)控制,控制器內(nèi)部設(shè)有一個(gè)數(shù)據(jù)地址指針,可以通過它們來訪問內(nèi)部的全部 80字節(jié) RAM,其指針設(shè)置為: 表 SMC1602A的指針設(shè)置表 指令碼 功能 80H+地址碼 (0H27H,40H67H) 設(shè)置數(shù)據(jù)地址指針 一些其他設(shè)置如下: 指令碼 功能 01H 顯示清屏 : 02H 顯示回車 : 數(shù)據(jù)指針清零 其初始化過程 為 :延時(shí) 15ms 寫指令 38H(不檢測忙信號(hào) ) 延時(shí) 5ms 寫指令 38H(不檢測 忙信號(hào) ) 延時(shí) 5ms 寫指令 38H(不檢測忙信號(hào) ) (每次寫指令 讀 /寫數(shù)據(jù)操作之前均需檢測忙信號(hào) ) 寫指令 38H: 顯示模式設(shè)置 寫指令 08H: 顯示關(guān)閉 寫指令 01H: 顯示清屏 寫指令 06H: 顯示光標(biāo)移動(dòng)設(shè)置 寫指令 0CH: 顯示開 及光標(biāo)設(shè)置 而且要使數(shù)據(jù)在液晶顯示器上顯示必須要按
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1