【正文】
r(i=0。 } } if(keyDec==0) { delay(5)。 table1[i+1]=ge+0x30。 } //顯示溫度 void Display() { uchar tt,ge,shi,bai。 writeonechar(0xbe)。 for(i=0。//延時 480us 540us DQ=1。y)。 sbit keyDec=P1^2。采用 C51 編寫的應用程序結構清楚、模塊化程度高、可讀性強、且易于移植。計數(shù)器 1 會對低溫度系數(shù)所產(chǎn)生的脈沖信號進行減法計數(shù),若計數(shù)器 1 的預置值被減至 0,則溫度寄存器的值加 1,接下來,計數(shù)器 1的預置值將被重新裝入,計數(shù)器 1 重新開始對低溫度系數(shù)的晶振所產(chǎn)生的脈沖信號進行計數(shù)。 火災探測器選擇 為了盡可能做到簡化硬件電路,故在本設計中采用美國 DALLAS 公司出品的溫度傳感器 DS18B20。 ( 2)在誤差允許的區(qū)域內, C1和 C2 值都是越小,實現(xiàn)的功能就越精確,如果 C1和 C2 值比正常數(shù)值大時,可能會使振蕩器更加穩(wěn)定,可是也會增加響應的時間。 CPU 發(fā)出的時序信號有兩類,一類用于對片內各個功能部件的控制;另一類用于對片外存儲器或 I/O 口的控制。另外, STC89C52 可將至 0Hz靜態(tài)邏輯操作,支持 2 中軟件可選擇的節(jié)電模式。在這段時間中,計算機技術、集成電路技術以及傳感器技術飛速發(fā)展,火災報警系統(tǒng)逐步進入智能化時代。越來越多的火災偵測系統(tǒng)逐步進入市場。于是人類逐漸意識到火災預防和預警的重要性。先設定一個報警溫度值,然后由 DS18B20 溫度傳感器對溫度進行實時的監(jiān)控,并將溫度值顯示在LCD1602 液晶顯示屏上,若溫度值超過了報警溫度值,則驅動蜂鳴器報警。 3 . 用 LCD1602 實現(xiàn)溫度的實時顯示。其優(yōu)點是抗干擾能力強,使用壽命長,且沒有離子探測器的輻射問題。單片機將溫度值實時顯示在 LCD1602 液晶顯示屏上,并將采集到的溫度值與預設報警溫度值進行比較,若采集到的溫度值小于報警溫度值,則重復上述步驟。 存儲器 (ROM),是用來存儲程序的存儲器,在 STC89C52 中集成了 8K字節(jié)的FLASH 存儲器,如果片內的容量不夠,還可擴展至 64KB。晶體和電容應盡可能安裝得離單片機近一些以減少寄生電容,更好地保證振蕩器穩(wěn)定、可靠地工作。每個狀態(tài)又分為兩拍: P1和 P2。其可編程的分辨率為 9~12位,對應的可分辨的溫度分別為 、 、 和 ,因此可實現(xiàn)高精度的測溫。模塊內部有上電復位電路,因此在不需要經(jīng)常復位的場合下可將 17 腳懸空。 開發(fā)平臺 軟件設計的開發(fā)平臺采用美國 keil Software 公司出品的 Keil uvision4。 uchar Highlimit=20。i++) LCD12864_WriteData(table3[i])。i++) { DQ=0。 } //讀取溫度判斷正負 uchar displaytemp() { uchar a,b。 } else if(temp==0xf8) { val=1。 bai=tt/100。i++) LCD12864_WriteData(table2[i])。 tablekey[i+1]=bai+0x30。 } } 第 5 章 軟件仿真和實物測試 仿真平臺 仿真平臺采用英國 Labcenter electronics 公司開發(fā)的 EDA工具軟件proteus。 實物測試結果 實物測試結果如下圖所示。但是還有一些缺陷。希望畢業(yè)之后我們一起努力奮斗。對本文的研究做出重要貢獻的個人和集體,均已在文中以明確方式標明。 作者簽名: 日期: 年 月 日 學位論文版權使用授權書 本學位論文作者完全了解學校有關保留、使用學位論文的規(guī)定,同意學校保留并向國家有關部門或機構送交論文的復印件和電子版,允許論文被查閱和借閱。在寫這篇論文的時候,我查閱了很多資料,有一些是圖書館的老師推薦的?;馂碾m然能帶來高溫,但是高溫不代表就一定發(fā)生了火災,因此用這套系統(tǒng)有可能出現(xiàn)誤報警的情況,因此可靠想不算非常高。雖然最終成功地設計出了這套火災自動報警系統(tǒng),但是這條設計指路并不平坦,而是崎嶇的。它是目前比較好的仿真單片機及外圍器件的工具。 tablekey[i+1]=shi+0x30。 i=0。 shi=tt%100/10。39。 Init_DS18B20()。 DQ=1。 } /*18b20 初始化 */ void Init_DS18B20(void) { uchar x=0。 //延時函數(shù) void delay(uchar z) { uchar x,y。相較于匯編語言, C語言的優(yōu)勢在于其功能、結構、可維護性以及可讀性,學習和應用都較為容易。 硬件電路設計 將單片機的 P0 口作為 LCD1602 的數(shù)據(jù)口, 8 個 I/O 口分別與 LCD1602 的714 腳相連, P20 接 LCD1602 的第 6 腳, P21 接第 4 腳, P22 接第 5 腳。其測量結果直接輸出數(shù)字溫度信號,直接串行輸送給 CPU,同時可傳送 CRC 校驗碼,因此具有極強的抗干擾糾錯能力。 指令周期是執(zhí)行一條指令所需的時間。 外部時鐘方式使用現(xiàn)成的外部振蕩器產(chǎn)生脈沖信號,通常用于多片 STC89C52單片機同時工作,以便于多片單片機之間的同步,一般為地獄 12MHz 的方波。 特殊功能寄存器 (SFR):共有 26 個特殊功能寄存器,用于 CPU 對片內各功能部件進行管理和監(jiān)視。電路的整體框圖如圖 所示 圖 系統(tǒng)框圖 DS18B20 溫度傳感器 單片機 液晶顯示屏 蜂鳴器 第 3 章 硬件電路設計 單片機選擇 在一個火災自動報警器中,單片機是其中的核心部件,它需要接受來自傳感器的信號,還需要將其與預設的報警溫度值進行比對、將溫度信息輸出至LCD1602 液晶顯示屏、驅動蜂鳴器報警。 第三階段是從 20 世紀 80 年代末。 5. 完成程序的編寫。 關鍵詞: 51 單片機、溫度傳感器、火災自動報警 II Abstract Nowadays , with the popularization of the electronic products , varieties of electronic products have been bought by many families . Those products can provide people with great convenience , but also fire hazards . As electronic products would convert electricity to heat , so once those products get shortcircuited , they will be very likely to begin to burn . So , in order to keep people from conflagration , an alarming system seems to be a necessary . This system is an alarming system based on 51 SCM and DS18B20 temperature sensor . We will set an alarming temperature , then , DS18B20 temperature sensor will keep measuring the temperature , then send the data to the LCD screen and display it . If the temperature reaches the alarming temperature , the SCM will control the buzzer to give an alarm. This system39。進入 90 年代,特別是 1993 年以來,火災造成的直接損失上升到年均十幾億元,年均死亡 2020 多人。而 90 年代初,英國成功研制溫度式的 火災報警系統(tǒng),并將其正式應用于火災探測工作中。但是由于其采用有線連接,因此對工程的要求較高。STC89C52RC 使用經(jīng)典的 MCS51 內核,但做了很多改進,是的芯片具有傳統(tǒng)的51 單片機所不具有的功能。 STC89C52 單片機的內部電路正是在時鐘電路的控制下嚴格按時序執(zhí)行指令進行工作的。單片機工作的最小時間計量單位就是由這個晶振決定的。而有些復雜的指令則需要兩個或多個指令周期。如圖 所示。經(jīng)過大量工程師們十數(shù)年的努力, C 語言終于成功地成為專業(yè)化的單片機實用高級語言。 程序代碼 include include define uchar unsigned char define uint unsigned int //DS18b20 接口 sbit DQ=P1^0。x) for(y=110。//稍作延時 DQ=0。//15