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

正文內(nèi)容

基于單片機的溫濕度報警器設(shè)計畢業(yè)設(shè)計論文(參考版)

2024-08-30 15:00本頁面
  

【正文】 i。 i。 i。i++)。j) { for(i=0。 for(。 U8 count, count_r=0。 U8 U8T_data_H_temp,U8T_data_L_temp,U8RH_data_H_temp,U8RH_data_L_temp,U8checkdata_temp。 U8 U8count,U8temp。 //讀 AT2402 函數(shù) void wrteeprom(unsigned char addr,unsigned char dat)。 //I2C 發(fā)送字節(jié)函數(shù) unsigned char Read_byte(void)。 //I2C 發(fā)送 0 函數(shù) void SEND1(void)。 //I2C 應(yīng)答非函數(shù) bit Check_Ack(void)。 //I2C 結(jié)束函數(shù) void Ack(void)。 //延時函數(shù) void IICStart(void)。 //模擬 I2C 總線的引腳定義 sbit SDA = P1^1。 IICStop()。 Write_byte(dat)。 Write_byte(addr)。 Write_byte(0xa0)。 return temp。 SEND1()。 Check_Ack()。 IICStart()。 Write_byte(addr)。 Write_byte(0xa0)。 bit flag=0。 } return temp。 } else temp=temp1。 if(SDA==1) { temp=temp1。 SCL=1。i8。 } } unsigned char Read_byte(void) { unsigned char i,temp=0。0x80) SEND1()。i8。 } void Write_byte(unsigned char dat) { unsigned char i。 SCL=0。 return 1。 CY=SDA。 CY=SDA。 SCL=1。 } bit Check_Ack(void) { unsigned char errtime= DELAY(1)。 DELAY(1)。 SCL=0。 SCL=1。 SCL=0。 SDA=1。SCL=1。 SCL=0。 SDA=0。 SCL=1。 DELAY(1)。 } } 24C02 程序 include void DELAY(unsigned int t) { while(t!=0) t。 if (!Key_HH2) keyHH2 = 0。 2020 畢業(yè)設(shè)計論文 if (!Key_HH1) keyHH1 = 0。 if (!Key_TH2) keyTH2 = 0。 } if (!Key_TH1) keyTH1 = 0。} if (FlagKeyPress == 1) { KeyProcess(keyvalue)。(keyHH2==0)){FlagKeyPress=1。} else if((Key_HH2)amp。(keyHH1==0)){FlagKeyPress =1。} else if((Key_HH1)amp。(keyTH2==0)){FlagKeyPress=1。} else if((Key_TH2)amp。(keyTH1==0)) {FlagKeyPress = 1。 } //鍵盤查詢,在彈起時響應(yīng) if ((Key_TH1)amp。 beep=1。 //蜂鳴器響 ,超溫報警 DELAY(500)。 } if (humidity HH) //判斷潮濕 { Led_qushi = 0。 beep=1。 //蜂鳴器響 ,超溫報警 DELAY(500)。 } //溫濕度控制 if (temperature TH) //判斷超溫 { Led_jiangwen = 0。 L1602_int(1,5,temperature)。 2020 畢業(yè)設(shè)計論文 humidity = U8RH_data_H。 FlagStartRH = 0。 while(1) { if (FlagStartRH == 1) //溫濕度轉(zhuǎn)換標志檢查 { TR0 = 0。 L1602_char(2, 15, HH/10+48)。 //載入溫度上限和濕度上限設(shè)定值 L1602_char(1, 15, TH/10+48)。 L1602_string(2,1,Hum: % HH:)。 //清屏 L1602_string(2,1, )。j++) {。i++) //延時 for (j=0。 for (i=0。H )。 L1602_init()。 //定時器 0 初始化 Data_Init()。 EA = 0。 } Save_Setting()。 break。 L1602_char(2, 15, HH/10+48)。 break。 L1602_char(2, 15, HH/10+48)。 break。 L1602_char(1, 15, TH/10+48)。 break。 L1602_char(1, 15, TH/10+48)。 if ((HH99)||(HH0)) HH = 85。 *pSave = rdeeprom(3)。HH。 *pSave = rdeeprom(1)。TH。 //存濕度上限值 RH 高 8 位 DELAY(500)。 pSave ++。 wrteeprom(2, *pSave)。 pSave = (char *)amp。 wrteeprom(1, *pSave)。 //存溫度上限值 TH 低 8 位 DELAY(500)。TH。 RHCounter = 0。 //定時器賦予高位初值 RHCounter ++。 } //啟動定時器 void Timer0_ISR (void) interrupt 1 using 0 //定時器 0 中斷 { TL0 = 0x06。 //定時器賦予低位初值 TH0 = 0xf8。 //允許定時器 0 中斷 TMOD = 1。 beep=1。 keyHH1 = 1。 keyTH1 = 1。 TH = 40。 Led_qushi = 1。 void Data_Init() //數(shù)據(jù)初始化 { RHCounter = 0。 U8 keyvalue, keyTH1, keyTH2, keyHH1, keyHH2。 S16 idata TH, HH。 U16 temp。 extern U8 U8data。 extern U8 U8T_data_H,U8T_data_L,U8RH_data_H,U8RH_data_L, U8checkdata。 //有鍵按下 extern U8 U8FLAG,k。 //蜂鳴器 volatile bit FlagStartRH = 0。 //濕度最高值設(shè)置按鍵 sbit Key_HH2 = P3^5。 //溫度最高值設(shè)置按鍵 sbit Key_TH2 = P3^3。 //潮濕報警燈 sbit Led_jiangwen=P1^5。在此,特向幫助過我的老師和朋友表示誠摯的謝意! 2020 畢業(yè)設(shè)計論文 參考文獻 [1] 姜志海 , 黃玉清 ,劉連鑫 . 單片機原理及應(yīng)用 [M]. 電子工業(yè)出版社,2020. [2] 郭天祥 . 51 單片機 C 語言教程 [M]. 電子工業(yè)出版社 .2020. [3] 張毅剛 , 彭喜元 , 彭宇 . 單片機原理及應(yīng)用 [M]. 高等教育出版社 .2020. [4] 楊素行 . 模擬電子技術(shù)基礎(chǔ)簡明教程 [M]. 高等教育出 版社 .2020. [5] 李維提 , 郭強 . 液晶顯示應(yīng)用技術(shù) [M]. 電子工業(yè)出版社 .2020. [6] 劉湘濤 . 單片機原理與應(yīng)用 [M]. 電子工業(yè)出版社 .2020. [7] 何立民 . 單片機高級教程 [M]. 北京航空航天大學(xué)出版社 .2020. [8] 周潤景 , 徐宏偉 , 丁莉 . 單片機電路設(shè)計分析與制作 [M]. 機械工業(yè)出版社 . 2020. [9] 李全利 . 單片機原理及應(yīng)用技術(shù) [M]. 高等教育出版社 , 2020. [10] 李秀霞 . 鄭春厚 . Protel DXP 2020 電路設(shè)計與仿真教程 [M]. 北京航空航天大學(xué)出版社 .2020. [11] 余家春 . Protel99Se 電路設(shè)計實用教程 [M]. 中國鐵道出版社 , 2020. [12] 郭強 . 液晶顯示應(yīng)用技術(shù) [M]. 電子工業(yè)出版社 . 2020. [13] 王建校 . 51 系列單片機及 C51 程序設(shè)計 [M]. 科學(xué)出版社 . 2020. [14] 馬忠梅 . 單片機的 C 語言應(yīng)用程序設(shè)計 [M]. 北京航空航天大學(xué)出版社 .1998. 2020 畢業(yè)設(shè)計論文 附件 1 系統(tǒng)程序 主程序 //實現(xiàn)功能,設(shè)定溫度上限和濕度上限,超過上限值時報警。 另外,要感謝在大學(xué)期間所有傳授我知識的老師,是你們的悉心教導(dǎo)使我有了良好的 專業(yè)課知識,這也是論文得以完成的基礎(chǔ)。論文得以完成,要感謝的人實在太多了,特別感謝老師們的幫助,在硬件實物方面缺少元件,老師們都想盡辦法幫助我解決,并提供給了我許多有益的指導(dǎo)和熱心的幫助。一直以來,老師在本設(shè)計硬 件原理、軟件編寫、論文的寫作中給予我巨大的幫助, 老師對我的教導(dǎo)將使我終身受益。以后有機會應(yīng)該在這些方面多學(xué)習(xí),多注意。 存在缺陷: 溫濕度的精度是 較低的,反應(yīng)相對慢。 能同時對濕度和溫度進行測量,使用方便。 總結(jié)本文的研究工作,主要做了下面幾點較突出的工作: 1. 掌握 了 LCD1602 顯示屏的使用,了解了 LCD1602 顯示屏 特有的工作 優(yōu)點。 并且能夠設(shè)置溫濕度上限值,當(dāng)環(huán)境溫濕度超過設(shè)定值時,系統(tǒng)自動報警,當(dāng) 溫濕度回到設(shè)定值內(nèi),報警自動解除。 采用DHT11 數(shù)字溫濕度傳感器檢測環(huán)境中的溫濕度,輸入到單片機進行處理。最后修改了程序,系統(tǒng)功能得以實現(xiàn)。剛開始還以為是硬件部分沒有連接好,用萬用表查了很久,但是電平變化都是正確的。 2. 軟件所遇問題及解決方法 本次畢業(yè)設(shè)計大部分時間都花在了軟件調(diào)試上了,軟件調(diào)試不像硬件那么直觀,對我來說是個難點。因為單是單片機的引腳輸出電流還不足以驅(qū)動蜂鳴器,后來又加了一個 NPN 的三極管來驅(qū)動蜂鳴器。 1. 硬件問題及解決方法 蜂鳴器不夠響。因而簡單的實現(xiàn)了對溫度的控制??梢杂檬治孀?DHT11 傳感器,令其溫度的顯示超標。并且針對與自己設(shè)定的限值相比較。開始供電后、稍帶幾秒等 1602 液晶屏能正常顯示當(dāng)前溫濕度了之后。 2020 畢業(yè)設(shè)計論文 4 系統(tǒng) 調(diào)試 本設(shè)計是在 Keil C 環(huán)境下開發(fā)的, Keil C 軟件支持 C 語言的編程及調(diào)試,運用方便。本設(shè)計采用了 C 語言進行模塊化編寫程序。 實物圖(見附件 3)。其電氣原理圖如圖 所示。考慮了溫濕度閾值的存儲,在掉電后,下一次使用時能回到原來設(shè)定的閾值。 3. 串行的 8 位雙向數(shù)據(jù)傳輸位速率在標準模式下可達 100kbit/s,2020 畢業(yè)設(shè)計論文 快速模式下可達 400kbit/s,高速模式下可達 。 2IC總線特點: 1. 要求兩條總線線路:一條串行數(shù)據(jù)線 SDA,一條串行時鐘線 SCL。存儲器 24C02 系列等都是使用 2IC協(xié)議進行數(shù)據(jù)的操作。 發(fā)光二極管報警模塊設(shè)計 此部分利用發(fā)光二極管的點亮來實現(xiàn)報警,當(dāng)單片機 、 引腳輸出一個低電平時發(fā)光二極管亮,實現(xiàn)報警。 2020 畢業(yè)設(shè)計論文 K2TH+K5THK7HHK6HH+R33 1kR34 1kR35 1kR36 1k+5VGND溫度濕度設(shè)置P33P34P35P12 圖 閾值設(shè)置模塊原理圖 報警模塊設(shè)計 蜂鳴器報警模塊設(shè)計 fengmingqiR17 1k
點擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1