版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、溫度上下限可調(diào)式數(shù)字溫度檢測(cè)顯示器設(shè)計(jì)與制作1101電信19劉朋朋一、任務(wù)與計(jì)劃:采用 AT89C51 單片機(jī)作為控制器,數(shù)字溫度傳感器 DS18B20檢測(cè)現(xiàn)場(chǎng)溫度,能顯示溫度檢測(cè)值、設(shè)定溫度上限值和下限值,當(dāng)溫度超過(guò)設(shè)定上限時(shí),顯示“over tempH”,有紅色LED閃亮警示,當(dāng)溫度低于設(shè)定的下限值時(shí) ,顯示"under tempL",有黃色LED閃亮警示。 將檢測(cè)到的溫度信息顯在1602LCD 液晶顯示器第一行形式為“Temp xx.x”。第二行顯示設(shè)定的溫度上下限值和超限警示顯示,溫度上限值30+小組號(hào),溫度下限為25-學(xué)號(hào)末位數(shù),第二行后兩位顯示學(xué)號(hào)。二、及電路原
2、理圖設(shè)計(jì)1、液晶顯示選用1602顯示環(huán)境溫度以及溫度上下限的值,如:圖(1-1)所示。2、溫度傳感器DS18B20測(cè)環(huán)境溫度如:圖(1-2)所示。3、按鍵模塊如圖:(1-3)所示,而本次設(shè)計(jì)只需用到四個(gè)按鍵即可,其中K2、K1控制設(shè)定溫度的上限值的加減,K4、K3控制設(shè)定溫度的下限值的加減。4、8只LED模塊如:圖(1-4)所示,本次設(shè)計(jì)只需兩只LED燈的閃爍來(lái)反映出檢測(cè)的溫度是否在設(shè)定的溫度范圍內(nèi)。5、元件模塊和接口一覽表如:圖(1-5)所示。6、運(yùn)用Proteus軟件繪制硬件電路如:圖(1-6)所示。 圖1-1液晶顯示圖1-2 DS18B20 圖1-3 獨(dú)立按鍵 圖1-4 LED 圖1-5
3、 元件模塊和接口一覽表圖1-6 硬件電路設(shè)計(jì)三、設(shè)計(jì)、編譯#include<reg52.h> /所包含頭文件#include<stdio.h>#include "18b20.h"#include "1602.h"#include "delay.h"#define KeyPort P3 /定義按鍵端口sbit led1=P10;/定義高溫報(bào)警LEDsbit led2=P11;/定義低溫報(bào)警LEDbit ReadTempFlag;/定義讀時(shí)間標(biāo)志void Init_Timer0(void);/定時(shí)器初始化unsig
4、ned char KeyScan(void);/鍵盤(pán)掃描函數(shù)聲明/*- 串口通訊初始化-*/void UART_Init(void) SCON = 0x50; TMOD |= 0x20; / TMOD: timer 1, mode 2, 8-bit 重裝 TH1 = 0xFD; / TH1: 重裝值 9600 波特率 晶振 11.0592MHz TR1 = 1; / TR1: timer 1 打開(kāi) /EA = 1; /打開(kāi)總中斷 /ES = 1; /打開(kāi)串口中斷TI=1;/*- 主函數(shù)-*/void main (void) int temp,tempH=30,tempL=25;/給出初始化的溫
5、度上下線float temperature;unsigned char TempFlag=0;/定義溫度標(biāo)志位char displaytemp16,num;/定義顯示區(qū)域臨時(shí)存儲(chǔ)數(shù)組LCD_Init(); /初始化液晶DelayMs(20); /延時(shí)有助于穩(wěn)定LCD_Clear(); /清屏Init_Timer0();UART_Init();Lcd_User_Chr(); /寫(xiě)入自定義字符while (1) /主循環(huán) num=KeyScan(); switch(num)/調(diào)整溫度上下線的按鍵操作 case 1:if(tempH<127)tempH+;break;case 2:if(tem
6、pH>-55)tempH-;break;case 3:if(tempL<127)tempL+;break;case 4:if(tempL>-55)tempL-;break;default:break; switch(TempFlag)/LCD顯示溫度上下線以及報(bào)警時(shí)動(dòng)態(tài) case 0: /輸出溫度上限下限 sprintf(displaytemp,"H.%3d L.%3d ",tempH,tempL); LCD_Write_String(0,1,displaytemp);/顯示第二行 break;case 1:LCD_Write_String(0,1,&qu
7、ot;over tempH 19 ");break;case 2:LCD_Write_String(0,1,"under tempL 19 ");break;default:break; if(ReadTempFlag=1) ReadTempFlag=0; temp=ReadTemperature(); temperature=temp*0.0625; temp>>=4; if(temp>tempH)/實(shí)際溫度高于上線所執(zhí)行的操作 led1=0;/高溫LED閃亮報(bào)警 led2=1; TempFlag=1; else if(temp<temp
8、L) 實(shí)際溫度低于下限所執(zhí)行的操作 led2=0;/低溫LED閃亮報(bào)警 led1=1; TempFlag=2; else/正常顯示所執(zhí)行的操作 led1=1;led2=1;TempFlag=0; /讀取溫度與寫(xiě)入溫度 sprintf(displaytemp,"Temp %6.2f ",temperature);/打印溫度值 LCD_Write_String(0,0,displaytemp);/顯示第一行 LCD_Write_Char(13,0,0x01);/寫(xiě)入溫度右上角點(diǎn) LCD_Write_Char(14,0,'C'); /寫(xiě)入字符C LCD_Write
9、_String(0,1,displaytemp); LCD_Write_Char(13,1,'1'); LCD_Write_Char(14,1,'9'); /*- 定時(shí)器初始化子程序-*/void Init_Timer0(void) TMOD |= 0x01; /使用模式1,16位定時(shí)器,使用"|"符號(hào)可以在使用多個(gè)定時(shí)器時(shí)不受影響 /TH0=0x00; /給定初值 /TL0=0x00; EA=1; /總中斷打開(kāi) ET0=1; /定時(shí)器中斷打開(kāi) TR0=1; /定時(shí)器開(kāi)關(guān)打開(kāi)/*- 定時(shí)器中斷子程序-*/void Timer0_isr(voi
10、d) interrupt 1 static unsigned int num; TH0=(65536-2000)/256; /送初始值定時(shí)2個(gè)毫秒 TL0=(65536-2000)%256; num+; if(num=400) / num=0; ReadTempFlag=1; /讀標(biāo)志位置1unsigned char KeyScan(void) /按鍵掃描 unsigned char keyvalue; if(KeyPort!=0xff) /判斷按鍵按下并返回相應(yīng)的值 DelayMs(10); if(KeyPort!=0xff) keyvalue=KeyPort; while(KeyPort!=0xff);switch(keyvalue) case 0xfe:return 1;break; case 0xfd:return 2;break; case 0xfb:return 3;break; case 0xf7:return 4;break; case 0xef:return 5;break; case 0xdf:return 6;break; case 0xbf:return 7;break; case 0x7f:return 8;break; default:return 0;break; return 0;4、 安裝和調(diào)試1、高溫報(bào)警時(shí)的狀態(tài)(如圖2
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年軸承配套防塵蓋項(xiàng)目可行性研究報(bào)告
- 財(cái)務(wù)管理課程設(shè)計(jì)答案
- 2025年中國(guó)橙汁行業(yè)市場(chǎng)前景預(yù)測(cè)及投資戰(zhàn)略咨詢報(bào)告
- 2024年日用陶瓷制造市場(chǎng)調(diào)研報(bào)告
- 2025年中國(guó)胃腸道用藥市場(chǎng)調(diào)查研究及行業(yè)投資潛力預(yù)測(cè)報(bào)告
- 鉆臂搖床課程設(shè)計(jì)
- 軋制課程課程設(shè)計(jì)
- 瑜伽普拉提體態(tài)課程設(shè)計(jì)
- 個(gè)別化課程設(shè)計(jì)與學(xué)生需求匹配
- 二零二五年度河南省人事廳機(jī)關(guān)事業(yè)單位臨時(shí)工聘用合同
- 《鐵路軌道維護(hù)》課件-更換道岔尖軌作業(yè)
- 股份代持協(xié)議書(shū)簡(jiǎn)版wps
- 職業(yè)學(xué)校視頻監(jiān)控存儲(chǔ)系統(tǒng)解決方案
- 《銷售心理學(xué)培訓(xùn)》課件
- 智能養(yǎng)老院視頻監(jiān)控技術(shù)方案
- 2024年安徽省公務(wù)員錄用考試《行測(cè)》真題及解析
- 你比我猜題庫(kù)課件
- 豐順縣鄉(xiāng)鎮(zhèn)集中式飲用水水源地基礎(chǔ)狀況調(diào)查和風(fēng)險(xiǎn)評(píng)估報(bào)告
- 無(wú)人駕駛航空器安全操作理論復(fù)習(xí)測(cè)試附答案
- 2024年山東省青島市中考語(yǔ)文試卷(附答案)
- 職業(yè)技術(shù)學(xué)?!犊缇畴娮由虅?wù)物流與倉(cāng)儲(chǔ)》課程標(biāo)準(zhǔn)
評(píng)論
0/150
提交評(píng)論