課程設計-基于單片機的數(shù)字溫度計課程設計_第1頁
已閱讀1頁,還剩24頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p><b>  摘 要</b></p><p>  溫度的檢測與控制是工業(yè)生產(chǎn)過程中比較典型的應用。本設計以AT89C52單片機為核心,采用DS18B20溫度傳感器檢測溫度,由溫度采集、溫度顯示,溫度報警等功能模塊組成?;陬}目基本要求,本系統(tǒng)對溫度采集和溫度顯示系統(tǒng)行了重點設計。本系統(tǒng)大部分功能能由軟件實現(xiàn),吸收了硬件軟件化的思想。實際操作時,各功能在開發(fā)板上也能完美實現(xiàn)。

2、本系統(tǒng)實現(xiàn)了要求的基本功能,其余發(fā)揮部分也能實現(xiàn)。</p><p>  關鍵字:AT89C52單片機、DS18B20溫度傳感器、數(shù)碼管顯示、溫度采集</p><p><b>  目 錄</b></p><p><b>  一.緒論</b></p><p><b>  二.設計目的&l

3、t;/b></p><p><b>  三.設計要求</b></p><p><b>  四.設計思路</b></p><p>  五.系統(tǒng)的硬件構成及功能</p><p><b>  5.1主控制器</b></p><p><b&g

4、t;  5.2顯示電路</b></p><p><b>  5.3溫度傳感器</b></p><p>  六.系統(tǒng)整體硬件電路</p><p><b>  七.系統(tǒng)程序設計</b></p><p>  八.測量及其結果分析</p><p><b&g

5、t;  九.設計心得體會</b></p><p><b>  十.參考文獻</b></p><p><b>  附錄1 源程序</b></p><p>  附錄2 元件清單及PCB圖</p><p><b>  一.緒 論</b></p><

6、p>  隨著時代的發(fā)展,控制智能化,儀器小型化,功耗微量化得到廣泛關注。單片機控制系統(tǒng)無疑在這些忙面起到了舉足輕重的作用。單片機的應用系統(tǒng)設計業(yè)已成為新的技術熱點,其中數(shù)字溫度計就是一個典型的例子。 </p><p>  人民的生活與環(huán)境的溫度息息相關,在工業(yè)生產(chǎn)過程中需要實時測量溫度,在農(nóng)業(yè)生產(chǎn)中也離不開溫度的測量,因此研究溫度的測量方法和裝置具有重要的意義。</p><p&

7、gt;  測量溫度的關鍵是溫度傳感器,溫度傳感器的發(fā)展經(jīng)歷了三個發(fā)展階段:</p><p> ?、賯鹘y(tǒng)的分立式溫度傳感器</p><p> ?、谀M集成溫度傳感器</p><p> ?、壑悄芗蓽囟葌鞲衅?。</p><p>  目前的智能溫度傳感器(亦稱數(shù)字溫度傳感器)是在20世紀90年代中期問世的,它是微電子技術、計算機技術和自動測試技術(

8、ATE)的結晶,特點是能輸出溫度數(shù)據(jù)及相關的溫度控制量,適配各種微控制器(MCU)。社會的發(fā)展使人們對傳感器的要求也越來越高,現(xiàn)在的溫度傳感器正在基于單片機的基礎上從模擬式向數(shù)字式,從集成化向智能化、網(wǎng)絡化的方向飛速發(fā)展,并朝著高精度、多功能、總線標準化、高可靠性及安全性、開發(fā)虛擬傳感器和網(wǎng)絡傳感器、研制單片測溫系統(tǒng)等高科技的方向迅速發(fā)展,與傳統(tǒng)的溫度計相比,其具有讀數(shù)方便,測溫范圍廣,測溫準確,輸出溫度采用數(shù)字顯示,主要用于對測溫要求

9、比較準確的場所,或科研實驗室使用。該設計控制器使用ATMEL公司的AT89C52單片機,測溫傳感器使用DALLAS公司DS18B20,用數(shù)碼管來實現(xiàn)溫度顯示。</p><p><b>  二.設計目的</b></p><p>  1.理解掌握MCS-51系列單片機的功能和實際應用。</p><p>  2.掌握仿真開發(fā)軟件的使用。</p&

10、gt;<p>  3.掌握數(shù)字式溫度計電路的設計、組裝與調試方法。</p><p><b>  三.設計要求</b></p><p>  1.以MCS-51系列單片機為核心器件,組成一個數(shù)字式溫度計。</p><p>  2.采用數(shù)字式溫度傳感器為檢測器件,進行單點溫度檢測,檢測精度為0.5</p><p>

11、;  3.溫度顯示采用4位LED數(shù)碼管顯示,三位整數(shù),一位小數(shù)。</p><p>  4.具有鍵盤輸入上下限功能,超過上下限溫度時,進行聲音報警。</p><p><b>  四.設計思路</b></p><p>  1.根據(jù)設計要求,選擇AT89C52單片機為核心器件。</p><p>  2.溫度檢測器件采用DS18

12、B20數(shù)字式溫度傳感器。與單片機的接口為P3.6引腳。</p><p>  3.鍵盤采用獨立式按鍵,由三個按鍵組成,分別是:設置鍵(SET),加一建(+1),確認鍵(RET)。</p><p>  SET鍵(上下限溫度設置鍵):當該鍵按下時,進入上下限溫度設置功能。通過P3.1引腳接入。</p><p>  +1鍵(加一調整鍵):在輸入上下限溫度時,該鍵按下一次,被

13、調整位加一。通過P3.2引腳接入。</p><p>  RET鍵(確認鍵):當該鍵按下時,指向下一個要調整的位。通過P3.3引腳接入。</p><p>  4.聲音報警蜂鳴器通過P1.7引腳接入。</p><p>  硬件電路設計總體框圖為圖4.1:</p><p><b>  圖4.1</b></p>&

14、lt;p>  五、系統(tǒng)的硬件構成及功能</p><p><b>  1.主控制器</b></p><p>  單片機AT89S52具有低電壓供電和體積小等特點,四個端口只需要兩個口就能滿足電路系統(tǒng)的設計需要,使用Atmel公司高密度非易失性存儲器技術制造,與工業(yè)80C51產(chǎn)品指令和引腳完全兼容。片上Flash允許程序存儲器在系統(tǒng)可編程,亦適于常規(guī)編程器。很適合便

15、攜手持式產(chǎn)品的設計使用。</p><p>  AT89S52在仿真軟件中的圖像為圖5.1</p><p><b>  圖5.1</b></p><p><b>  2.顯示電路</b></p><p>  顯示電路采用四位共陽LED數(shù)碼管,從P3口RXD,TXD串口輸出段碼。</p>

16、<p>  LED數(shù)碼管在仿真軟件中如圖5.2</p><p><b>  圖5.2</b></p><p><b>  3.溫度傳感器</b></p><p>  DS18B20是美國DALLAS半導體公司最新推出的一種改進型智能溫度傳感器,與傳統(tǒng)的熱敏電阻等測溫元件相比,它能直接讀出被測溫度,并且可根據(jù)實際要

17、求通過簡單的編程實現(xiàn)9~12位的數(shù)字值讀數(shù)方式。DS18B20的性能特點如下:</p><p>  ? 獨特的單線接口僅需一個端口引腳進行通訊</p><p>  ? 簡單的多點分布應用</p><p><b>  ? 無需外部器件</b></p><p>  ? 可通過數(shù)據(jù)線供電</p><p>

18、;<b>  ? 零待機功耗</b></p><p>  ? 測溫范圍-55~+125℃,以0.5℃遞增。華氏器件-67~+2570F,以0.90F 遞增</p><p>  ? 溫度以9 位數(shù)字量讀出</p><p>  ? 溫度數(shù)字量轉換時間200ms(典型值)</p><p>  ? 用戶可定義的非易失性溫度報警設

19、置</p><p>  ? 報警搜索命令識別并標志超過程序限定溫度(溫度報警條件)的器件。</p><p>  DS18B20內(nèi)部結構主要由四部分組成:64位光刻ROM、溫度傳感器、非揮發(fā)的溫度報警觸發(fā)器TH和TL、配置寄存器。DS18B20的管腳排列、各種封裝形式如圖 3.3.1所示,DQ 為數(shù)據(jù)輸入/輸出引腳。開漏單總線接口引腳。當被用著在寄生電源下,也可以向器件提供電源;GND為地信

20、號;VDD為可選擇的VDD引腳。當工作于寄生電源時,此引腳必須接地。其電路圖如圖5.3.1所示.。 </p><p>  圖5.3.1 外部封裝形式 </p><p>  在仿真軟件中如圖5.3.2所示</p><p><b>  圖5.3.2</b></p><p>

21、  DS18B20的測溫原理如圖5.3.3所示,圖中低溫度系數(shù)晶振的振蕩頻率受溫度的影響很小用于產(chǎn)生固定頻率的脈沖信號送給減法計數(shù)器1,高溫度系數(shù)晶振隨溫度變化其震蕩頻率明顯改變,所產(chǎn)生的信號作為減法計數(shù)器2的脈沖輸入,圖中還隱含著計數(shù)門,當計數(shù)門打開時,DS18B20就對低溫度系數(shù)振蕩器產(chǎn)生的時鐘脈沖后進行計數(shù),進而完成溫度測量.計數(shù)門的開啟時間由高溫度系數(shù)振蕩器來決定,每次測量前,首先將-55 ℃所對應的基數(shù)分別置入減法計數(shù)器1和溫

22、度寄存器中,減法計數(shù)器1和溫度寄存器被預置在-55 ℃所對應的一個基數(shù)值。</p><p>  減法計數(shù)器1對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進行減法計數(shù),當減法計數(shù)器1的預置值減到0時溫度寄存器的值將加1,減法計數(shù)器 1的預置將重新被裝入,減法計數(shù)器1重新開始對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進行計數(shù),如此循環(huán)直到減法計數(shù)器2計數(shù)到0時,停止溫度寄存器值的累加,此時溫度寄存器中的數(shù)值即為所測溫圖5.3.3中的斜率累加器

23、用于補償和修正測溫過程中的非線性其輸出用,于修正減法計數(shù)器的預置值,只要計數(shù)門仍未關閉就重復上述過程,直至溫度寄存器值達到被測溫度值,這就是DS18B20的測溫原理。</p><p>  另外,由于DS18B20單線通信功能是分時完成的,有嚴格的時隙概念,因此讀寫時序很重要。系統(tǒng)對DS18B20的各種操作必須按協(xié)議進行。操作協(xié)議為:初始化DS18B20(發(fā)復位脈沖)→發(fā)ROM功能命令→發(fā)存儲器操作命令→處理數(shù)據(jù)。

24、</p><p><b>  圖5.3.3 </b></p><p>  在正常測溫情況下,DS1820的測溫分辨力為0.5℃,可采用下述方法獲得高分辨率的溫度測量結果:首先用DS1820提供的讀暫存器指令(BEH)讀出以0.5℃為分辨率的溫度測量結果,然后切去測量結果中的最低有效位(LSB),得到所測實際溫度的整數(shù)部分Tz,然后再用BEH指令取計數(shù)器1的計數(shù)剩余值

25、Cs和每度計數(shù)值CD。考慮到DS1820測量溫度的整數(shù)部分以0.25℃、0.75℃為進位界限的關系,實際溫度Ts可用下式計算:</p><p>  表1.部分溫度值對應的二進制溫度數(shù)據(jù)。</p><p>  六.系統(tǒng)整體硬件電路</p><p>  根據(jù)設計要求與設計思路,硬件電路設計框圖如圖6.1所示,在仿真軟件Proteus上完成。其中LED數(shù)碼管以動態(tài)掃描法實

26、現(xiàn)溫度顯示,由四個PNP型晶體管Q2,Q3,Q4,Q5和八個電阻組成,基極與單片機的P1.0,P1.1,P1.2連接。DS18B20的數(shù)據(jù)I/O端與單片機P3.6引腳連接。外部晶振為12MHz。蜂鳴器通過Q1放大后與引腳P1.7相連。</p><p>  圖中有三個獨立式按鍵可以分別調整溫度計的上下限報警設置,圖中蜂鳴器可以在被測溫度不在上下限范圍內(nèi)時,發(fā)出報警鳴叫聲音,同時LED數(shù)碼管將沒有被測溫度值顯示,這時

27、可以調整報警上下限,從而測出被測的溫度值。圖中的按健復位電路是上電復位加手動復位,使用比較方便,在程序跑飛時,可以手動復位,這樣就不用在重起單片機電源,就可以實現(xiàn)復位。</p><p>  圖6.1系統(tǒng)總體硬件電路</p><p><b>  七.系統(tǒng)程序設計</b></p><p>  數(shù)字式溫度計的應用程序主要包括主程序,溫度檢測程序,溫度

28、轉換程序, LED顯示程序等。</p><p>  系統(tǒng)的主程序主要用來初始化一些系統(tǒng)參數(shù),對DS18B20的配置數(shù)據(jù)進行一系列的設定。溫度檢測程序是對DS18B20的狀態(tài)不斷地查詢,讀出RAM中的9字節(jié),在讀出時需進行CRC校驗,校驗有錯時不進行溫度數(shù)據(jù)的改寫,讀取當前的溫度值后,進行溫度轉化程序,對溫度符號處理和溫度值的BCD碼處理,進行溫度值正負的判定,將其段碼送至顯示緩沖區(qū),以備定時掃描服務程序處理。LE

29、D顯示程序主要對顯示緩沖器中的顯示數(shù)據(jù)進行刷新操作,當最高顯示位為0時,將符號顯示位移入下一位??偝绦虺绦虼a見附錄一</p><p>  八.測量及其結果分析</p><p>  1.Proteus仿真結果</p><p>  軟件方面,在Proteus編譯下進行,源程序編譯及仿真調試。</p><p>  在軟件中選定傳感器后可對其進行環(huán)

30、境溫度設置,如圖8.1.1,將環(huán)境溫度設為34.9。</p><p><b>  圖8.1.1</b></p><p>  然后點擊軟件執(zhí)行鍵,按操作步驟實施后,觀察LED數(shù)碼管示數(shù),此時示數(shù)如圖8.1.2。</p><p><b>  圖8.1.2</b></p><p>  可見本次軟件測試結果

31、良好。</p><p><b>  2.硬件測試結果</b></p><p>  在硬件測試方面,檢查電路板及焊接的質量情況,在檢查無誤后通電檢查LED顯示器。</p><p>  其中 DS18B20實物圖為8.2.1</p><p>  在室溫下,LED顯示器示數(shù)如圖8.2.2,為26.4攝氏度</p>

32、<p><b>  圖8.2.2</b></p><p>  用手蓋住溫度傳感器后,LED顯示器示數(shù)如圖8.2.3,為29.7攝氏度。</p><p>  比較可知,硬件調試結果也達到了要求。</p><p><b>  九.設計心得體會</b></p><p>  本次課設對我來說是一

33、次難得的經(jīng)歷,首先是第一次接觸了仿真軟件Proteus,在使用時經(jīng)歷了很多次失敗,因為這款軟件與以前使用的各種軟件有很多不同,使用時不停出錯,接線時由于元件放置不合理而接的雜亂無章;輸入源程序時還較為順利,顯示結果比較滿意。其次是程序設計,我們在參考別人成功先例的基礎上根據(jù)自己設計的需要編制程序,其中歷經(jīng)不少曲折,最后我的收獲是,編程一定要細心,針對每一個細節(jié),稍有疏忽,程序就不能正常工作。最后是單片機實踐操作,由于我自己已買了一塊開發(fā)

34、板,所以硬件調試比較順利,效果也不錯,就是DS18B20溫度傳感器靈敏度不太高,示數(shù)變化不大。另外,我前期花了一些時間專門學習這塊芯片,了解了DS18B20的工作原理的時序圖。</p><p>  在這次的實踐與學習中,盡管期間困難重重,但我還是從中學習了不少新的知識與技能和解決困難的方法,也終于體驗到了經(jīng)歷困難到最終獲得成功的那種無以言表的喜悅之情,總之,本次課設是我收獲最多的一次,也希望自己在以后的各項研究活

35、動中能堅持這種精神。</p><p><b>  十.參考文獻</b></p><p>  [1]單片機原理與接口技術(第二版)牛昱光 李曉林 電子工業(yè)出版社. 2010.7</p><p>  [2]單片機系統(tǒng)設計與應用實例. 韓志軍 機械工業(yè)出版社. 2009.10</p><p>  [

36、3]《DS18B20數(shù)據(jù)手冊》</p><p><b>  附錄一 源程序</b></p><p>  #include <AT89X52.h></p><p>  #include "DS18B20.h" </p><p>  #define uint unsigned int<

37、;/p><p>  #define uchar unsigned char //宏定義</p><p>  #define SET P3_1 //定義調整鍵</p><p>  #define DEC P3_2 //定義減少鍵</p><p>  #define ADD P3_3 //定義增加鍵</p>

38、<p>  #define BEEP P3_7 //定義蜂鳴器</p><p>  bit shanshuo_st; //閃爍間隔標志</p><p>  bit beep_st; //蜂鳴器間隔標志</p><p>  sbit DIAN = P2^7; //小數(shù)點</p><p>  uchar x=0;

39、 //計數(shù)器</p><p>  signed char m; //溫度值全局變量</p><p>  uchar n; //溫度值全局變量</p><p>  uchar set_st=0; //狀態(tài)標志</p><p>  signed char shangxian=38; //上限報警溫度,默認值為

40、38</p><p>  signed char xiaxian=15; //下限報警溫度,默認值為5</p><p>  uchar code LEDData[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};</p><p>  /*****延時子程序*****/</p><p&

41、gt;  void Delay(uint num)</p><p><b>  {</b></p><p>  while( --num );</p><p><b>  }</b></p><p>  /*****初始化定時器0*****/</p><p>  void I

42、nitTimer(void)</p><p><b>  {</b></p><p><b>  TMOD=0x1;</b></p><p><b>  TH0=0x4c;</b></p><p>  TL0=0x00; //50ms(晶振12M)</p>

43、<p><b>  }</b></p><p>  /*****定時器0中斷服務程序*****/</p><p>  void timer0(void) interrupt 1</p><p><b>  {</b></p><p><b>  TH0=0x4c;</b&

44、gt;</p><p><b>  TL0=0x00;</b></p><p><b>  x++;</b></p><p><b>  }</b></p><p>  /*****外部中斷0服務程序*****/</p><p>  void int0(

45、void) interrupt 0</p><p><b>  {</b></p><p>  EX0=0; //關外部中斷0</p><p>  if(DEC==0&&set_st==1)</p><p><b>  {</b></p><p> 

46、 shangxian--;</p><p>  if(shangxian<xiaxian)shangxian=xiaxian;</p><p><b>  }</b></p><p>  else if(DEC==0&&set_st==2)</p><p><b>  {</b>

47、;</p><p>  xiaxian--;</p><p>  if(xiaxian<0)xiaxian=0;</p><p><b>  }</b></p><p><b>  }</b></p><p>  /*****外部中斷1服務程序*****/</p&

48、gt;<p>  void int1(void) interrupt 2</p><p><b>  {</b></p><p>  EX1=0; //關外部中斷1</p><p>  if(ADD==0&&set_st==1)</p><p><b>  {</b

49、></p><p>  shangxian++;</p><p>  if(shangxian>99)shangxian=99;</p><p><b>  }</b></p><p>  else if(ADD==0&&set_st==2)</p><p><b

50、>  {</b></p><p>  xiaxian++;</p><p>  if(xiaxian>shangxian)xiaxian=shangxian;</p><p><b>  } </b></p><p><b>  }</b></p><p

51、>  /*****讀取溫度*****/</p><p>  void check_wendu(void)</p><p><b>  {</b></p><p>  uint a,b,c;</p><p>  c=ReadTemperature()-5; //獲取溫度值并減去DS18B20的溫漂誤差</p&

52、gt;<p>  a=c/100; //計算得到十位數(shù)字</p><p>  b=c/10-a*10; //計算得到個位數(shù)字</p><p>  m=c/10; //計算得到整數(shù)位</p><p>  n=c-a*100-b*10; //計算得到小數(shù)位</p><p>  if(m<0){

53、m=0;n=0;} //設置溫度顯示上限</p><p>  if(m>99){m=99;n=9;} //設置溫度顯示上限 </p><p><b>  }</b></p><p>  /*****顯示開機初始化等待畫面*****/</p><p>  Disp_init()</p>&

54、lt;p><b>  {</b></p><p>  P2=0xbf; </p><p><b>  P1=0xfe;</b></p><p>  Delay(200);</p><p><b>  P2=0xbf;</b></p><p>&

55、lt;b>  P1=0xfd;</b></p><p>  Delay(200);</p><p><b>  P2=0xbf;</b></p><p><b>  P1=0xfb;</b></p><p>  Delay(200);</p><p><

56、;b>  P2=0xbf; </b></p><p>  P1=0xf7; //第四</p><p>  Delay(200);</p><p>  P1=0xff; //關閉顯示</p><p><b>  }</b></p><p>  /*****顯示溫度

57、子程序*****/</p><p>  Disp_Temperature() //顯示溫度</p><p><b>  {</b></p><p>  P2=0xc6; //顯示C</p><p>  P1=0xf7; //</p><p>  Delay(300

58、);</p><p>  P2=LEDData[n]; //顯示個位</p><p>  P1=0xfb; //</p><p>  Delay(300);</p><p>  P2=LEDData[m%10]; //顯示小數(shù)點</p><p><b>  DIAN=0;</b&

59、gt;</p><p><b>  P1=0xfd;</b></p><p>  Delay(300);</p><p>  P2=LEDData[m/10]; //顯示百位</p><p><b>  P1=0xfe;</b></p><p>  Delay(300)

60、;</p><p>  P1=0xff; //關閉顯示</p><p><b>  }</b></p><p>  /*****顯示報警溫度子程序*****/</p><p>  Disp_alarm(uchar baojing)</p><p><b>  {<

61、;/b></p><p>  P2=0xc6; //顯示C</p><p><b>  P1=0xf7;</b></p><p>  Delay(200);</p><p>  P2=LEDData[baojing%10]; //顯示十位</p><p><b>  P

62、1=0xfb;</b></p><p>  Delay(200);</p><p>  P2=LEDData[baojing/10]; //顯示百位</p><p><b>  P1=0xfd;</b></p><p>  Delay(200);</p><p>  if(set_s

63、t==1)P2=0x89;</p><p>  else if(set_st==2)P2=0xc7; //上限H、下限L標示</p><p><b>  P1=0xfe;</b></p><p>  Delay(200);</p><p><b>  P1=0xff;</b></p>

64、<p><b>  }</b></p><p>  /*****報警子程序*****/</p><p>  void Alarm()</p><p><b>  {</b></p><p>  if(x>=10){beep_st=~beep_st;x=0;}</p>&

65、lt;p>  if((m>=shangxian&&beep_st==1)||(m<xiaxian&&beep_st==1))BEEP=0;</p><p>  else BEEP=1;</p><p><b>  }</b></p><p>  /*****主函數(shù)*****/</p>

66、<p>  void main(void)</p><p><b>  {</b></p><p><b>  uint z;</b></p><p>  InitTimer(); //初始化定時器</p><p>  EA=1; //全局中斷開關</p>

67、<p><b>  TR0=1;</b></p><p>  ET0=1; //開啟定時器0</p><p>  IT0=1; </p><p><b>  IT1=1;</b></p><p>  check_wendu();</p><p&

68、gt;  check_wendu();</p><p>  for(z=0;z<300;z++)</p><p><b>  {</b></p><p>  Disp_init(); </p><p><b>  }</b></p><p><b&g

69、t;  while(1)</b></p><p><b>  {</b></p><p>  if(SET==0)</p><p><b>  {</b></p><p>  Delay(2000);</p><p>  do{}while(SET==0);<

70、;/p><p>  set_st++;x=0;shanshuo_st=1;</p><p>  if(set_st>2)set_st=0;</p><p><b>  }</b></p><p>  if(set_st==0)</p><p><b>  {</b><

71、/p><p>  EX0=0; //關閉外部中斷0</p><p>  EX1=0; //關閉外部中斷1</p><p>  check_wendu();</p><p>  Disp_Temperature();</p><p>  Alarm(); //報警檢測</p><p>

72、<b>  }</b></p><p>  else if(set_st==1)</p><p><b>  {</b></p><p>  BEEP=1; //關閉蜂鳴器</p><p>  EX0=1; //開啟外部中斷0</p><p>  EX1=1;

73、 //開啟外部中斷1</p><p>  if(x>=10){shanshuo_st=~shanshuo_st;x=0;}</p><p>  if(shanshuo_st) {Disp_alarm(shangxian);}</p><p><b>  }</b></p><p>  else if(set_st

74、==2)</p><p><b>  {</b></p><p>  BEEP=1; //關閉蜂鳴器</p><p>  EX0=1; //開啟外部中斷0</p><p>  EX1=1; //開啟外部中斷1</p><p>  if(x>=10){shanshuo_st=

75、~shanshuo_st;x=0;}</p><p>  if(shanshuo_st) {Disp_alarm(xiaxian);}</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p>

76、<p>  /*****END*****/</p><p>  DS18B20.h:</p><p>  #include <AT89X52.h></p><p>  #define DQ P3_6 //定義DS18B20總線I/O</p><p>  /*****延時子程序*****/</p>

77、<p>  void Delay_DS18B20(int num)</p><p><b>  {</b></p><p>  while(num--) ;</p><p><b>  }</b></p><p>  /*****初始化DS18B20*****/</p>&

78、lt;p>  void Init_DS18B20(void)</p><p><b>  {</b></p><p>  unsigned char x=0;</p><p>  DQ = 1; //DQ復位</p><p>  Delay_DS18B20(8); //稍做延時<

79、;/p><p>  DQ = 0; //單片機將DQ拉低</p><p>  Delay_DS18B20(80); //精確延時,大于480us</p><p>  DQ = 1; //拉高總線</p><p>  Delay_DS18B20(14);</p><p>

80、;  x = DQ; //稍做延時后,如果x=0則初始化成功,x=1則初始化失敗</p><p>  Delay_DS18B20(20);</p><p><b>  }</b></p><p>  /*****讀一個字節(jié)*****/</p><p>  unsigned char ReadOneCh

81、ar(void)</p><p><b>  {</b></p><p>  unsigned char i=0;</p><p>  unsigned char dat = 0;</p><p>  for (i=8;i>0;i--)</p><p><b>  {</b&

82、gt;</p><p>  DQ = 0; // 給脈沖信號</p><p><b>  dat>>=1;</b></p><p>  DQ = 1; // 給脈沖信號</p><p><b>  if(DQ)</b></p><p

83、>  dat|=0x80;</p><p>  Delay_DS18B20(4);</p><p><b>  }</b></p><p>  return(dat);</p><p><b>  }</b></p><p>  /*****寫一個字節(jié)*****/<

84、;/p><p>  void WriteOneChar(unsigned char dat)</p><p><b>  {</b></p><p>  unsigned char i=0;</p><p>  for (i=8; i>0; i--)</p><p><b>  {&l

85、t;/b></p><p><b>  DQ = 0;</b></p><p>  DQ = dat&0x01;</p><p>  Delay_DS18B20(5);</p><p><b>  DQ = 1;</b></p><p><b>  d

86、at>>=1;</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  /*****讀取溫度*****/</p><p>  int ReadTemperature(void)</p><p><

87、;b>  {</b></p><p>  unsigned char a=0;</p><p>  unsigned char b=0;</p><p><b>  int t=0;</b></p><p>  float tt=0;</p><p>  Init_DS18B20

88、();</p><p>  WriteOneChar(0xCC); //跳過讀序號列號的操作</p><p>  WriteOneChar(0x44); //啟動溫度轉換</p><p>  Init_DS18B20();</p><p>  WriteOneChar(0xCC); //跳過讀序號列號的操作</p><

89、;p>  WriteOneChar(0xBE); //讀取溫度寄存器</p><p>  a=ReadOneChar(); //讀低8位</p><p>  b=ReadOneChar(); //讀高8位</p><p><b>  t=b;</b></p><p><b>  t<

90、<=8;</b></p><p><b>  t=t|a;</b></p><p>  tt=t*0.0625;</p><p>  t= tt*10+0.5; //放大10倍輸出并四舍五入</p><p>  return(t);</p><p><b> 

91、 }</b></p><p>  /*****END*****/</p><p>  附錄二 元件清單及PCB圖</p><p>  數(shù)字溫度計電路元器件清單</p><p><b>  PCB圖</b></p><p>  g an employment tribunal clai

92、m</p><p>  Employment tribunals sort out disagreements between employers and employees.</p><p>  You may need to make a claim to an employment tribunal if:</p><p>  you don't ag

93、ree with the disciplinary action your employer has taken against you</p><p>  your employer dismisses you and you think that you have been dismissed unfairly.</p><p>  For more information about

94、 dismissal and unfair dismissal, see Dismissal.</p><p>  You can make a claim to an employment tribunal, even if you haven't appealed against the disciplinary action your employer has take

95、n against you. However, if you win your case, the tribunal may reduce any compensation awarded to you as a result of your failure to appeal.</p><p>  Remember that in most cases you must make an application

96、to an employment tribunal within three months of the date when the event you are complaining about happened. If your application is received after this time limit, the tribunal will not usually accept it.</p><

97、p>  If you are worried about how the time limits apply to you, take advice from one of the organisations listed under Further help.</p><p>  Employment tribunals are less formal than some other court

98、s, but it is still a legal process and you will need to give evidence under an oath or affirmation.</p><p>  Most people find making a claim to an employment tribunal challenging. If you are thinking about m

99、aking a claim to an employment tribunal, you should get help straight away from one of the organisations listed under Further help.</p><p>  If you are being represented by a solicitor at the tribunal,

100、they may ask you to sign an agreement where you pay their fee out of your compensation if you win the case. This is known as a damages-based agreement. In England and Wales, your solicitor can't charge you more

101、than 35% of your compensation  if you win the case.</p><p>  If you are thinking about signing up for  a damages-based agreement, you should make sure you're clear about the terms of the agreem

102、ent. It might be best to get advice from an experienced adviser, for example, at a Citizens Advice Bureau.  To find your nearest CAB, including those that give advice by e-mail, click on nearest CAB.</p>

103、<p>  For more information about making a claim to an employment tribunal, see Employment tribunals.</p><p>  The (lack of) air up there </p><p>  Watch mCayman Islands-based Webb, th

104、e head of Fifa's anti-racism taskforce, is in London for the Football Association's 150th anniversary celebrations and will attend City's Premier League match at Chelsea on Sunday.</p><p>  "

105、;I am going to be at the match tomorrow and I have asked to meet Yaya Toure," he told BBC Sport.</p><p>  "For me it's about how he felt and I would like to speak to him first to find out what

106、his experience was."</p><p>  Uefa has opened disciplinary proceedings against CSKA for the "racist behaviour of their fans" during City's 2-1 win.</p><p>  Mic

107、hel Platini, president of European football's governing body, has also ordered an immediate investigation into the referee's actions.</p><p>  CSKA said they were "surprised and disappointed&quo

108、t; by Toure's complaint. In a statement the Russian side added: "We found no racist insults from fans of CSKA."</p><p>  Age has reached the end of the beginning of a word. May be guilty in his

109、 seems to passing a lot of different life became the appearance of the same day; May be back in the past, to oneself the paranoid weird belief disillusionment, these days, my mind has been very messy, in my mind constant

110、ly. Always feel oneself should go to do something, or write something. Twenty years of life trajectory deeply shallow, suddenly feel something, do it.</p><p>  一字開頭的年齡已經(jīng)到了尾聲?;蛟S是愧疚于自己似乎把轉瞬即逝的很多個不同的日子過成了同一天的樣子

111、;或許是追溯過去,對自己那些近乎偏執(zhí)的怪異信念的醒悟,這些天以來,思緒一直很凌亂,在腦海中不斷糾纏。總覺得自己自己似乎應該去做點什么,或者寫點什么。二十年的人生軌跡深深淺淺,突然就感覺到有些事情,非做不可了。</p><p>  The end of our life, and can meet many things really do?</p><p>  而窮盡我們的一生,又能遇到多

112、少事情是真正地非做不可?</p><p>  During my childhood, think lucky money and new clothes are necessary for New Year, but as the advance of the age, will be more and more found that those things are optional; Junior high

113、 school, thought to have a crush on just means that the real growth, but over the past three years later, his writing of alumni in peace, suddenly found that isn't really grow up, it seems is not so important; Then i

114、n high school, think don't want to give vent to out your inner voice can be in the high school chil</p><p>  童年時,覺得壓歲錢和新衣服是過年必備,但是隨著年齡的推進,會越來越發(fā)現(xiàn),那些東西根本就可有可無;初中時,以為要有一場暗戀才意味著真正的成長,但三年過去后,自己心平氣和的寫同學錄的時候,突然

115、就發(fā)現(xiàn)是不是真正的成長了,好像并沒有那么重要了;然后到了高中,覺得非要吐露出自己的心聲才能為高中生涯里的懵懂情愫劃上一個句點,但畢業(yè)晚會的時候最終還是被梗塞在了咽喉,后來再次站在他曾經(jīng)揮汗如雨的球場,看著他投過籃球的球框時,突然間發(fā)現(xiàn)自己已經(jīng)想不起他的容顏。</p><p>  Originally, this world, can produce a chemical reaction to an event,

116、 in addition to resolutely, have to do, and time.</p><p>  原來,這個世界上,對某個事件能產(chǎn)生化學反應的,除了非做不可的堅決,還有,時間。</p><p>  A person's time, your ideas are always special to clear. Want, want, line is clear

117、, as if nothing could shake his. Also once seemed to be determined to do something, but more often is he backed out at last. Dislike his cowardice, finally found that there are a lot of love, there are a lot of miss, lik

118、e shadow really have been doomed. Those who do, just green years oneself give oneself an arm injection, or is a self-righteous spiritual.</p><p>  一個人的時候,自己的想法總是特別地清晰。想要的,不想要的,界限明確,好像沒有什么可以撼動自己。也曾經(jīng)好像已經(jīng)下定了決心去

119、做某件事,但更多的時候是最后又打起了退堂鼓。嫌惡過自己的怯懦,最終卻發(fā)現(xiàn)有很多緣分,有很多錯過,好像冥冥之中真的已經(jīng)注定。那些曾經(jīng)所謂的非做不可,只是青蔥年華里自己給自己注射的一支強心劑,或者說,是自以為是的精神寄托罷了。</p><p>  At the moment, the sky is dark, the air is fresh factor after just rained. Suddenly th

120、ought of blue plaid shirt; Those were broken into various shapes of stationery; From the corner at the beginning of deep friendship; Have declared the end of the encounter that haven't start planning... Those years,

121、those days of do, finally, like youth, will end in our life.</p><p>  此刻,天空是陰暗的,空氣里有著剛下過雨之后的清新因子。突然想到那件藍格子襯衫;那些被折成各種各樣形狀的信紙;那段從街角深巷伊始的友誼;還有那場還沒有開始就宣告了終結的邂逅計劃……那些年那些天的非做不可,終于和青春一樣,都將在我們的人生中謝幕。</p><

122、p>  Baumgartner the disappointing news: Mission aborted. r plays an important role in this mission. Starting at the ground, conditions have to be very calm -- winds less than 2 mph, with no precipitation or humidity a

123、nd limited cloud cover. The balloon, with capsule attached, will move through the lower level of the atmosphere (the troposphere) where our day-to-day weather lives. It will climb higher than the tip of Mount Everest (5.

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論