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

正文內容

精品--太陽能熱水器智能控制器的設計(編輯修改稿)

2025-01-11 00:51 本頁面
 

【文章內容簡介】 存器中 的數(shù)值即為所測溫度。圖中的斜率累加器用于補償和修正測溫過程中的非線性,其輸出用于修正計數(shù)器 1的預置值。 14 圖 DS18B20測溫原理圖 DS18B20 與單片機的接口電路設計 圖 DS18B20與單片機接口電路圖 如 圖采用 外接 電源供電方式 ,在外接電源供電方式下 , DS18B20 從單線信號線上 15 吸取能量 ,在信號線 DQ處于高電平期間把能量儲存在內部電容里,在信號線處于低電平期間消耗電容上的電能來繼續(xù)工作,直到高電平到來 再給寄生電源(電容)充電。獨特的寄生電源方式有三個好處,分別是在進行遠距離測溫時,無需本地電源;可以在沒有常規(guī)電源的條件下讀取 ROM;電路更加簡潔,僅用一根 I/O 口實現(xiàn)測溫。要想使 DS18B20 進行精確的溫度轉換, I/O 線必須保證在溫度轉換期間獲得足夠的能量。該電路只適應于單一溫度傳感器測溫情況下,不適宜于電池供電系統(tǒng)中工作,并且工作電源 VCC 必須保證在 5V,當電源電壓下降時,寄生電源能夠汲取的能量也降低,會使溫度誤差變大。單片機的 口接 DQ,當 DS18B20 處于寫存儲器操作和溫度 A/D轉 換操作時,總 線上必須有強的上拉,上拉開啟時間最大為 10us。由于單線制只有一根線,因此發(fā)送接收口必須是三態(tài)的。主機控制 DS18B20 完成溫度轉換必須經過 3個步驟:初始化、 ROM 操作指令、存儲器操作指令。 本次 單片機系統(tǒng)所用的晶振頻率為 MHz,根據 DS18B20 的初始化時序、寫時序和讀時序,分別編寫 3 個子程序:初始化子程序 、 寫(命令或數(shù)據)子程序 、 讀數(shù)據子程序,所有的數(shù)據讀寫均由最低位開始 。 注意事項 : DS1820 雖然具有測溫系統(tǒng)簡單、測溫精度高、連接方便、占用 P 口線 較 少等優(yōu)點,但在實際應用中也應注意以下 幾 個 方面的問題: ? 較小的硬件開銷需要相對復雜的軟件進行補償,由于 DS1820 與微處理器間采用串行數(shù)據傳送,因此,在對 DS1820 進行讀寫編程時,必須嚴格的保證讀寫時序,否則將無法讀取測溫結果。在使用 PL/M、 C等高級語言進行系統(tǒng)程序設計時,對 DS1820 操作部分最好采用匯編語言實現(xiàn)。 ? 在 DS1820 的有關資料中均未提及單總線上所掛 DS1820 數(shù)量問題,容易使人誤認為可以掛任意多個 DS1820,在實際應用中并非如此。當單總線上所掛 DS1820超過 8個時,就需要解決微處理器的總線驅動問題,這一點在進行多點測溫系 統(tǒng)設計時要加以注意。 ? 在 DS1820 測溫程序設計中,向 DS1820 發(fā)出溫度轉換命令后,程序總要等待DS1820 的返回信號,一旦某個 DS1820 接觸不好或斷線,當程序讀該 DS1820 時,將沒有返回信號,程序進入死循環(huán)。這一點在進行 DS1820 硬件連接和軟件設計時也要給予一定的重視。測溫電纜線建議采用屏蔽 4 芯雙絞線,其中一對線接地線與信號線,另一組接 VCC 和地線,屏蔽層在源端單點接地。溫度傳感器 DS18B20 16 匯編程序 , 采用器件默認的 12 位轉化 ,最大轉化時間 750 毫 秒 ; 可以將檢測到的溫度直接顯示到 STC89C52 開發(fā)實驗板的兩個數(shù)碼管上 ; 顯示溫度 00 到 99 度 ,很準確無需校正 。 ? 連接 DS1820 的總線電纜是有長度限制的。試驗中,當采用普通信號電纜傳輸長度超過 50m 時,讀取的測溫數(shù)據將發(fā)生錯誤。當將總線電纜改為雙絞線帶屏蔽電纜時,正常通訊距離可達 150m,當采用每米絞合次數(shù)更多的雙絞線帶屏蔽電纜時,正常通訊距離進一步加長。這種情況主要是由總線分布電容使信號波形產生畸變造成的。因此,在用 DS1820 進行長距離測溫系統(tǒng)設計時要充分考慮總線分布電容和阻抗匹配問題。 報警電路模塊 方案一: 9011 的基極為高電平且兩 個三極管均導通,驅動揚聲器工作,即報警。否則輸出低電平,不報警。報警電路如圖所示: R23KL S 1S P E A K E RV C CQ190 1 1 圖 報警電路圖 方案二: 17 該方案中采用簡單的放大電路,信號通過 7407驅動器后即送給蜂鳴器,且報警聲音響亮,適合于報警,所以也實現(xiàn)了設計要求。報警電路如圖所示。 圖 二 兩種方案都各有優(yōu)勢,此次設計采用方案一。 繼電器控制加熱電路 圖 繼電器加熱電路 加熱 控制電路由單片機 P1口的 控制。 通過單片機送給 加熱 執(zhí)行機構 進行加熱 ,電路驅動電磁鎖吸合 與打開 ,從而達到 加熱 的目的 。 光耦可以隔離輸入量與輸出量,在本設計中起到隔離單片機與電磁繼電器的作用。當單片機發(fā)出開鎖信號時, 口為低電平,此時光耦內部的的發(fā)光二極管導通,接收三極管吸收光而導通,因此使繼電器處于常開端即 加熱 。當輸入密碼錯誤時,輸入端為高電平,電磁繼電器的中心抽頭由“常開”接到“常閉”, 此時不加熱 。 加熱 電路如圖 所示: 18 水位檢測接口電路 蓄水箱水位和溫度檢測部分是實現(xiàn)溫度智能控制的重要環(huán)節(jié),只有準 確地檢測出水位和溫度,才能通過軟件計算提前開始輔助加熱的預加熱時間。要實現(xiàn)輔助加熱提前時間的 精確計算,最好是采用連續(xù)液位傳感器,但考慮系統(tǒng)成本,本設計仍采用分段式液位傳感器 (通過軟件來提高精度 ),在水位顯示上也仍采用分段顯示。水位檢測部分的硬件連接如圖所示。 圖 水位檢測電路圖 檢測原理如下:當水箱中無水時, 8個非門均由 1M歐姆電阻上拉成高電平, 所以圖中各“非”門 (CD4069) 輸出均為低電平, LED1~ LED8 均不亮。當水位高于“非”門 1 的輸入探針時,由于水的導電作用,使“非”門 1 的輸入變?yōu)榈碗娖?,所以其輸出變?yōu)楦唠娖剑?LED 點亮,依此類推。隨著水位的上升,各“非” 門輸出相繼為高電平, LED 依次點亮。這里要注意的是上拉電阻不能選擇太小,因為水的電阻在 100k8 左右,所以上拉電阻選擇太小的話,將在水位升高時,無法把“非”門輸入端拉成低電平。實驗表明, 上拉電阻選擇在 500k~ 1M 歐姆左右能很好地滿足電路的工作要求。為了使 80C51 隨時能夠讀出當前的水位情況,這里選用 74L S244 作為狀態(tài)輸入緩沖器。蓄水箱溫度檢測電路采用 DS18B20 芯片使其換成脈沖信號,送到 80C51 的 I/O 口(編程為計數(shù)器工作模式 ),通過測量輸出脈沖頻率的大小 來換算成水溫高低信號。 19 水位 控制 電路 該水位控制電路是控制水閥的打開與閉合來實現(xiàn)放水和停止放水,本次設計采用一個發(fā)光二極管的亮與滅來模擬水閥的 開與合。具體原理圖如下: 圖 水位控制電路圖 20 4 系統(tǒng)軟件設計 軟件設計分析 軟件是系統(tǒng)的指揮中心,由它來配合控制完成各種預定功能。為了充分發(fā)揮STC89C52 優(yōu)越的性能價格比,在設計上盡量做到硬件 “ 軟化 ” , 進一步體現(xiàn)軟件編程的靈活性, 使系統(tǒng)硬件設計得到簡化。系統(tǒng)軟件采用 MCS51 單片機 匯編語言編寫,采用了模 塊化結構設計。為增強系統(tǒng)的實時性,對那些偶 然 事件采用中斷方式處理 ,主程序主要用于系統(tǒng)的控制和管理 。 軟件設計時,首先是做好準備工作,即讀出每個按鍵的鍵值,并檢查數(shù)碼管是否可以正確顯示所有數(shù)字。電路設計時是按模塊設計的,軟件設計也一樣,采用中斷子程序方式,首先編寫大概的主程序,然后理出所需設計的子程序并逐個分析和設計子程序,編寫出子程序后應給予編譯檢查錯誤,若有錯誤再更正直到通過編譯即沒有語法錯誤,等每個子程序編寫完以后,再修改主程序完成整體的程序編寫,最后在將程序進行調試。 軟件程序設計要求 熱水器 不論在什么樣的天氣里,都能夠在設定的時間向用戶提供設定溫度的熱水,從而給用戶帶來便利。當控制器在設定的時間使水溫達到設定溫度時,將通過聲光報警提醒用戶。 根據這一要求,控制器軟件設計采用模塊化結構,包括主程序、鍵盤子程序、 T0中斷子程序、 LED 顯示子程、溫度檢測子程序等。系統(tǒng)主程序主要完成溫度和水位的檢測和一些初始化功能。 HD7279 串行接口 HD7279 采用串行方式與微處理器通信,串行數(shù)據從 DATA 引腳送入芯片,并由 CLK端同步。當片選信號變?yōu)榈碗娖胶螅?DATA 引腳上的數(shù)據在 CLK 的上升沿被 寫入 HD7279的緩沖寄存器中 。 HD7279 的指令結構有三種類型: 不帶數(shù)據的純指令,指令的寬度為 8個 bit,即微處理器需發(fā)送 8 個 CLK 脈沖。 帶有數(shù)據的指令,指令寬度為 16bit,即微處 21 理器需發(fā)送 16 個 CLK 指令。 讀取鍵盤指令,寬度為 16bit,前 8個位微處理器發(fā)送到 HD7279 的指令,后 8個 bit 為 HD7279 返回的鍵盤代碼。執(zhí)行此指令時, HD7279的 DATA 端在第九個 CLK 脈沖的上升沿變?yōu)檩敵鰻顟B(tài),并與第十六個脈沖的下降沿恢復為輸入狀態(tài),等待接受下一個指令。 串行接口的時序如下圖: 1) 純指令 2)帶數(shù)據指令 3)讀鍵盤指令 22 主程序模塊 主程序主要完成初始化、顯示處理、送 7279 顯示、鍵盤掃描以及鍵處理等功能,其中初始化又涉及內存單元,顯緩區(qū),堆棧,定時器賦初值 , 及各寄存器的初始化,流程圖如圖 所示: 實時時鐘定時器中斷服務程序設計 該部分用來實時時鐘顯示 的中斷服務程序:在中斷服務程序中,計時初值采用50ms,最小系統(tǒng)所用的晶振為 12MHz,所以每個機器周期為 2us,具體的初值 計算如下: 50ms=( FFFFH+1初值) *2us 初值 =3CB0H 開始 初始化 按鍵掃描 鍵處理 顯示處理、顯示 有鍵按下否? 切換鍵,切換標志取反 溫度上翻 鍵 處理 溫度下翻 鍵處理 數(shù)鍵 鍵 處理 校時 鍵 處理 確認 鍵處理 Y N 圖 主程序流程圖 23 子程序模塊 子 程序是指能完成某一確定的任務并能被其他程序反復調用的程序段。有時把調用子程序的程序稱為主調程序,被調用的子程序稱為被調程序。采用子程序結構可使程序簡化,便于調試,并可實現(xiàn)程序模塊化。但子程序在結構上應具有通用性和獨立性。 入口: 000BH 保護現(xiàn)場( A、 B、 DPH、 DPL、 PSW 等) 選另一工作寄存區(qū) 重新設置定時器初值 中斷次數(shù)計數(shù),(建立時間標志)(控制顯示更新等) 時鐘計時 恢復現(xiàn)場 中斷返回 圖 實時時鐘中斷流程圖 24 DS18B20 溫度檢測 子程序設計 圖 溫度檢測流程圖 25 水位檢測 子程序設計 按鍵檢測 水位測試 數(shù)碼管顯示 溫度測試 報警 開始 圖 水位檢測流程圖 是否有 鍵按下 返回 溫度上下限設置 26 7279 發(fā)送接收 子程序設計 圖 7279 發(fā)送接收子程序流程圖 發(fā)送一位到 開始 使 CLK 有效 清 CLK為 0 延時 是否 8位 返回 Y N 開始 讀到一位送 A 使 CLK 有效 置鎖存器為 1 A左移一位 A左移一位 清 CLK為 0 延時 是否 8位 返回 Y N 27 DA18B20 溫度轉換子程序流程圖 圖 溫度轉換 子程序流程圖 1820 數(shù)據轉換子程序:將 TEMPER_L 高四位和 TEMPER_H 低四位送 TEMPER_NUM,將 TEMEPR_L 低四位送 TEMPER_d,判斷 TEMPER_d 是否到十,到則 TEMPER_NUM 加一,然后查表將二進制轉化成十進制。 取 TEMPER_L中高四位存 TEMPER_NUM低四位 開始 C=1 取 TEMPER_H中低四位存 TEMPER_NUM高四位 取 TEMPER_L中低四位存 TEMPER_d TEMPER_d 送A10 A送 TEMPER_d TEMPER_NUM 加一 查表 返回 Y N 28 鍵盤掃描子程序設計 鍵盤處理主要是不斷的掃描 7279 模塊中的鍵盤,若有鍵按下時,則根據得到的鍵值查表求出其鍵號,將鍵號存放于寄存器 ACC 中供主程序處理。流程圖如圖 所示: 顯示處理子程序設計 顯示處理子程序主要完成 :查表得到所要顯示的字符的字形碼,然后將字形碼送到 7279 顯示模塊顯示出來。 7279 采用串行接口,每發(fā)送一位都要延時,且要對
點擊復制文檔內容
研究報告相關推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1