【正文】
B20就對低溫度系數(shù)振蕩器產(chǎn)生的時(shí)鐘脈沖進(jìn)行計(jì)數(shù)進(jìn)而完成溫度測量。(也可采用發(fā)光二級(jí)管報(bào)警電路,如過需要報(bào)警,則只需將相應(yīng)位置1,當(dāng)參數(shù)判斷完畢后,再看報(bào)警模型單元ALARM 的內(nèi)容是否與預(yù)設(shè)一樣,如不一樣,則發(fā)光報(bào)警)報(bào)警電路硬件連接見圖。 好的測試方案是極可能發(fā)現(xiàn)迄今為止尚未發(fā)現(xiàn)的錯(cuò)誤的測試方案;216。最后在單片機(jī)開發(fā)板上進(jìn)行測試,經(jīng)過觀測實(shí)驗(yàn)現(xiàn)象與結(jié)果,本設(shè)計(jì)達(dá)到設(shè)計(jì)要求。sbit DQ = P2^3。 for(i=0。 E = 0。 write(sign)。 delay(3)。 m = 1。 for(i=200。 TMPL = read_byte()。 table[0]=table[0]+0x30。 delay(200)。 if(key==0) { min++。 L1602_char(2,5,table1[1])。 L1602_init()。 }}}/*****************************中斷函數(shù),對溫度下限調(diào)整******************/alert1()interrupt 2{ ulong m。 L1602_char(2,6,table1[1])。 L1602_char(2,2,table[1])。 write_byte(start)。 0x01。if(bitval==1)DQ=1。 }}/********************************************************************* 名稱 : Reset()* 功能 : 復(fù)位DS18B20* 輸入 : 無* 輸出 : 無***********************************************************************/uchar Reset(void){ uchar deceive_ready。 if(hang == 1) a = 0x80。 delay(1)。 iN。在此,非常感謝老師的啟蒙和教導(dǎo)。這一期的課程設(shè)計(jì)我早已經(jīng)做好了充分的準(zhǔn)備。 顯示數(shù)據(jù)刷新子程序顯示數(shù)據(jù)刷新子程序主要是對分離后的溫度顯示數(shù)據(jù)進(jìn)行刷新操作,當(dāng)標(biāo)志位位為1時(shí)將符號(hào)顯示位移入第一位。其中有兩個(gè)是用于選擇切換設(shè)置報(bào)警上下限溫度,另外兩個(gè)分別用于設(shè)置報(bào)警溫度的加和減。因此,可用多只DS18B20同時(shí)測量溫度并進(jìn)行報(bào)警搜索。DS18B20溫度傳感器的內(nèi)部存儲(chǔ)器還包括一個(gè)高速暫存RAM和一個(gè)非易失性的可電擦除的E2PROM。圖 熱敏電阻 方案三采用鉑電阻,其優(yōu)點(diǎn)是測量精度高,測量范圍廣,但同時(shí)也存在缺點(diǎn):熱響應(yīng)慢,且成本很高。然后用文本編輯器(如EDIT、CCED等)編寫軟件,編寫好后,用編譯器對源程序文件編譯,查錯(cuò),直到?jīng)]有語法錯(cuò)誤,除了極簡單的程序外,一般應(yīng)用仿真機(jī)對軟件進(jìn)行調(diào)試,直到程序運(yùn)行正確為止。 單片機(jī)芯片 各類單片機(jī)應(yīng)用芯片 由此來看,單片機(jī)有著微處理器所不具備的功能,它可單獨(dú)地完成現(xiàn)代工業(yè)控制所要求的智能化控制功能,這是單片機(jī)最大的特征。隨著時(shí)代的進(jìn)步和發(fā)展,單片機(jī)技術(shù)已經(jīng)普及到我們生活、工作、科研、各個(gè)領(lǐng)域,已經(jīng)成為一種比較成熟的技術(shù)。單片機(jī)由芯片內(nèi)僅有CPU的專用處理器發(fā)展而來。所以新世紀(jì)的工科大學(xué)生既要掌握通用微機(jī),又要掌握“單片機(jī)”。這里所說的開發(fā)過程[3]并不是一般書中所說的從任務(wù)分析開始,我們假設(shè)已設(shè)計(jì)并制作好硬件,下面就是編寫軟件的工作。通過將參考終點(diǎn)保持在抑制溫度并測量該電壓,便可推斷出檢測結(jié)點(diǎn)的溫度,數(shù)據(jù)采集部分則由帶有A/D通道的單片機(jī),在將隨被測溫度變化的電壓或者電流采集過來,進(jìn)行A/D轉(zhuǎn)換后,就可以用單片機(jī)進(jìn)行數(shù)據(jù)處理,在顯示電路上,就可以將被測溫度顯示出來。 DS18B20的內(nèi)部結(jié)構(gòu)DS18B20采用3腳PR-35封裝或8腳SOIC封裝。當(dāng)符號(hào)位S=0時(shí),表示測得的溫度值為正值,可以直接將二進(jìn)制位轉(zhuǎn)換為十進(jìn)制;當(dāng)符號(hào)位S=1時(shí),表示測得的溫度值為負(fù)值,要先將補(bǔ)碼變成原碼,再計(jì)算十進(jìn)制數(shù)值。采用寄生電源供電方式時(shí)VDD端接地。 主程序發(fā)DS18B20復(fù)位命令發(fā)跳過ROM命令發(fā)讀取溫度命令讀取操作,CRC校驗(yàn)9字節(jié)完?CRC校驗(yàn)正?確?移入溫度暫存器結(jié)束 NNYY啟動(dòng)系統(tǒng)初始化DS18B20跳過ROM發(fā)出溫度轉(zhuǎn)換命令并讀取溫度值顯示溫度值溫度是否超過上下限聲音報(bào)警YN 圖 主程序圖 讀溫度流程圖 讀出溫度子程序讀出溫度子程序的主要功能是讀出RAM中的9字節(jié),在讀出時(shí)需進(jìn)行CRC校驗(yàn),校驗(yàn)有錯(cuò)時(shí)不進(jìn)行溫度數(shù)據(jù)的改寫。(5)按下調(diào)整下限按鍵,進(jìn)入下限調(diào)節(jié)界面,通過調(diào)節(jié)加減按鍵,可以對溫度下限進(jìn)行調(diào)節(jié)通過以上測試,設(shè)計(jì)符合預(yù)期要求。此次的任務(wù)是數(shù)字溫度計(jì)的設(shè)計(jì),而在此之前已經(jīng)有很多人研究過了,我們要參考他們的想法,擔(dān)有些地方我們也要勇敢的跳出他們的框架,結(jié)合我們的實(shí)際情況進(jìn)行分析設(shè)計(jì),思想不局限于前人。min=10。 E = 0。}/********************************************************************* 名稱 : L1602_char(uchar hang,uchar lie,char sign)* 功能 : 改變液晶中某位的值,如果要讓第一行,第五個(gè)字符顯示b ,調(diào)用該函數(shù)如下 L1602_char(1,5,39。) break。 i++)。 i8。 EA=1。 table[2]= temp/10%10+0x30。 L1602_string(1,1,warning)。 L1602_char(2,7,table1[0])。 delay(200)。 while(P1==0x77)。 L1602_string(2,1,low=)。 L1602_init()。 }}/*****************************中斷函數(shù),對溫度上限調(diào)整******************/void alert2()interrupt 0{ ulong m。0x0f。 delay(2)。 i8。 return(deceive_ready)。 if(hang == 1) a = 0x80。 delay(1)。 0x01。 //1602使能引腳sbit RW=P2^6。程序只有在經(jīng)常寫與讀的過程中才能提高。正確認(rèn)識(shí)測試是非常重要的,測試目標(biāo)決定了試也是有價(jià)值的,完整的測試是評定測試質(zhì)量的一種。二是執(zhí)行軟件(子程序),它是用來完成各種實(shí)質(zhì)性的功能如測量、計(jì)算、顯示、通訊等。其輸出用于修正減法計(jì)數(shù)器的預(yù)置值,只要計(jì)數(shù)器門仍未關(guān)閉就重復(fù)上述過程,直到溫度寄存器值大致被測溫度值。因此,在實(shí)際應(yīng)用中要將分辨率和轉(zhuǎn)換時(shí)間權(quán)衡考慮。復(fù)位電路采用上電結(jié)合按鈕復(fù)位。 可以任意設(shè)置上下限溫度的報(bào)警功能;178。用單片機(jī)可以構(gòu)成形式多樣的控制系統(tǒng)、數(shù)據(jù)采集系統(tǒng)。關(guān)鍵字:單片機(jī);數(shù)字溫度計(jì);STC89C52;DS18B20;PROTEUS;Abstract:The monolithic integrated circuit has the volume small, the power loss low, the control function strong, the expansion nimble, merits and so on microminiaturization and easy to operate, widely applies in the instrument measuring appliance, the union different type sensor, may realize such as physical quantity and so on voltage, power, frequency, humidity, temperature, current capacity, speed, thickness, angle, length, degree of hardness, element, pressure curriculum design was in studies in the monolithic integrated circuit basic principle to carry on, the prehensive utilization studied the monolithic integrated circuit knowledge to plete a monolithic integrated circuit application system design.This article mainly introduced based on the 89S52 monolithic integrated circuit temperature measurement system, in detail described the use numeral temperature sensor DS18B20 development temperature measurement system process, key to the sensor under monolithic integrated circuit hardware connection, the software programming as well as various modules system flow has carried on the exhaustive analysis, 11 has also carried on the introduction to various part of electric circuits, This system may facilitate realization temperature gathering and the demonstration, and may according to need to establish