版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、基于AT89S51的溫度計(jì)院系:電氣與信息工程學(xué)院專業(yè):班級:學(xué)生姓名:學(xué)號:日期:2012年11月11號第一部分設(shè)計(jì)要求:采用AT89C51單片機(jī)和LCD液晶顯示器設(shè)計(jì)一個(gè)數(shù)字溫度計(jì),當(dāng)外界溫度變化時(shí),顯示屏上的溫度值也隨著變化。數(shù)字溫度計(jì)的測溫范圍為-55C到125C之間。第二部分硬件原理框圖:AT89C51單片機(jī)LCD液晶顯示電路晶振振蕩電路復(fù)位電路溫度傳感器采集電路電源電路硬件部分主要分為晶振振蕩電路、復(fù)位電路、LCD液晶顯示電路、DS18B20溫度傳感器采集電路、電源電路等部分組成。第三部分硬件原理圖:硬件模塊原理圖:1、晶振振蕩電路該電路是由兩個(gè)電容和一個(gè)晶振組成,晶振產(chǎn)生基本的時(shí)
2、鐘信號它給單片機(jī)供應(yīng)時(shí)鐘信號。2、復(fù)位電路復(fù)位的主要作用是把特別功能寄存器的數(shù)據(jù)刷新為默認(rèn)數(shù)據(jù),單片機(jī)在運(yùn)算過程中由于攪亂等外界原因造成寄存器中數(shù)據(jù)凌亂不能夠使其正常連續(xù)執(zhí)行程序或產(chǎn)生的結(jié)果不正確時(shí)均需要復(fù)位,以使程序重新開始運(yùn)行。3、LCD液晶顯示電路經(jīng)過溫度傳感器,將采集到的溫度信息傳給單片機(jī),單片機(jī)辦理后又將信息發(fā)給P0口,P0口與LCD的數(shù)據(jù)口相連接,液晶屏上會顯示采集到的溫度值。4、溫度傳感器采集電路單線數(shù)字溫度傳感器DS18B20測量溫度范圍為-55C+125C,-10+85C范圍內(nèi),精度為0.5C。DS1822的精度較差為2C。DS18B20的管腳排列以下:DQ為數(shù)字信號輸入/輸
3、出端;GND為電源地;VDD為外接供電電源輸入端(在寄生電源接線方式時(shí)接地)。依照DS18B20的通訊協(xié)議,主機(jī)控制DS18B20完成溫度變換必定經(jīng)過三個(gè)步驟:每一次讀寫從前都要對DS18B20進(jìn)行復(fù)位,復(fù)位成功后發(fā)送一條ROM指令,最后發(fā)送RAM指令,這樣才能對DS18B20進(jìn)行預(yù)定的操作。復(fù)位要求主CPU將數(shù)據(jù)線下拉500微秒,爾后釋放,DS18B20收到信號后等待1660微秒左右,后發(fā)出60240微秒的存在低脈沖,主CPU收到此信號表示復(fù)位成功。5、電源電路設(shè)計(jì)中利用橋式整流和電容濾波以及7805集成穩(wěn)壓來輸出+5V電壓,以滿足AT89C51、LCD1602、DS18B20等器件的工作需
4、求,原理以下:第四部分程序流程圖發(fā)溫度變換開始命令結(jié)束圖2溫度變換命令子程序流程圖N圖1主程序流程圖第五部分總結(jié):在本次設(shè)計(jì)的過程中,我查閱了好多文件資料,從中學(xué)到了好多有關(guān)系統(tǒng)開發(fā)和程序調(diào)試方面等的知識。在軟件開發(fā)過程中掌握了一些技術(shù)難題的解決方法和技巧,牢固和加深了所學(xué)知識的理解,能夠把所學(xué)的知識與實(shí)踐相結(jié)合,培養(yǎng)了認(rèn)真慎重的學(xué)習(xí)態(tài)度,為今后開發(fā)軟件積累了大量的經(jīng)驗(yàn),提高了解析問題和解決問題的能力。但是由于認(rèn)識上的片面和不足,各方面的條件影響也好多,本設(shè)計(jì)還有待進(jìn)一步的完滿和優(yōu)化,這些在今后的學(xué)習(xí)中要側(cè)重積累。第六部分主要程序#include#include#defineuintunsig
5、nedint#defineucharunsignedchar#definedelayNOP()_nop_();_nop_();_nop_();_nop_();/_nop_()為一個(gè)機(jī)器周期sbitDQ=P33;sbitLCD_RS=P20;sbitLCD_RW=P21;sbitLCD_EN=P22;ucharcodeTemp_Disp_Title1=NowTemperature:;/液晶第一行顯示的字符ucharTemp_Display_Title2=TEMP:;/第二行前半部分顯示的字符ucharcodeTemperature_Char8=0 x0c,0 x12,0 x12,0 x0c,0
6、x00,0 x00,0 x00,0 x00;ucharcodedf_Table=0,1,1,2,3,3,4,4,5,6,6,7,8,8,9,9;ucharCurrentT=0;ucharTL,TH;ucharDisplay_Digit=0,0,0,0;bitDS18B20_IS_OK=1;voidDelayXus(uintx)uchari;while(x-)for(i=0;i200;i+);bitLCD_Busy_Check()/對LCD進(jìn)行讀寫狀態(tài)檢測bitresult;LCD_RS=0;LCD_RW=1;LCD_EN=1;delayNOP();result=(bit)(P0&0 x80);
7、LCD_EN=0;returnresult;voidWrite_LCD_Command(ucharcmd)/LCD寫指令函數(shù)while(LCD_Busy_Check();/當(dāng)LCD_Busy_Check為1時(shí)LCD_RS=0;LCD_RW=0;LCD_EN=0;_nop_();_nop_();P0=cmd;delayNOP();LCD_EN=1;delayNOP();LCD_EN=0;voidWrite_LCD_Data(uchardat)/LCD寫數(shù)據(jù)函數(shù)while(LCD_Busy_Check();LCD_RS=1;LCD_RW=0;LCD_EN=0;P0=dat;delayNOP();L
8、CD_EN=1;delayNOP();LCD_EN=0;voidLCD_Initialise()/LCD初始化程序Write_LCD_Command(0 x01);/顯示清屏DelayXus(5);Write_LCD_Command(0 x38);/顯示模式設(shè)置DelayXus(5);Write_LCD_Command(0 x0c);/不顯示光標(biāo)DelayXus(5);Write_LCD_Command(0 x06);/當(dāng)寫一個(gè)字符時(shí)整屏顯示不搬動DelayXus(5);voidSet_LCD_POS(ucharpos)/設(shè)置LCD地址Write_LCD_Command(pos|0 x80);
9、voidDelay(uintx)while(-x);ucharInit_DS18B20()/初始化溫度傳感器,依照時(shí)序圖操作命令ucharstatus;DQ=1;/將數(shù)據(jù)線電平拉高Delay(8);/延時(shí)約8us再將DQ=0;Delay(90);/延時(shí)360usDQ拉低DQ=1;/Delay(8);/釋放數(shù)據(jù)線,將數(shù)據(jù)線拉高延時(shí)32usDQ=1;Delay(60);returnstatus;/返回檢測ucharReadOneByte()/讀時(shí)序uchari;uchardat=0;/儲藏讀出的一個(gè)字節(jié)數(shù)據(jù)DQ=1;/先將數(shù)據(jù)線拉高_(dá)nop_();/等待一個(gè)機(jī)器周期for(i=0;i=1;DQ=1
10、;_nop_();_nop_();if(DQ)dat|=0X80;Delay(30);DQ=1;returndat;voidWriteOneByte(uchardat)/寫時(shí)序操作uchari;for(i=0;i=1;voidRead_Temperature()/讀取溫度函數(shù)if(Init_DS18B20()=1)/若是Init_DS18B20()=1,需要連續(xù)檢測DS18B20_IS_OK=0;else/若是Init_DS18B20()!=1時(shí)WriteOneByte(0 xcc);/WriteOneByte(0 x44);/跳過讀序列號操作啟動溫度裝換Init_DS18B20();/初始化
11、DS18B20WriteOneByte(0 xcc);/跳過讀序列號操作WriteOneByte(0 xbe);/讀取溫度寄存器,前兩個(gè)分別是溫度的高位和低位TL=ReadOneByte();TH=ReadOneByte();DS18B20_IS_OK=1;voidDisplay_Temperature()/顯示溫度函數(shù)uchari;uchart=150,ng=0;if(TH&0 xf8)=0 xf8)/符號位是5個(gè)1,此時(shí)為負(fù)溫度TL=TL;TH=TH+1;if(TL=0 x00)TH+;ng=1;Display_Digit0=df_TableTL&0 x0f;CurrentT=(TL&0
12、xf0)4)|(TH&0 x07)4);Display_Digit3=CurrentT/100;Display_Digit2=CurrentT%100/10;Display_Digit1=CurrentT%10;Temp_Display_Title211=Display_Digit0+0;Temp_Display_Title210=.;Temp_Display_Title29Temp_Display_Title28Temp_Display_Title27if(Display_Digit3=0)=Display_Digit1+0;=Display_Digit2+0;=Display_Digit3
13、+0;Temp_Display_Title27=;if(Display_Digit2=0&Display_Digit3=0)Temp_Display_Title28=;if(ng)if(Temp_Display_Title28Temp_Display_Title28elseif(Temp_Display_Title27Temp_Display_Title27=)=-;=)=-;elseTemp_Display_Title26=-;Set_LCD_POS(0 x00);for(i=0;i16;i+)Write_LCD_Data(Temp_Disp_Title1i);Set_LCD_POS(0 x40);for(i=0;i16;i+)Write_LCD_Data(Temp_Display_Title2i);Set_LCD_POS(0 x4d);Wri
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 人教版八年級物理上冊《第五章透鏡及其應(yīng)用》章末測試卷含答案
- 高一化學(xué)達(dá)標(biāo)訓(xùn)練:第二單元食品中的有機(jī)化合物
- 2024屆隨州市重點(diǎn)中學(xué)高考臨考沖刺化學(xué)試卷含解析
- 吉林省吉林市普通中學(xué)2024-2025學(xué)年高三上學(xué)期二模試題 數(shù)學(xué)
- 2024高中地理第三章自然地理環(huán)境的整體性與差異性章末知識整合學(xué)案湘教版必修1
- 2024高中物理第四章電磁感應(yīng)6互感和自感達(dá)標(biāo)作業(yè)含解析新人教版選修3-2
- 2024高考地理一輪復(fù)習(xí)專練95旅游地理含解析新人教版
- 2024高考地理一輪復(fù)習(xí)專練61森林濕地的開發(fā)和保護(hù)含解析新人教版
- 2025高考數(shù)學(xué)考二輪專題過關(guān)檢測六 解析幾何-專項(xiàng)訓(xùn)練【含答案】
- 鄉(xiāng)村建設(shè)工程施工組織設(shè)計(jì)
- 2023年高考數(shù)學(xué)專項(xiàng)練習(xí)痛點(diǎn)問題之概率統(tǒng)計(jì)經(jīng)典解答題含解析
- 物業(yè)管理勞務(wù)外包合同范本
- 消費(fèi)者心理與行為分析PPT(第四版)完整全套教學(xué)課件
- 《財(cái)務(wù)共享實(shí)務(wù)》課程期末考試題庫及答案
- 小學(xué)四年級語文下冊全書背誦內(nèi)容
- 新能源汽車技術(shù)高水平專業(yè)群建設(shè)項(xiàng)目建設(shè)方案
- ncv65系列安裝金盤5發(fā)版說明
- 國能神皖安慶發(fā)電有限責(zé)任公司廠內(nèi)108MW-108MWh儲能項(xiàng)目環(huán)境影響報(bào)告表
- 華中師大《線性代數(shù)》練習(xí)測試題庫及答案4096
- 2023-2024人教版小學(xué)2二年級數(shù)學(xué)下冊(全冊)教案【新教材】
- 小學(xué)奧數(shù)基礎(chǔ)教程(附練習(xí)題和答案)
評論
0/150
提交評論