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

正文內(nèi)容

基于單片機溫濕度監(jiān)測系統(tǒng)設計(編輯修改稿)

2025-07-24 19:58 本頁面
 

【文章內(nèi)容簡介】 它都是用液晶顯示器。我們見到的很多液晶顯示器它顯示的內(nèi)容卻不同,有字符型液晶,圖形液晶的,又根據(jù)顯示容量可以分為單行16字,二行16字的等等。每一類的液晶模塊它的使用方法都是通用的。下面介紹16字x2行的字符型液晶模塊的優(yōu)點。這類模塊相比之下,它有的優(yōu)點是:位數(shù)多,可以顯示32位,32個數(shù)碼管體積相當龐大。顯示內(nèi)容豐富,可顯示所有數(shù)字和大、小寫字母。程序簡單,如果用數(shù)碼管動態(tài)顯示,會占用很多時間來刷新顯示,而1602自動完成此功能。1602液晶模塊內(nèi)部的字符發(fā)生存儲器(CGROM)已經(jīng)存儲了不同的點陣字符圖形,這些字符有,阿拉伯數(shù)字、英文字母的大小寫、常用的符號等,每一個字符都有一個固定的代碼,其中數(shù)字與字母同ASCII碼兼容。1602連線圖如下: LCD1602接線圖 按鍵輸入的硬件連線圖及分析本設計人機交互簡單,由于單片機引腳資源足夠,設計了4個鍵位來選定溫濕度的最小值和最大值,再用兩個鍵來控制增減。使用者可以通過這6個鍵位輕松設定通信機房內(nèi)的溫濕度范圍。鍵盤輸入連線圖如圖,若有鍵按下,對應的引腳電平將拉低。 鍵盤輸入接線圖 系統(tǒng)總體硬件接線圖 系統(tǒng)總體硬件接線圖第5章 系統(tǒng)軟件設計 系統(tǒng)主程序設計該系統(tǒng)的核心是AT89C51,其監(jiān)測程序和應用軟件全部在EPROM內(nèi)進行。他的工作過程是:當系統(tǒng)上電后,進入監(jiān)控狀態(tài)的AT89C51單片機,同時完成為每個端口的初始化,按下一個按鈕時,應用程序會產(chǎn)生相應動作,改變溫濕度的設定范圍。當沒有外部的控制輸入端的信息時,系統(tǒng)將自動收集的溫度和濕度傳感器的電壓值,在LCD顯示屏上的最終數(shù)據(jù)。:按鍵處理初始化各端口初始化溫濕度傳感器溫濕度值是否符合正常值?發(fā)出警報通知工作人員查詢鍵盤,是否有鍵按下?顯示開始調(diào)用濕度檢測電路測量溫濕度值YYN 主程序流程圖 室內(nèi)溫濕度監(jiān)測模塊程序設計溫濕度利用SHT11溫濕度傳感器測量溫度。:開始SHT11初始化讀取溫濕度值結束計算溫濕度值 溫濕度監(jiān)測流程圖第6章 仿真結果及分析 程序調(diào)試整個軟件通過 C 語言編程,先在 Keil C51 集成開發(fā)環(huán)境下將編好的程序進行編譯、調(diào)試, 文件。具體過程如下:新建一個項目文件,然后新建一個 C 語言程序,并把新建的 C 語言程序加到項目中,然后編譯項目。(編譯的目的就是把我們能看懂的程序設計語言轉化為上面的機器語言, 文件)。第一步:建立您的第一個 C 項目:(1)點擊 Project 菜單,選擇彈出的下拉式菜單中的 New Project, keil編程圖項目名稱,這里我們用“test“, “保存“,這是LuVision2 項目文件擴展名,以后我們可以直接點擊此文件以打開此項目(你安裝的軟件是 KEIL UV3,可能與圖略有不同)。(2)選擇所要的單片機,這里我們選擇常用的 Ateml 公司的 AT89C51。 (3)首先我們要在項目中創(chuàng)建新的程序文件。如果您沒有現(xiàn)成的程序,那么就要新建一個程序文件。File-New 或快捷鍵 Ctrl+N 來實現(xiàn)。好了,現(xiàn)在可以編寫程序了,光標已出現(xiàn)在文本編輯窗口中,輸入本系統(tǒng)設計的程序。(4)FileSave 或快捷鍵 Ctrl+S 進行保存。,保存在項目所在的目錄中,這時您會發(fā)現(xiàn)程序單詞有了不同的顏色,說明 KEIL 的語法檢查生效了。如圖鼠標在屏幕左側的 Source Group1 文件夾圖標上右擊彈出菜單,在這里可以做在項目中增加減少文件等操作。我們選” Add File to Group ‘Source Group 1’”彈出文件窗口,選擇剛剛保存的文件,按 ADD 按鈕,關閉文件窗,程序文件已加到項目中了。這時在 Source Group1 文件夾圖標左邊出現(xiàn)了一個小+號說明,文件組中有了文件,點擊它可以展開查看。(5)C 程序文件已被我們加到了項目中了,下面就開始編譯運行了,默認情況下,還不能產(chǎn)生我們需要的 ,我們還需要修改一下相關參數(shù): 在ProjectBuild target 如果順利運行,表示已經(jīng)順利地編譯通過了,在項目所在的目錄中,已經(jīng)生成了 。 仿真結果截圖在 proteus 軟件中測試一下,運行 PROTEUS 模擬仿真軟件,打開已繪制好的仿真電路原圖,選中單片機 AT89C51,右鍵點擊 AT89C51,出現(xiàn)對應的對話框,在 Program File 中找到編譯好的“*.HEX”文件,然后點擊“OK”就可以進行仿真了。進入仿真界面,將溫度范圍設定為10至30攝氏度,相對濕度設定在30%?50%之間。本系統(tǒng)設計理論上要求溫濕度不在設定范圍報警器啟動,通知工作人員。(1)運用仿真程序調(diào)節(jié)溫濕度,使其達到25攝氏度,濕度調(diào)節(jié)在40%,此時溫濕度都在設定的范圍內(nèi),系統(tǒng)正常工作,蜂鳴器無響應,: 溫濕度正常仿真圖(2)運用仿真軟件調(diào)節(jié)溫濕度,使溫度為31攝氏度,濕度為40%,此時濕度處在設定范圍內(nèi),而溫度度超出設定范圍,蜂鳴器工作發(fā)出警報,: 溫度不正常仿真圖(3)運用仿真軟件調(diào)節(jié)溫濕度,使溫度為25攝氏度,濕度為51%,此時溫度處在設定范圍內(nèi),而濕度度超出設定范圍,蜂鳴器工作發(fā)出警報,: 濕度不正常仿真圖通過仿真實驗可以發(fā)現(xiàn),當溫濕度超出設定范圍時,蜂鳴器均工作發(fā)出警報,從而達到通知工作人員的目的,當溫濕度回到正常范圍時,報警器停止響應,仿真結果與本系統(tǒng)設計要求完全相同,故仿真成功。第7章 結論隨著科技的進步,各種先進的通信設備被研發(fā)出來,同時也對通信機房的溫濕度提出了苛刻的要求,本文針對這一現(xiàn)狀設計了基于單片機的通信機房溫濕度控制系統(tǒng)。本設計采用的是高效單片機作為核心,集溫度傳感器和濕度傳感器于一體的SHT11傳感器作為主要的采集與測量系統(tǒng),其中它自帶的A/D轉換器,使得此溫濕度控制儀具有精度高、成本低、體積小、接口簡單等優(yōu)點,還具有良好抗干擾能力。加上優(yōu)化程序,使得本系統(tǒng)具有很高的實用性。同時對溫濕度傳感器SHT11的工作原理其技術指標進行了深入分析,提出了一種基于單片機SHT11的溫濕度控制系統(tǒng),克服了傳統(tǒng)溫濕度傳感器在技術方面、精度方面的局限性,避免了一些其他傳感器可能出現(xiàn)的誤差和失誤,同時大大簡化了軟硬件的設計,使系統(tǒng)結構較為緊湊,實現(xiàn)了溫濕度同時測量的功能。在控制算法方面采用了傳統(tǒng)的PID算法,設計了比較精確的PID控制程序,并且盡量提高了PID對階躍干擾的調(diào)節(jié)能力,使得溫濕度控制精度有了很大提高。單片機的應用如今已經(jīng)在工業(yè)、電子等方方面面展示出了它的優(yōu)越性,利用單片機在設計電路逐漸成了趨勢,它與外圍的簡單電路再加上優(yōu)化程序就可以構建任意的產(chǎn)品,使得本設計成為現(xiàn)實。隨著單片機的日益發(fā)展,它必將在未來顯示出更大的活力,為電子設計增加更多精彩。在設計過程中,由于時間和本人能力的限制,設計中存在一些需要改進和優(yōu)化的地方。測量精度有待進一步提高,軟件設計也存在不合理之處。但從設計過程中,對于單片機有更進一步的認識,對用于單片機仿真的軟件操作能力也明顯提高,通過此設計,本人受益頗豐。附錄源程序代碼 /******************************************************** 基于51單片機SHT11溫濕度傳感器檢測程序********************************************************/include include /******************************************************** 宏定義********************************************************/define uint unsigned intdefine uchar unsigned chardefine noACK 0 define ACK 1 define STATUS_REG_W 0x06 define STATUS_REG_R 0x07 define MEASURE_TEMP 0x03 define MEASURE_HUMI 0x05 define RESET 0x1e enum {TEMP,HUMI}。typedef union //定義共用同類型{ unsigned int i。 float f。} value。/******************************************************** 位定義********************************************************/sbit lcdrs=P2^0。sbit rw=P2^1。sbit lcden=P2^2。sbit SCK = P1^0。sbit DATA = P1^1。sbit t_low = P3^0。sbit t_high = P3^1。sbit r_low = P3^2。sbit r_high = P3^3。sbit zeng = P3^4。sbit jian = P3^5。sbit beep = P3^7。/******************************************************** 變量定義********************************************************/uchar table3[]=T: 。uchar table4[]=R:。uchar table5[]=.。uchar wendu[5]。 uchar shidu[5]。 uchar t_fanwei[]=1050。uchar r_fanwei[]=1090。 char t_a=10,t_b=50,r_a=10,r_b=90。uchar flag_tlow=0,flag_thigh=0,flag_rlow=0,flag_rhigh=0。/******************************************************** 1ms延時函數(shù)********************************************************/ void delay(uint z){ uint x,y。 for(x=110。x0。x) for(y=z。y0。y)。}/******************************************************** 50us延時函數(shù)********************************************************/void delay_50us(uint t){ uint j。 for(。t0。t) for(j=19。j0。j)。}/******************************************************** 50ms延時函數(shù)********************************************************/void delay_50ms(uint t){ uint j。 for(。t0。t) for(j=6245。j0。j)。}void write_data(uchar dataa){ rw=0。 lcdrs=1。 P0=dataa。 delay(5)。 lcden=1。 delay(20)。 lcden=0。}void write_con(uchar con){ rw=0。 lcdrs=0。 P0=con。 delay(5)。 lcden=1。 delay(20)。 lcden=0。}void init(){ rw=0。 write_con(0x38)。 write_con(0x06)。 write_con(0x0c)。 write_con(0x01)。 }/******************************************************** 1602液晶顯示函數(shù) T********************************************************/void display2(void){ uchar i。 write_con(0x80)。 for(i=0。i8。i++) { write_data(table3[i])。
點擊復制文檔內(nèi)容
化學相關推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1