電子溫度計設(shè)計與調(diào)試實驗報告_第1頁
電子溫度計設(shè)計與調(diào)試實驗報告_第2頁
電子溫度計設(shè)計與調(diào)試實驗報告_第3頁
電子溫度計設(shè)計與調(diào)試實驗報告_第4頁
電子溫度計設(shè)計與調(diào)試實驗報告_第5頁
已閱讀5頁,還剩4頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

黃淮學院綜合實驗報告單片機課程設(shè)計學生姓名: 學 號: , 所在院(系):電子科學與工程系 班 級:電子科學與技術(shù)1201B班專 業(yè): 電子科學與技術(shù) 指導老師: 實驗題目:電子溫度計設(shè)計與調(diào)試實驗一、實驗要求與目的 1、設(shè)計要求1、了解一線總線技術(shù)在單片機系統(tǒng)中的應(yīng)用。 2、熟悉數(shù)字溫度傳感器DS18B20擴展接口和編程方法。3、掌握單片機應(yīng)用系統(tǒng)開發(fā)步驟和方法。 2、實驗?zāi)康?、利用Proteus軟件設(shè)計仿真電路原理圖。2、系統(tǒng)控制能夠完成:(1)每隔1s,讀取溫度傳感器數(shù)據(jù),并轉(zhuǎn)換結(jié)果從串口送到虛擬終端顯示。(2)設(shè)計一溫度報警電路,當溫度20或28時,有聲、光、文字提示。要求上限報警和下限報警具有明顯的區(qū)別。報警器件選擇建議:聲-蜂鳴器;光-LED;文字-LED顯示器或LCD顯示器。2、 實驗原理 實驗電路原理圖: AT89C51是一種帶4K字節(jié)FLASH存儲器的低電壓、高性能CMOS 8位微處理器,俗稱單片機;8重達林頓反相驅(qū)動器ULN2803包含8個NPN達林頓管,是一種大功率驅(qū)動芯片,多用于智能儀器、PLC、步進電機控制,具有工作電壓高,電路增益高,可以提供大功率負載的特點,適應(yīng)于各種功率驅(qū)動電路;數(shù)碼管顯示模塊能顯示電機的轉(zhuǎn)速和電機的運動趨勢,方便直觀。 軟件主要模塊流程圖: 3、 設(shè)計思路本數(shù)字溫度計設(shè)計采用美國DALLAS半導體公司繼DS1820之后推出的一種改進型智能溫度傳感器DS18B20作為檢測元件,測溫范圍為-55125,最高分辨率可達0.0625。DS18B20可以直接讀出被測溫度值,而且采用三線制與單片機相連,減少了外部的硬件電路,具有低成本和易使用的熱點。單片機89C52是本設(shè)計中的控制核心,是一個40管腳的集成芯片構(gòu)成。引腳部分:單片機引腳基本電路部分與普通設(shè)計無異,40腳接Vcc+5V,20腳接地。X1,X2兩腳接12MHZ的晶振,可得單片機機器周期為1微秒。RST腳外延一個RST復位鍵,一端通過10K電阻接Vcc,一端通過10K電阻接地。AT89S52是一種低功耗、高性能的8位CMOS微控制器,具有8K的可編程Flash 存儲器。DS18B20的讀寫時序和測溫原理與DS1820相同,只是得到的溫度值的位數(shù)因分辨率不同而不同,且溫度轉(zhuǎn)換時的延時時間由2s 減為750ms。 DS18B20測溫原理:低溫度系數(shù)晶振的振蕩頻率受溫度影響很小。四、實驗內(nèi)容1、打開ISIS 7 Professional,參照按照實驗要求設(shè)計仿真電路原理圖。2、編寫程序?qū)崿F(xiàn):DS18B20的讀寫系統(tǒng)控制。 5、 實驗數(shù)據(jù)記錄 開始時 調(diào)到10時調(diào)到30時調(diào)到60時編寫的程序如下:#include #include #define uchar unsigned char#define uint unsigned intsbit DQ=P27;uchar T;uchar code table=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f;void delay1(uint z)uint x,y;for(x=z;x0;x-)for(y=110;y0;y-);void delay(uint N)/廷遲時間為(24+N*16)usint i;for(i=0;iN;i+);/*void init()bit flag=1;while (flag)while (flag) DQ = 1;_nop_(); DQ = 0; delay(50); DQ = 1; delay(3); flag = DQ; delay(10); flag = DQ;DQ=1;/* 兩個初始換 都可以/*/void init()DQ=1;delay(0);DQ=0;delay(50); /廷遲24+50*16=824usDQ=1;delay(3); /48usdelay(10); /184usDQ=1;void write(uchar date)uint i;for (i=0; i= 1; /右移一位 uchar read()uint i, value=0;DQ=1;_nop_(); /一個機器周期:(1/11.0952(即晶振頻率)*12=1.085us for (i=0; i1; /15us 之內(nèi)必須讀完一位DQ = 0; /設(shè)i=0 :value=0101 0101 1 得到:0010 1010_nop_(); / 讀到的DQ=1,0010 10101000 0000=1010 1010_nop_(); / i=1: value=01010101 DQ = 1; /讀到的DQ=0, value=01010101 _nop_(); /i=2: value=0010 1010 _nop_(); if (DQ) /先讀最低位 value|=0x80;delay(2); / 56us DQ=1; return(value);void display(uchar num)uchar a,b;a=num/10;b=num%10;P0=tablea;P2=0xfe;delay1(5);P2=0xff; delay1(5); P0=tableb;P2=0xfd;delay1(5);P2=0xff; delay1(5);uchar read_wen_du()uchar HB,LB,temp;init();/ 復位write(0xcc); / 跳過ROM 即不必讀64位序列號的ROMwrite(0x44); / 啟動溫度轉(zhuǎn)換init();write(0xcc);/ 跳過ROM 即不必讀64位序列號的ROMwrite(0xbe);/ 讀命令LB=read(); / 低八位 1011 1010HB=read(); / 高八位 1111 1010HB=HB4; / (LB&0xF0)=1011 0000 4 :0000 1011 +HB :1010 1011temp=HB;return temp; / 返回溫度值 void main()while(1)T=read_wen_du();display(T);六、實驗總結(jié)通過本次試驗我進一步了解了一線總線技術(shù)在單片機系統(tǒng)中的應(yīng)用,并熟悉了數(shù)字溫度傳感器DS18B20擴展接口和編程方法。同時掌握了單片機應(yīng)用系統(tǒng)開發(fā)步驟和方法。然后利用其操作方法進行并完成了電子溫度計設(shè)計與調(diào)試實驗。7、 實驗心得通過

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論