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

正文內(nèi)容

基于51單片機(jī)的家用電熱水器的設(shè)計(jì)畢業(yè)設(shè)計(jì)(文件)

 

【正文】 主要由中央處理器、內(nèi)存、輸入/輸出設(shè)備組成,它就好像是一臺(tái)小型電腦,它能夠執(zhí)行人們對(duì)它編寫(xiě)的程序,從而發(fā)出各種不同的控制命令,與外部電路結(jié)合后,便可以完成各種各樣的功能。市場(chǎng)上傳統(tǒng)的機(jī)械式電熱水器控制精度低、可靠性差,甚至存在一定的危險(xiǎn)隱患。 TX1C 單片機(jī)實(shí)驗(yàn)開(kāi)發(fā)板簡(jiǎn)介XT1C 單片機(jī)開(kāi)發(fā)板是哈爾濱市天祥電子綜合多年開(kāi)發(fā)經(jīng)驗(yàn),在原 TX1B 基礎(chǔ)上,經(jīng)過(guò)精心設(shè)計(jì)開(kāi)發(fā)出的多功能 51 單片機(jī)開(kāi)發(fā)平臺(tái)。本文將使用 TX1C 開(kāi)發(fā)板完成數(shù)字化電熱水器的設(shè)計(jì)。單片機(jī)的 P0 口連接 74HC573 鎖存器,這樣可以節(jié)約單片機(jī)端口,即可多次操作 P0 口,使其既能控制數(shù)碼管的片選,又能控制數(shù)碼管的位選,從而節(jié)省的單片機(jī)的外部接口,擴(kuò)展了功能。加熱模塊見(jiàn)圖 所示,MOC3041 芯片的 2 號(hào)接口連接單片機(jī)的 P2^2 口。使用 LED 顯示器時(shí),要注意區(qū)分這兩種不同的接法。本設(shè)計(jì)采用的 TXC1 實(shí)驗(yàn)板是采用共陰 LED 顯示器,根據(jù)電路連接圖 顯示十六進(jìn)制數(shù)的編碼見(jiàn)表 所示。段選在程序中由 duan 表示,單片機(jī)上是P2^6 端口,與位選相同,操作時(shí)使 P2^6 呈現(xiàn)高電平,這時(shí) P0 的八個(gè)端口對(duì)數(shù)碼管的操作決定了亮的幾個(gè)數(shù)碼管顯示什么數(shù)字,P0 操作完成后使 P2^6 呈現(xiàn)低電平,這樣段選就已鎖定。可以直接設(shè)置數(shù)碼管顯示各數(shù)字的十六進(jìn)制,即 P0 口應(yīng)賦的十六進(jìn)制,以便操作。P2^7 賦低電平時(shí), 74HC573 芯片將記住最近一次 L 端口是高電平時(shí)芯片輸入端的 8 位,并將其輸出,當(dāng)輸入端變化時(shí),輸出端不變化。wei=1。P0=0x00。 6delay(1)。要注意的是位選(程序中的 wei 變量) ,位選是低電平時(shí)選擇該數(shù)碼管亮。S20 代表確認(rèn)數(shù)字,按下后即可確認(rèn)要輸入數(shù)字的某一位。依次循環(huán)掃描三行即可時(shí)時(shí)檢測(cè)是否有鍵按下。具體程序如下:while(temp!=0xf0){delay(5)。0xf0。獨(dú) 特 的 單 線 接 口 方 式 , DS18B20 在 與 微 處 理 器 連 接 時(shí) 僅 需 要 一 條 口 線 即 可 實(shí) 現(xiàn) 微 處 理 器 與DS18B20 的 雙 向 通 訊 。 在 使 用 中 不 需 要任 何 外 圍 元 件 , 測(cè) 量 結(jié) 果 以 9~12 位 數(shù) 字 量 方 式 串 行 傳 送 。 DS18B20 的 外 形 及 管 腳 排 列 見(jiàn) 圖 所 示 。DS18B20 的 的 初 始 化 見(jiàn) 圖 所 示 。當(dāng) 需 要 傳 送 “0”時(shí) , 單 片 機(jī) 應(yīng) 該 給 DS18B20 芯 片 的 DQ 接 口 賦 低 電 平 , 并 且 持 續(xù) 拉 低 最 少60 微 妙 , 然 后 將 DQ 釋 放 為 高 電 平 , 再 延 時(shí) 約 15 秒 即 可 。圖 DS18B20 的 讀 操 作 時(shí) 序 圖 DS18B20 的指令與格式 DS18B20 溫 度 格 式 圖 見(jiàn) 圖 所 示 。 配 置 寄 存 器 , 該 字 節(jié) 各 位 的 意 義 見(jiàn) 表 所 示 。 對(duì) 應(yīng) 的 溫 度 計(jì) 算 : 當(dāng) 符 號(hào) 位 S=0 時(shí) , 直 接 將二 進(jìn) 制 位 轉(zhuǎn) 換 為 十 進(jìn) 制 ; 當(dāng) S=1 時(shí) , 先 將 補(bǔ) 碼 變 為 原 碼 , 再 計(jì) 算 十 進(jìn) 制 值 。 ROM 指 令 表 見(jiàn) 表 所 示 , RAM 指 令 表 見(jiàn) 表 所 示 。跳 過(guò) ROM 0CCH 忽略 64 位 ROM 地址,直接向 DS1820 發(fā)溫度變換命令。結(jié)果存入內(nèi)部 9 字節(jié) RAM 中。讀供電方式 0B4H 讀 DS1820 的供電模式。     獨(dú) 特 的 寄 生 電 源 方 式 有 三 個(gè) 好 處 :     1. 進(jìn) 行 遠(yuǎn) 距 離 測(cè) 溫 時(shí) , 無(wú) 需 本 地 電 源 ;    2. 可 以 在 沒(méi) 有 常 規(guī) 電 源 的 條 件 下 讀 取 ROM;    3. 電 路 更 加 簡(jiǎn) 潔 , 僅 用 一 根 I/O 口 實(shí) 現(xiàn) 測(cè) 溫 。     圖 DS18B20 寄 生 電 源 供 電 方 式  DS18B20 改進(jìn)的寄生電源供電方式DS18B20 寄 生 電 源 強(qiáng) 上 拉 供 電 方 式 電 路 圖 , 改 進(jìn) 的 寄 生 電 源 供 電 方 式 見(jiàn) 圖 所 示 , 為了 使 DS18B20 在 動(dòng) 態(tài) 轉(zhuǎn) 換 周 期 中 獲 得 足 夠 的 電 流 供 應(yīng) , 當(dāng) 進(jìn) 行 溫 度 轉(zhuǎn) 換 或 拷 貝 到 E2 存 儲(chǔ) 器 操作 時(shí) , 用 MOSFET 把 I/O 線 直 接 拉 到 VCC 就 可 提 供 足 夠 的 電 流 , 在 發(fā) 出 任 何 涉 及 到 拷 貝 到 E2 15存 儲(chǔ) 器 或 啟 動(dòng) 溫 度 轉(zhuǎn) 換 的 指 令 后 , 必 須 在 最 多 10μS 內(nèi) 把 I/O 線 轉(zhuǎn) 換 到 強(qiáng) 上 拉 狀 態(tài) 。 DS18B20 傳 感 器 , 組 成 多 點(diǎn) 測(cè) 溫 系 統(tǒng) 。 DS18B20 寄生電源供電方式外 部 供 電 方 式 的 多 點(diǎn) 測(cè) 溫 電 路 圖 見(jiàn) 圖 所 示 , 外 部 電 源 供 電 方 式 是 DS18B20 最 佳 的 工作 方 式 , 工 作 穩(wěn) 定 可 靠 , 抗 干 擾 能 力 強(qiáng) , 而 且 電 路 也 比 較 簡(jiǎn) 單 , 可 以 開(kāi) 發(fā) 出 穩(wěn) 定 可 靠 的 多 點(diǎn) 溫 度監(jiān) 控 系 統(tǒng) 。P3=0xfd。while(temp!=0xf0){temp=P3。break。break。//****0000}}在這里使用了_crol_函數(shù),所以頭文件中要增加include,這里包括去抖和松手檢測(cè)。void dsstart(){ unsigned int i。 ds=1。如以下子函數(shù)。 //檢測(cè)到應(yīng)答脈沖 i=4。bit readbit()//讀取一個(gè) bit{unsigned int i。 //延時(shí)約 8us, 符合協(xié)議要求至少保持 1usds=1。 i=8。uchar date,a。date=(a7)|(date1)。用于操控 DS18B20。b=0。0x01。ds=1。}else//0{ds=0。ds=1?,F(xiàn)在只要調(diào)用這些函數(shù),來(lái)操控 DS18B20 使其能夠按協(xié)議規(guī)定將溫度數(shù)據(jù)傳送給單片機(jī)。writeor(0xcc)。int temp。delay(1)。geta=readbyte()。//左移 8 位temp=temp|geta。}以上兩個(gè)程序流程為,changetemp()子函數(shù)中先初始化 DS18B20,芯片應(yīng)答以后寫(xiě)入兩個(gè)以字節(jié)為一個(gè)單位的命令,0xcc 與 0x44 它們的作用分別為跳過(guò)讀序號(hào)列號(hào)的操作和啟動(dòng)溫度轉(zhuǎn)換。temp=8 的意義是 temp=temp8,所以 temp 的低 8 位將變成temp 中的高 8 位,而 C 語(yǔ)言規(guī)定低 8 移位操作后不足的位數(shù)由 0 補(bǔ)上,這時(shí)的目的就是要將 geta 中的數(shù)據(jù)賦予 temp 中的低 8 位,只需要將 temp 按位與上 geta,geta 中位為 1 與上 temp 中低 8 位中的 0就是 1,而 geta 中位為 0 與 temp 中低 8 位的 0 相與就是 0,這樣就將 geta 中的值賦給了 temp 的低 8位。 22TH0=(6553646000)/256。TR0=1。bbb=0。while(1){ uint a。b=scanff()。主函數(shù)首先將所用到的全局變量賦值,然后進(jìn)入大循環(huán)首先進(jìn)入溫度轉(zhuǎn)換函數(shù),使 DS18B20 啟動(dòng)溫度轉(zhuǎn)換,然后獲取溫度將兩個(gè)字節(jié)的數(shù)值賦給 a,而將輸入的溫度賦予 b ,再由 display(a,b)子函數(shù)輸出所有的值。dda=abs(a)。num6=dda%10。dis[3]=num6。(dis[1]==0)) 23dis[1]=20。for(i=1。temp=_crol_(temp,1)。duan=1。}duan=1。amp。dis[2]=num2。srtemp=0xfe。wei=1。P0=0x00。delay(1)。}break。dis[3]=num3。for(i=1。P0=srtemp。duan=1。duan=1。break。num3=b。for(i=1。P0=srtemp。duan=1。duan=1。break。if(dis[2]==21)dis[2]++。i4。//wein 打開(kāi)后 是低電平亮wei=0。P0=table[dis[i]]。P0=0x00。break。在這里用到了 abs(a)和_crol_所以要在再頭文件中寫(xiě)到include 和include ,dda用于防止 a 為負(fù)值的時(shí)候后面的操作不好完成。第二:正常的十幾度或者幾十度。amp。else{if(dis[0]!=0)//超過(guò) 100 前面加小數(shù)點(diǎn) dis[1]=dis[1]+10。ccc 的功能才會(huì)解除。這樣是防止前一個(gè)數(shù)字的輸入完成以后,后一個(gè)數(shù)字還未輸入時(shí),顯示后一個(gè)數(shù)字的數(shù)碼管默認(rèn)不在顯示下劃線而是前一個(gè)確認(rèn)的數(shù)字,為了防止這種情況才有了 aaa 的以上操作。zd++。amp。amp。}else{jiar=1。如果后者大于前者,則 P2^2 還是高電平并不引起加熱。(3)按設(shè)定溫度加熱到相應(yīng)水溫,并具有保溫功能。單片機(jī) P1^1 接口會(huì)出現(xiàn)低電平,從而使用第二個(gè)發(fā)光二極管點(diǎn)亮。 29第 5 章 總結(jié)本文對(duì)使用 89C51 單片機(jī)完成數(shù)字化熱水器的設(shè)計(jì)進(jìn)行完整的闡述。希望在以后的學(xué)習(xí)中找到解決此問(wèn)題的方法。在這里我表示衷心的感謝。希望隨著科技的進(jìn)步,數(shù)字化家電能能更加完善,更好的造福人類。(3)本文闡述了通過(guò)種中斷子函數(shù)完成 30ms 一次的加熱檢測(cè)的方法 (4)本文詳細(xì)闡述了溫度采集芯片的詳細(xì)參數(shù)、操作方法,與單片機(jī)的硬件連接、軟件如何進(jìn)行操控等設(shè)計(jì)細(xì)節(jié)。溫度輸入完成并判定加熱。輸入完成后,每過(guò) 30ms 會(huì)將輸入溫度與單片機(jī)采集到的環(huán)境溫度進(jìn)行對(duì)比,如果輸入溫度高于或等于采集到得溫度則單片機(jī)觸發(fā) MOC3041開(kāi)始加熱,如果輸入溫度低于采集到得溫度則不加熱或停止加熱。 28第 4 章 功能簡(jiǎn)介 智能熱水器具的功能(1)使用高清晰度數(shù)碼管實(shí)時(shí)顯示水溫,范圍 0 ~ 102 ℃ 。jiar=0。P1=0xfd。amp。a=num1*100+num2*10+num3。TH0=(6553646000)/256。這里基本上就是完成給定了數(shù)字,通過(guò)數(shù)字值為多少來(lái)設(shè)定數(shù)碼管顯示的數(shù)字,在第三章中已經(jīng)提到。第二種情況是正常使用的情況,直接將 dis[1] 、dis[2] 、 dis[3]寫(xiě)出來(lái)即可。//如果百位和十位都為 0 不顯示上面這一句話,就是地三種情況。第四溫度為負(fù)值。dis[4]是用來(lái)方便 for 語(yǔ)句的賦值操作。break。}aaa=0。delay(1)。 26P0=0x00。wei=1。srtemp=0xfe。dis[2]=num2。duan=0。duan=0。//srtemp=_crol_(srtemp,1)。i++){P0=0xff。elsedis[2]+=10。 25dis[2]=num2。duan=0。duan=0。//srtemp=_crol_(srtemp,1)。i++){P0=0xff。elsedis[2]+=10。dis[2]=b。P0=0x00。P0=table[dis[i]]。//wein 打開(kāi)后 是低電平亮 24wei=0。i4。if(dis[2]==21)dis[2]++。swit
點(diǎn)擊復(fù)制文檔內(nèi)容
醫(yī)療健康相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1