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

正文內(nèi)容

基于單片機(jī)的雞舍溫度監(jiān)控系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)論文-資料下載頁(yè)

2025-06-30 15:54本頁(yè)面

【導(dǎo)讀】據(jù)我所知,除文中特別加以標(biāo)注引用參考文獻(xiàn)資料外,論文(設(shè)計(jì))中所有。數(shù)據(jù)均為自己研究成果,不包含其他人已經(jīng)發(fā)表或撰寫(xiě)過(guò)的研究成果。與我一同工作的同志。對(duì)本研究所做的工作已在論文中作了明確說(shuō)明并表示謝意。精準(zhǔn)檢測(cè)雞舍溫、濕度對(duì)于養(yǎng)殖戶來(lái)說(shuō)非常重要。標(biāo)的雞舍,通過(guò)人為通風(fēng)、去濕及降溫等工作。法費(fèi)時(shí)費(fèi)力、效率低且測(cè)量的溫、濕度誤差大。該系統(tǒng)利用DHT11溫、濕度傳感器獲取雞舍溫、濕度值,通。監(jiān)控系統(tǒng)添加人機(jī)交互功能,通過(guò)按鍵實(shí)現(xiàn)溫、濕度正常范圍值的設(shè)置。這樣該系統(tǒng)可以擴(kuò)展到需要維持溫、濕度在一定范圍內(nèi)的環(huán)境中。產(chǎn)蛋率,間接的提高了養(yǎng)殖戶的經(jīng)濟(jì)收入。

  

【正文】 if(!P2_0) 安徽新華學(xué)院 20xx 屆本科畢業(yè)論文(設(shè)計(jì)) 25 { U8FLAG=2。 //判斷從機(jī)是否發(fā)出 80us 的低電平響應(yīng)信號(hào)是否結(jié)束 while((!P2_0)amp。amp。U8FLAG++)。 U8FLAG=2。 //判斷從機(jī)是否發(fā)出 80us 的高電平,如發(fā)出則進(jìn)入數(shù)據(jù)接收狀態(tài) while((P2_0)amp。amp。U8FLAG++)。 //數(shù)據(jù)接收狀態(tài) { 使用 COM()讀取 DHT11 溫、濕度 傳感器值,分別接收溫度高 8 位數(shù)據(jù)、溫度低 8 位數(shù)據(jù)、濕度高 8 位數(shù)據(jù)、濕度低 8 位數(shù)據(jù)及校驗(yàn) 8 位數(shù)據(jù) } …… if(uchartemp==ucharcheckdata_temp)//判斷讀取的數(shù)據(jù)是否出錯(cuò) { 保存當(dāng)前有效的 溫、濕度 值 } 溫、濕度 值顯示處理 } } DHT11 溫、濕度 傳感器詳細(xì)程序見(jiàn)附錄 1。 LCD12864 顯示程序設(shè)計(jì) LCD12864液晶操作之前先要對(duì)其進(jìn)行初始化,初始化完后它才能正常顯示。然后對(duì) LCD 進(jìn)行清屏,當(dāng)然如果想在 LCD 液晶屏上顯示圖形,或者字符等,要先對(duì)其寫(xiě)入一個(gè)控制命令,在對(duì) LCD 液晶進(jìn)行初始化時(shí)也需要用到這個(gè)控制命令,然后先從 GRAM 中讀取數(shù) 據(jù)后,再向 GRAM 存儲(chǔ)器寫(xiě)數(shù)據(jù),但是顯示的時(shí)候,字符和漢字可以調(diào)用字庫(kù)直接顯示的。 當(dāng)單片機(jī)上電后進(jìn)行 LCD12864 的初始化,通過(guò)單片機(jī)發(fā)送顯示位置的數(shù)據(jù),將指令發(fā)送到總線上,通過(guò)一段時(shí)間的延時(shí)后進(jìn)行判斷數(shù)據(jù)是否發(fā)送完畢,直到數(shù)據(jù)發(fā)送完畢后結(jié)束本次的數(shù)據(jù)顯示。 其顯示流程圖如圖 所示: 安徽新華學(xué)院 20xx 屆本科畢業(yè)論文(設(shè)計(jì)) 26 開(kāi) 始顯 示 器 初 始 化設(shè) 置 顯 示 位 置將 命 令 發(fā) 送 到總 線 上延 時(shí) 1 0 u s將 數(shù) 據(jù) 發(fā) 送 到總 線數(shù) 據(jù) 發(fā) 送 完 完 ?N結(jié) 束Y 圖 LCD12864 顯示流程圖 以下為 LCD12864 初始化部分程序主要為第一次顯示做準(zhǔn)備,實(shí)現(xiàn)顯示模式的設(shè)置,顯示開(kāi)、關(guān)和清屏的功能。 其部分代碼如下: void LCD_init() { Delay_xms(3)。 Delay_xms(3)。 LCD_wcmd(0x34)。 //擴(kuò)充指令操作 Delay_xms(5)。 LCD_wcmd(0x30)。 //基本指令操作 Delay_xms(5)。 LCD_wcmd(0x0C)。 //顯示開(kāi),關(guān)光標(biāo) Delay_xms(5)。 LCD_wcmd(0x01)。 //清除 LCD 的顯示內(nèi)容 Delay_xms(5)。 } 以下為顯示字符型數(shù)據(jù)設(shè)置顯示地址位置,由于使用 LCD12864 顯示屏自帶的字形庫(kù)編碼,每個(gè)字形用 16*16 點(diǎn)陣表示,因此 LCD12864 顯示屏可以顯示 4安徽新華學(xué)院 20xx 屆本科畢業(yè)論文(設(shè)計(jì)) 27 行字形,每行最多能夠顯示 8 個(gè)字。由于第一行的起始地址為 0x80,其他行依次為 0x90, 0x88, 0x98。 其部分代碼如下: void LCD_pos(uchar X, uchar Y) { uchar pos。 if (X==1)//判讀是否在第一行 {X=0x80。} else if (X==2) //判讀是否在第二行 {X=0x90。} else if (X==3) //判讀是否在第三行 {X=0x88。} else if (X==4) //判讀是否在第四行 {X=0x98。} pos = X+Y 。 LCD_wcmd(pos)。 //寫(xiě)入要顯示的地址 } 以下為圖像顯示函數(shù)。由于 LCD12864 能夠顯示 128*64 像素圖片,在顯示圖像過(guò)程中需關(guān)閉顯示功能,圖像數(shù)據(jù)完全寫(xiě)入后打開(kāi)顯示功能方能顯示真確的圖像,否則在顯示過(guò)程中出現(xiàn)亂碼的情況。寫(xiě)入數(shù)據(jù)過(guò)程即依次寫(xiě)入圖像編碼。 void photodisplay(uchar *bmp) { uchar i, j。 LCD_wcmd(0x34)。 //寫(xiě)數(shù)據(jù)時(shí),關(guān)閉圖形顯示 for(i=0。i32。i++) { LCD_wcmd(0x80+i)。 //先寫(xiě)入水平坐標(biāo)值 LCD_wcmd(0x80)。 //寫(xiě)入垂直坐標(biāo)值 for(j=0。j16。j++) //再寫(xiě)入兩個(gè) 8 位元的數(shù)據(jù) LCD_wdat(*bmp++)。 Delay_xms(1)。 } for(i=0。i32。i++) 安徽新華學(xué)院 20xx 屆本科畢業(yè)論文(設(shè)計(jì)) 28 { LCD_wcmd(0x80+i)。 LCD_wcmd(0x88)。 for(j=0。j16。j++) LCD_wdat(*bmp++)。 Delay_xms(1)。 } LCD_wcmd(0x36)。 //寫(xiě)完數(shù)據(jù),開(kāi)圖形顯示 } 以下為 LCD12864 清屏函數(shù)。主要通過(guò)清屏指令實(shí)現(xiàn)清除顯示屏。 void clr_screen() { LCD_wcmd(0x34)。 //擴(kuò)充指令操作 Delay_xms(5)。 LCD_wcmd(0x30)。 //基本指令操作 Delay_xms(5)。 LCD_wcmd(0x01)。 //清屏 Delay_xms(5)。 } LCD12864 顯示功能詳細(xì)程序見(jiàn)附錄 1。 報(bào)警及 溫、濕度 調(diào)控設(shè)計(jì) 當(dāng) 溫、濕度 異常時(shí)蜂鳴器根據(jù)不同異常情況發(fā)出不同頻率的聲音來(lái)到的提醒作用,同時(shí) 溫、濕度 調(diào)節(jié)器件根據(jù)不同的異常情況來(lái)實(shí)現(xiàn)不同器件的工作情況達(dá)到 溫、濕度 預(yù)設(shè)的值。 報(bào)警功能主要通過(guò)比較當(dāng)前的 溫、濕度 是否處于正常范圍內(nèi),若處于正常范圍內(nèi)則不進(jìn)行報(bào)警,否者進(jìn)行 溫、濕度 異常情況的匹配,當(dāng)匹配上后進(jìn)行相應(yīng)的報(bào)警。 報(bào)警工作流程圖 如圖 所示。 安徽新華學(xué)院 20xx 屆本科畢業(yè)論文(設(shè)計(jì)) 29 開(kāi) 始溫 濕 度 值 對(duì) 比溫 濕 度 均 高 于 上 限溫 度 高 于 上 限 , 濕 度低 于 下 限溫 度 低 于 下 限 , 溫 濕度 高 于 上 限溫 濕 度 均 低 于 下 限溫 度 高 于 上 限溫 度 低 于 下 限濕 度 高 于 上 限濕 度 低 于 下 限溫 濕 度 設(shè) 置 正 常 范 圍 值是 否 異 常NNNN蜂 鳴 器 發(fā) 出 1 K H Z 頻 率 鳴叫蜂 鳴 器 發(fā) 出 8 0 0 H Z 頻 率鳴 叫蜂 鳴 器 發(fā) 出 6 0 0 H Z 頻 率鳴 叫蜂 鳴 器 發(fā) 出 4 0 0 H Z 頻 率鳴 叫蜂 鳴 器 發(fā) 出 2 0 0 H Z 頻 率鳴 叫蜂 鳴 器 發(fā) 出 1 0 0 H Z 頻 率鳴 叫蜂 鳴 器 發(fā) 出 8 0 H Z 頻 率 鳴叫蜂 鳴 器 發(fā) 出 6 0 H Z 頻 率 鳴叫蜂 鳴 器 發(fā) 出 4 0 H Z 頻 率 鳴叫YYYYYYYYYNNNNN結(jié) 束 圖 報(bào)警工作流程圖 安徽新華學(xué)院 20xx 屆本科畢業(yè)論文(設(shè)計(jì)) 30 溫、濕度調(diào)控系統(tǒng)主要是通過(guò)比較溫、濕度是否處于正常范圍內(nèi),若處于正常狀態(tài)則不進(jìn)行溫、濕度調(diào)節(jié),若溫、濕度異常,則通過(guò)比較其所處異常的狀態(tài)進(jìn)行相應(yīng)的調(diào)節(jié)。其工作流程圖如圖 所示: 圖 溫、濕度 調(diào)控流程圖 以下為 溫、濕度 處理過(guò)程函數(shù)。主要實(shí)現(xiàn)當(dāng)前 溫、濕度 值與 溫、濕度 正常值得比較。當(dāng) 溫、濕度 異常時(shí)分別實(shí)現(xiàn)報(bào)警處理及 溫、濕度 異常糾正處理。 其部分代碼如下: void cmp() { int temp。 int rh。 uint i。 temp=wendu_shi*10+wendu_ge。 if(temp_Htemp_L|hum_Hhum_L) // 調(diào)節(jié) 溫、濕度 正在范圍是出現(xiàn)調(diào)節(jié)錯(cuò)誤報(bào)警 { fmq(200, 10)。//調(diào)用蜂鳴器報(bào)警程序 for(i=0。i50000。i++) 安徽新華學(xué)院 20xx 屆本科畢業(yè)論文(設(shè)計(jì)) 31 keyscan()。 keyscan()。 } else { if(temptemp_H) //溫度高于最高溫度值時(shí)啟動(dòng) 溫、濕度 調(diào)節(jié)器件并報(bào)警 { 更新當(dāng)前 溫、濕度 信息 d2=0。 d1=1。 } ……. if(K==0) { if(s4num==0) { if(temptemp_H|temptemp_L|rhhum_H|rhhum_L) { LED=1。 if(temptemp_Lamp。amp。rhhum_L) fmq(50, 60)。 else { if(temptemp_Lamp。amp。rhhum_H) fmq(40, 75)。 ………… } 報(bào)警及 溫、濕度 調(diào)控詳細(xì)程序見(jiàn)附錄 1。 按鍵識(shí)別設(shè)計(jì) 由于按鍵是該系統(tǒng)唯一的人機(jī)信息交互部件,因此按鍵識(shí)別部分需及時(shí)響安徽新華學(xué)院 20xx 屆本科畢業(yè)論文(設(shè)計(jì)) 32 應(yīng),但本系統(tǒng)顯示的多樣性,導(dǎo)致主芯片數(shù)據(jù)處理量大。故若主函數(shù)中使用按鍵掃描的方式無(wú)法達(dá)到按鍵的及時(shí)識(shí)別與響應(yīng)。最終采取中斷的方式能夠及時(shí)的處理按鍵識(shí)別及按鍵的信息的處理。 當(dāng)設(shè)置按鍵按下后系統(tǒng)進(jìn)入中斷處理程序中,通過(guò)鍵盤(pán)掃描程序識(shí)別按鍵的種類,并處理其對(duì)應(yīng)的處理程序,直到退出中斷處理程序。 其按鍵工作流程圖如圖 所示: 開(kāi) 始選 擇 鍵 按 下加 鍵 按 下減 鍵 按 下進(jìn) 入 中 斷鍵 盤(pán) 掃 描S 4 n u m = ( s 4 n m b e r + 1 ) % 5YNNS 4 n a m = 1 溫 度 上 限 加 1 ;S 4 n a m = 2 溫 度 下 限 加 1 ;S 4 n a m = 3 溫 度 上 限 加 1 ;S 4 n a m = 4 溫 度 下 限 加 1 ;S 4 n a m = 1 溫 度 上 限 減 1 ;S 4 n a m = 2 溫 度 下 限 減 1 ;S 4 n a m = 3 溫 度 上 限 減 1 ;S 4 n a m = 4 溫 度 下 限 減 1 ;YYS 4 n u m = = 0 ?退 出 中 斷YNNS 4 n u m = = 0結(jié) 束 圖 按鍵工作流程圖 以下是按鍵識(shí)別及處理的主要程序,主要通過(guò)按鍵掃描實(shí)現(xiàn)按鍵是否按下,但在按鍵掃描的過(guò)程中應(yīng)排除按鍵抖動(dòng)造成的異常,因此在按鍵識(shí)別過(guò)程中通過(guò) 延時(shí)達(dá)到消抖效果。 其部 分代碼如下: void keyscan() { uchar i。 安徽新華學(xué)院 20xx 屆本科畢業(yè)論文(設(shè)計(jì)) 33 if(s4==0)//判斷選擇按鍵是否按下 { Delay(5)。 if(s4==0) { while(!s4)。 s4num++; //選擇下一功能 …… if(s4num!=0) //按鍵計(jì)數(shù)加 { if(s2==0) { Delay(10)。 if(s2==0) { while(!s2)。//消抖,否則就會(huì)一下加很多 //調(diào)節(jié)修改顯示的位置 if(s4num==1) { temp_H++。 if(temp_H==100) temp_H=0。 //刷新溫度上限 。 更新顯示的數(shù)據(jù) } …… } 按鍵識(shí)別功能詳細(xì)程序見(jiàn)附錄 1。 中斷處理程序設(shè)計(jì) 單片機(jī)的中斷處理具有及時(shí)響應(yīng)特點(diǎn),由于本系統(tǒng)在人機(jī)交互功能上要體現(xiàn)及時(shí)性,故在體現(xiàn)人機(jī)交互功能時(shí)使用中斷處理。 中斷程序主要處理按鍵識(shí)別 、通過(guò) LCD12864 實(shí)現(xiàn)當(dāng)前信息的顯示,直到結(jié)束 溫、濕度 范圍的調(diào)整結(jié)束中斷否安徽新華學(xué)院 20xx 屆本科畢業(yè)論文(設(shè)計(jì)) 34 則一直執(zhí)行中斷處理程序。 中斷處理流程圖如圖 所示 : 進(jìn) 入 中 斷按 鍵 識(shí) 別 與 處理顯 示 當(dāng) 前 信 息按 鍵 編 輯 溫 濕 度 范圍 是 否 結(jié) 束退 出 中 斷YN開(kāi) 始結(jié) 束 圖 中斷處理流程圖 本系統(tǒng)使用外部中斷 0。由于本系統(tǒng)按
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1