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

正文內(nèi)容

畢業(yè)設(shè)計畢業(yè)論文基于89c51單片機的電子溫度計(編輯修改稿)

2025-01-08 17:56 本頁面
 

【文章內(nèi)容簡介】 狀態(tài)字, “0”為寄生電源狀態(tài), “1”為外部電源狀態(tài)。 DS18B20 要求有嚴格的時序來保證數(shù)據(jù)的完整。在單線 DQ 上,存在復(fù)位脈沖、存在脈沖、寫“ 0”、寫“ 1”、讀“ 0”和讀“ 1”幾種信號類型。其中,除了存在脈沖之外,均由單片機產(chǎn)生。而數(shù)據(jù)位的讀和寫則是通過使用讀、寫時隙實現(xiàn)的。 ○ 1 寫時 隙 寫時間隙分為寫“ 0”和寫“ 1”,時序如圖 36。在寫數(shù)據(jù)時間隙的前 15us, 單片機把 總線 拉至 低電平, 接下來 芯片 對 總線 進行 數(shù)據(jù) 采樣 ,采樣時間 為 15~60us,在 采樣時間內(nèi) , 總線拉高則表示寫“ 1”,總線拉低則表示寫“ 0”。每發(fā)送 一位數(shù)據(jù), 都 至少 應(yīng)該有一個 15us 的低電平起始位,隨后的數(shù)據(jù)“ 0”或“ 1” 應(yīng)該在45us 內(nèi)完成。整個位的發(fā)送時間 應(yīng)該保持在 60~120us,否則不能保證 正常 的通信 。 圖 36 寫時隙示意圖 ○ 2 讀時隙 讀時間隙必須先由主機產(chǎn)生至少 1us 的低電平 來 表示讀時間的起始。隨后在總線被釋放后的 15us 中 , DS18B20 會發(fā)送內(nèi)部數(shù)據(jù)位,如果發(fā)現(xiàn)總線為高電平表示讀出 “1”,如果總線為低電平 , 則表示讀出數(shù)據(jù) “0”。每一位 在 讀取之前都由控制器加一個起始信號。如圖 37 所示,必須在讀間隙開始的 15us 內(nèi)讀取數(shù)據(jù)位才可以保證通信的正確。在通信時以 8 位 “0”或 “1”為一個字節(jié),字節(jié)的讀或?qū)?9 從 A7 到 A0。 圖 37 讀時隙示意圖 3 系統(tǒng)液晶顯示設(shè)計 LCD1602 簡介 本設(shè)計所用的液晶顯示屏為長沙太陽人電子有限公司的 1602 字符型液晶顯示器。該 字符型液晶模塊是用 57 點陣圖形來顯示字符 ,可以顯示 2 行 16 個字。在 LCD1602 液晶模塊內(nèi)部的字符發(fā)生存儲器 中, 已經(jīng)存儲了 160 個不同的點陣字符圖形,這些字符有:英文字母的大小寫、 日文假名、阿拉伯?dāng)?shù)字 、和 常用的符號 等,每一個字符都 對應(yīng) 一個固定的代碼,其代碼與標(biāo)準(zhǔn)的 ASCII 字符代碼一致。因此,我們只要寫入顯示字符的 ASCII 碼 即 可,這種標(biāo)準(zhǔn)化的設(shè)計給使 用帶來 了 很大的方便 。 液晶顯示器 LCD1602 管腳簡介 LCD1602 管腳分布 LCD1602 管腳分布如圖 31 所示。 圖 31 LCD1602 液晶顯示器管腳圖 10 LCD1602 管腳功能 LCD1602 管腳功能如表 31 所示。 表 31 LCD1602 管腳信號說明 編號 符號 引腳說明 1 VSS 電源 2 VDD 電源正極 3 VL 液晶顯示偏壓信號 4 RS 數(shù)據(jù) /命令選擇端( H/L) 5 R/W 讀 /寫選擇端 (H/L) 6 E 使能信號 7 D0 Data I/O 8 D1 Data I/O 9 D2 Data I/O 10 D3 Data I/O 11 D4 Data I/O 12 D5 Data I/O 13 D6 Data I/O 14 D7 Data I/O 15 BLA 背光源正極 16 BLK 背光源負極 LCD1602 工作原理 LCD1602 基本操作時序 :輸入 時 RS=L, RW=H, E=H 輸出 時 D0~D7=狀態(tài)字 :輸入時 RS=H, RW=H, E=H 輸出時 D0~D7=數(shù)據(jù) 令:輸入 時 RS=L, RW=L, D0~D7=指令碼, E=高脈沖 輸出 時沒有。 :輸入 時 RS=H, RW=L, D0~D7=數(shù)據(jù), E=高脈沖 輸出 時沒有。 11 LCD1602 狀態(tài)字說明 LCD1602 狀 態(tài) 字如表 32 所示。 表 32 LCD1602 狀態(tài)字說明 STA7 STA6 STA5 STA4 STA3 STA2 STA1 STA0 D7 D6 D5 D4 D3 D2 D1 D0 STA0~6 為當(dāng)前數(shù)據(jù)地址指針的數(shù)值; STA7 為讀寫使能操作,其為 1 時禁止,為 0 時允許。 LCD1602RAM 地址映射圖 控制器內(nèi)部帶有 808 位( 80 字節(jié))的 RAM 緩沖區(qū),對應(yīng)關(guān)系如圖 32 所示。 L C D 1 6 字 X 2 行0 0 0 1 0 2 0 3 0 4 0 5 0 6 0 7 0 8 0 9 0 A 0 B 0 C 0 D 0 E 0 F 1 0? ?2 74 0 4 1 4 2 4 3 4 4 4 5 4 6 4 7 4 8 4 9 4 A 4 B 4 C 4 D 4 E 4 F 5 0? ?6 7 圖 32 LCD1602RAM地址映射圖 12 LCD1602 指令說明 1 初始化設(shè)置 LCD1602開始 使用時 必須進行初始化 ,否則模塊無法正常顯示 ,下面介紹兩種初始化方法 。 ○ 1 利用內(nèi)部復(fù)位電路進行初始化 下面指令是在初始化過程中執(zhí)行的。 清屏 (DISPLAY CLEAR)。 功能設(shè)置 (FUNCTION SET)。 DL = 1: 8Bit 接口數(shù)據(jù) 。 N = 0: 1 行顯示 。 F = 0:57dot 字形 。 顯示開 /關(guān)控制 (DISPLAY ON/OFF CONTROL) D = 0: 顯示關(guān) 。 C = 0: 光標(biāo)關(guān) 。 B = 0: 消隱關(guān) 輸入方式設(shè)置 (ENTRY MODE SET ) I/D = 1:(增量 ): S = 0: 無移位 : ○ 2 軟件復(fù)位 如果電路電源不能滿足復(fù)位電路的要求 ,那么 就需要用 軟件來實現(xiàn) 初始化 ,其初始化 過程如下 : 八位接口初始化流程圖 如下 13 電 源 開V D D 上 升 到 4 . 5 V 后 等 待 1 5R S R / W D B 7 D B 6 D B 5 D B 4 D B 3 D B 2 D B 1 D B 00 0 0 0 1 1 X X X XR S R / W D B 7 D B 6 D B 5 D B 4 D B 3 D B 2 D B 1 D B 00 0 0 0 1 1 X X X XR S R / W D B 7 D B 6 D B 5 D B 4 D B 3 D B 2 D B 1 D B 00 0 0 0 1 1 X X X XR S R / W D B 7 D B 6 D B 5 D B 4 D B 3 D B 2 D B 1 D B 00 0 0 0 1 1 N F X XR S R / W D B 7 D B 6 D B 5 D B 4 D B 3 D B 2 D B 1 D B 00 0 0 0 0 0 1 0 X XR S R / W D B 7 D B 6 D B 5 D B 4 D B 3 D B 2 D B 1 D B 00 0 0 0 0 0 0 0 0 1R S R / W D B 7 D B 6 D B 5 D B 4 D B 3 D B 2 D B 1 D B 00 0 0 0 0 0 0 1 1 / 0 S初 始 化 結(jié) 束等 待 4 . 1 m s等 待 1 0 0 u s檢 查 忙 標(biāo) 志 或 延 時 4 0 u s檢 查 忙 標(biāo) 志 或 延 時 4 0 u s檢 查 忙 標(biāo) 志 或 延 時 4 0 u s檢 查 忙 標(biāo) 志 或 延 時 1 , 6 4檢 查 忙 標(biāo) 志 或 延 時 4 0 14 2 顯示模式設(shè)置 顯示模式設(shè)計指令及功能如表 33 所示。 表 33 顯示模式設(shè)置指令 指令碼 功能 0 0 1 1 1 0 0 0 設(shè)置 162 顯示, 57 點陣, 8 位數(shù)據(jù)接口 3 顯示開 /關(guān)及光標(biāo)設(shè)置 顯示模式設(shè)計指令及功能如表 34 所示。 表 34 顯示開 /關(guān)及光標(biāo)設(shè)置 指令碼 功能 0 0 0 0 1 D C B D 為開關(guān)顯示位,為 1 時開顯示,為 0 時關(guān)顯示 。 C 為光標(biāo)顯示位,為 1 時顯示光標(biāo),為 0時不顯示光標(biāo) 。 B 為光標(biāo)閃爍位,為 1 時光標(biāo) 閃爍,為 0時不顯示 。 0 0 0 0 0 1 N S N 為指針控制位,為 1 時,讀或者寫一個字符后地址指針自動加一,且光標(biāo)也加一。為 0 時,讀或者寫一個字符后地址指針自動減一,且光標(biāo)也相應(yīng)減一。 S 為移動位,為 1 時,每寫入一個字符,并且當(dāng) N 為 1 時整個顯示屏幕左移,為 0 時整個顯示屏幕右移。為 0 時,整個顯示屏幕不移動。 15 4 數(shù)據(jù)控制 控制器內(nèi)部設(shè)有一個 固定的 數(shù)據(jù)地址指針, 因此 用戶可通過它來訪問 RAM內(nèi)部的全部 80 字節(jié)。 數(shù)據(jù)指針指令及 其 功能如表 35 所示。 表 35 數(shù)據(jù)指針指令 指令碼 功能 80H+地 址碼( 027H, 4067H) 設(shè)置數(shù)據(jù)地址指針 其他指令設(shè)置如表 36 所示。 表 36 其他指令設(shè)置 指令碼 功能 01H 顯示清屏: 02H 顯示回車:數(shù)據(jù)指針清零 LCD1602 初始化過程(復(fù)位過程) 首先 延時 15ms,然后寫指令 38H,接著延時 5ms,再寫指令 38H, 重復(fù)前兩次操作一次 。 以后每次寫指令,讀數(shù)據(jù),寫數(shù)據(jù)之前都需要檢測忙信號 。 然后寫指令 38H,設(shè)置顯示模式,然后寫指令 08H,這是關(guān)閉顯示 。 接下來寫指令06H,顯示清屏,再寫指令 06H,顯示移動光標(biāo)的設(shè)置,最后寫指令 0CH,打開顯示和光標(biāo)設(shè)置。 4 系統(tǒng)軟件設(shè)計 主程序 構(gòu)成及功能 系統(tǒng)程序主要包括 報警子程序、顯示溫度子程序、外部中斷 0 服務(wù)子程序、延時子程序、外部中斷 1 服務(wù)子程序、主程序等。 主程序的功能為: 主程序的主要功能是負責(zé)溫度的實時顯示、讀出并處理DS18B20 的測量的當(dāng)前溫度值, 每 1s 進行一次 溫度測量。 當(dāng)溫度高于上線或者 16 低于下線的時候, 通過發(fā)光二極管的閃爍和蜂鳴器的鳴響來報警 。 主程序流程圖 DS18B20 的軟件設(shè)計 DS18B20 器件要求采用嚴格的通信協(xié)議,以保證數(shù)據(jù)的完整性。該協(xié)議定義了 四 種信號類型:復(fù)位脈沖 ; 應(yīng)答脈沖時隙;寫 0、 寫 1 時隙;讀 0、 讀 1 時隙。 單片機 與 DS18B20 的通信,是通過操作時隙 在 單總線上 完成 數(shù)據(jù)傳輸。發(fā)送所有的命令和數(shù)據(jù)時,都是低位 字節(jié) 在前,高位 字節(jié) 在后。 的初始化 先將數(shù)據(jù)線 位 置 為 高電平 “ 1”,然后將 數(shù)據(jù)線 位 拉到低電平 “ 0”, 延時750us 后,再將 數(shù)據(jù)線 位 拉到高電 平“ 1” 。 此時 若 CPU 讀到了數(shù)據(jù)線上的低電平 “ 0” 后,還要做延時,其延時的時間從發(fā)出的高電平算起最少要 480us。 最后 將數(shù)據(jù)線 位 再次拉到高電平 “ 1” 后結(jié)束。 DS18B20 初始化程序為: void Init_DS18B20(void) 開始顯示當(dāng)前溫度溫度大于上限 ?紅燈亮 , 蜂鳴器響 溫度小于下限 ?藍燈亮 , 蜂鳴器響結(jié)束YNYN 17 { unsigned char x=0。 DQ = 1。 //DQ 復(fù)位 Delay_DS18B20(8)。 //稍做延時
點擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1