單片機(jī)溫度測量控制及高溫報(bào)警系統(tǒng)(學(xué)士論文)_第1頁
單片機(jī)溫度測量控制及高溫報(bào)警系統(tǒng)(學(xué)士論文)_第2頁
單片機(jī)溫度測量控制及高溫報(bào)警系統(tǒng)(學(xué)士論文)_第3頁
單片機(jī)溫度測量控制及高溫報(bào)警系統(tǒng)(學(xué)士論文)_第4頁
單片機(jī)溫度測量控制及高溫報(bào)警系統(tǒng)(學(xué)士論文)_第5頁
已閱讀5頁,還剩49頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、關(guān)鍵詞關(guān)鍵詞:數(shù)字溫度傳感器;單總線;通信協(xié)議;數(shù)字溫度傳感器;單總線;通信協(xié)議;ds18b20ds18b20;at89c2051at89c2051;ledled 顯顯 示器;報(bào)警信號。示器;報(bào)警信號。 abstract temperature detection and control of industrial production process, one of the more typical applications, with sensors in production and life is more widely used, using a new single-bus dig

2、ital temperature sensor to achieve the test and control the temperature more rapidly development, this paper is designed based on at89c51 temperature detection and alarm systems. the system will be more than a single-bus temperature sensor ds18b20 and connected to a port on the controller, the tempe

3、rature sensors on each loop collection, the temperature will be collected to compare with the set value, when the temperature exceeds the upper limit set , through the isd1420 voice circuit gives voice prompts and alarm signal. in this paper, a single data lines extend multiple temperature sensor de

4、sign methods and gives the system implementation of hardware and software flow diagram. the experimental tests show that this high accuracy, strong anti-interference ability, alarm timely and accurate, with a certain reference value. the system design and layout simple and compact structure, small s

5、ize, light weight, anti-jamming capability, cost-effective to expand convenience, in large warehouses, factories, construction and other areas of intelligent multi-point temperature measurement in a wide range of applications prospects. keykey words:words: digitaldigital temperaturetemperature senso

6、r;sensor; singlesingle bus;bus; communicationcommunication protocols;protocols; ds18b20;ds18b20; at89c2051;at89c2051; ledled display;display; alarmalarm signal.signal. 目錄 摘 要 .i abstract.ii 目錄.iii 第一章:緒論.1 1.1:課題背景.1 1.2:溫度檢測與及報(bào)警系統(tǒng)的國內(nèi)外狀況.1 1.3:溫度參數(shù)、溫度檢測和語音報(bào)警.3 1.3.1 溫度參數(shù).3 1.3.2 溫度檢測.3 1.3.3 語音報(bào)警.3

7、第二章:系統(tǒng)總體設(shè)計(jì)方案.3 2.1單片機(jī)語音溫度報(bào)警系統(tǒng)的總體設(shè)計(jì).3 2.2 系統(tǒng)的基本工作過程.4 第三章:單片機(jī)溫度控制和語音報(bào)警系統(tǒng)硬件設(shè)計(jì).5 3.1 溫度控制和報(bào)警主機(jī).5 3.1.1 主控制單片機(jī).5 3.1.2 at89s51 特點(diǎn).5 3.1.3 at89s51 主要功能特性:.6 3.1.4 溫度檢測和報(bào)警主機(jī)硬件電路設(shè)計(jì).9 3.1.4 單片機(jī)及復(fù)位鍵控制模塊.10 3.2 語音電路.11 3.2.1 isd1420 芯片簡述 .11 3.2.2 芯片引腳介紹.12 3.2.3 芯片工作原理.13 3.2.4 芯片工作模式.13 3.2.5 語音電路設(shè)計(jì).14 3.3

8、ds18b20 芯片簡介.14 3.3.1 溫度傳感器的歷史及簡介.14 3.3.2 ds18b20 性能特點(diǎn)與內(nèi)部結(jié)構(gòu).15 3.3.3 ds18b20 工作時(shí)序.19 3.3.4 ds18b20 的操作協(xié)議.21 3.3.5 ds18b20 序列號編碼.23 3.3.6 ds18b20 的測溫原理.24 3.3.7 ds18b20 的測溫流程.25 3.3.8 ds18b20 數(shù)據(jù)校驗(yàn)與糾錯(cuò).25 3.3.9 ds18b20 在測溫系統(tǒng)中的應(yīng)用.27 3.3.10 測溫系統(tǒng)的硬件工作原理.27 3.3.11 注意事項(xiàng).28 第四章軟件設(shè)計(jì).28 4.1設(shè)計(jì)思路.28 4.2 程序設(shè)計(jì).31

9、 4.2.1 主程序.31 4.2.2 讀出溫度子程序.32 4.2.3 溫度轉(zhuǎn)化命令子程序.32 4.2.4 計(jì)算溫度子程序.32 4.2.5 顯示數(shù)據(jù)刷新子程序.33 4.2.6 led 顯示程序模塊.33 第五章:系統(tǒng)調(diào)試.34 5.1硬件調(diào)試.34 5.1.1 硬件靜態(tài)的調(diào)試.34 5.1.2 系統(tǒng)硬件調(diào)試.35 5.2軟件調(diào)試.35 5.3 軟硬聯(lián)調(diào).35 結(jié) 論.37 致 謝.38 參考文獻(xiàn).39 附 錄.40 第一章:緒論 1.1:課題背景:課題背景 測量控制的作用是從生產(chǎn)現(xiàn)場中獲取各種參數(shù),運(yùn)用科學(xué)計(jì)算的方法,綜 合各種先進(jìn)技術(shù),使每個(gè)生產(chǎn)環(huán)節(jié)都能夠得到有效的控制,不但保證了生

10、產(chǎn)的 規(guī)范化、提高產(chǎn)品質(zhì)量、降低成本,還確保了生產(chǎn)安全。所以,測量控制技術(shù) 已經(jīng)被廣泛應(yīng)用于煉油、化工、冶金、電力、電子、輕工和紡織等行業(yè)1。 隨著單片機(jī)技術(shù)的迅速興起與蓬勃發(fā)展,其穩(wěn)定、安全、高效、經(jīng)濟(jì)等優(yōu)點(diǎn)十 分突出,所以其應(yīng)用也十分廣泛。單片機(jī)已經(jīng)無處不在、與我們生活息息相關(guān), 并且滲透到生活的方方面面。 單片機(jī)的特點(diǎn)是體積較小,也就是其集成特性,其內(nèi)部結(jié)構(gòu)是普通計(jì)算機(jī) 系統(tǒng)的簡化,增加一些外圍電路,就能夠組成一個(gè)完整的小系統(tǒng),單片機(jī)具有 很強(qiáng)的可擴(kuò)展性。它具有和普通計(jì)算機(jī)類似的、強(qiáng)大的數(shù)據(jù)處理功能,通過使 用一些科學(xué)的算法,可以獲得很強(qiáng)的數(shù)據(jù)處理能力2。所以單片機(jī)在工業(yè)中應(yīng) 用中,可以

11、極大地提高工業(yè)設(shè)備的智能化、數(shù)據(jù)處理能力和處理效率,而且單 片機(jī)無需占用很大的空間。 隨著溫度檢測理論和技術(shù)的不斷更新, 溫度傳感器的種類也越來越多,在微機(jī) 系統(tǒng)中使用的傳感器,必須是能夠?qū)⒎请娏哭D(zhuǎn)換成電量的傳感器,目前常用的 有熱電偶傳感器、熱電阻傳感器和半導(dǎo)體集成傳感器等,每種傳感器根據(jù)其自 身特性,都有它自己的應(yīng)用領(lǐng)域。 本設(shè)計(jì)所介紹的數(shù)字溫度計(jì)與傳統(tǒng)的溫度計(jì)相比,具有讀數(shù)方便,測溫范 圍廣,測溫準(zhǔn)確,其輸出溫度采用數(shù)字顯示,主要用于對測溫比較準(zhǔn)確的場所, 或科研實(shí)驗(yàn)室使用,該設(shè)計(jì)控制器使用單片機(jī) at89s51,測溫傳感器使用 ds18b20,用 3 位共陽極 led 數(shù)碼管以串口傳送

12、數(shù)據(jù),實(shí)現(xiàn)溫度顯示,能準(zhǔn)確達(dá)到 以上要求。 1.2:溫度檢測與及報(bào)警系統(tǒng)的國內(nèi)外狀況:溫度檢測與及報(bào)警系統(tǒng)的國內(nèi)外狀況 溫度是一個(gè)非常重要的物理量,因?yàn)樗苯佑绊懭紵?、化學(xué)反應(yīng)、發(fā)酵、烘 烤、煅燒、蒸餾、濃度、擠壓成形、結(jié)晶以及空氣流動(dòng)等物理和化學(xué)過程。溫度 控制失誤就可能引起生產(chǎn)安全、產(chǎn)品質(zhì)量、產(chǎn)品產(chǎn)量等一系列問題。因此對溫度 的檢測的意義就越來越大。溫度采集控制系統(tǒng)在工業(yè)生產(chǎn)、科學(xué)研究和人們的生 活領(lǐng)域中,得到了廣泛應(yīng)用。在工業(yè)生產(chǎn)過程中,很多時(shí)候都需要對溫度進(jìn)行嚴(yán) 格的監(jiān)控,以使得生產(chǎn)能夠順利的進(jìn)行,產(chǎn)品的質(zhì)量才能夠得到充分的保證。使 用自動(dòng)溫度控制系統(tǒng)可以對生產(chǎn)環(huán)境的溫度進(jìn)行自動(dòng)控制,

13、保證生產(chǎn)的自動(dòng)化、 智能化能夠順利、安全進(jìn)行,從而提高企業(yè)的生產(chǎn)效率。 溫度采集控制系統(tǒng)是在嵌入式系統(tǒng)設(shè)計(jì)的基礎(chǔ)上發(fā)展起來的。嵌入式系統(tǒng)雖 然起源于微型計(jì)算機(jī)時(shí)代,但是微型計(jì)算機(jī)的體積、價(jià)位、可靠性,都無法滿足 廣大對象對嵌入式系統(tǒng)的要求,因此,嵌入式系統(tǒng)必須走獨(dú)立發(fā)展道路。這條道 路就是芯片化道路。將計(jì)算機(jī)做在一個(gè)芯片上,從而開創(chuàng)了嵌入式系統(tǒng)獨(dú)立發(fā)展 的單片機(jī)時(shí)代。單片機(jī)誕生于二十世紀(jì)七十年代末,經(jīng)歷了 scm、mcu 和 soc 三 大階段 在現(xiàn)代化的工業(yè)生產(chǎn)中,電流、電壓、溫度、壓力、流量、流速和開關(guān)量 都是常用的主要被控參數(shù)。例如:在冶金工業(yè)、化工生產(chǎn)、電力工程、造紙行 業(yè)、機(jī)械制造和

14、食品加工等諸多領(lǐng)域中,人們都需要對各類加熱爐、熱處理爐、 反應(yīng)爐和鍋爐中的溫度進(jìn)行檢測和控制。采用 mcs-51 單片機(jī)來對溫度進(jìn)行控制, 不僅具有控制方便、組態(tài)簡單和靈活性大等優(yōu)點(diǎn),而且可以大幅度提高被控溫 度的技術(shù)指標(biāo),從而能夠大大提高產(chǎn)品的質(zhì)量和數(shù)量。因此,單片機(jī)對溫度的 控制問題是一個(gè)工業(yè)生產(chǎn)中經(jīng)常會遇到的問題。同時(shí)溫度也是生活中最常見的 一個(gè)物理量,也是人們很關(guān)心的一個(gè)物理量,它與我們的生活息息相關(guān),有著 十分重要的意義,在工業(yè)生產(chǎn)中,溫度過高或過低會直接影響到產(chǎn)品的質(zhì)量、 對機(jī)械設(shè)備和控制系統(tǒng)中的各種元器件造成一定的損壞,嚴(yán)重的會影響到生產(chǎn) 安全。在日常生活中,溫度過高或過低同樣會

15、造成一些不良影響。 在實(shí)際生產(chǎn)、生活等各個(gè)領(lǐng)域中,溫度是環(huán)境因素的不可或缺的一部分, 對溫度及時(shí)精確的控制和檢測顯得尤為重要。比如,農(nóng)業(yè)上土壤各個(gè)層面上的 溫度將會影響植物的生長;在醫(yī)院的監(jiān)護(hù)中也用到溫度的測量。在工業(yè)中,料 桶里外上限溫度要求不一,以及熱處理中工件各個(gè)部位的溫度對工件形成后的 性能至關(guān)重要等等?,F(xiàn)代電子工業(yè)的飛速發(fā)展對自動(dòng)測試的要求越來越高。采 用單片機(jī)對溫度進(jìn)行控制,不僅具有控制方便和組態(tài)簡單的優(yōu)點(diǎn),而且可以提高 被控溫度的技術(shù)指標(biāo)。針對以上情況,在控制成本的前提下,通過本設(shè)計(jì)設(shè)計(jì) 一款能夠?qū)崟r(shí)檢測控制溫度,又具有對系統(tǒng)設(shè)定不同的報(bào)警溫度的溫度控制報(bào) 警系統(tǒng)功能。此系統(tǒng)能夠

16、滿足現(xiàn)代生產(chǎn)生活的需要,效率高,具有較強(qiáng)的穩(wěn)定 性和靈活性。因此,在生產(chǎn)和生活中要對溫度進(jìn)行嚴(yán)格的控制,使溫度在規(guī)定 的范圍內(nèi)變化。通過本系統(tǒng)提高學(xué)生對于溫度控制的認(rèn)識。在學(xué)習(xí)實(shí)踐中提高 對理論的認(rèn)知能力和動(dòng)手解決實(shí)際問題的能力,達(dá)到教學(xué)實(shí)踐相結(jié)合的目的。 及采用先進(jìn)的科學(xué)技術(shù),加以豐富的保安實(shí)際經(jīng)驗(yàn)和知識,向社會提供各種超 值安全設(shè)備服務(wù),給用戶帶來安全和放心。 隨著人們生活水平的不斷提高,單片機(jī)控制無疑是人們追求的目標(biāo)之一,它 所給人帶來的方便也是不可否定的,其中數(shù)字溫度計(jì)就是一個(gè)典型的例子,但 人們對它的要求越來越高,要為現(xiàn)代人工作、科研、生活、提供更好的更方便 的設(shè)施就需要從數(shù)單片機(jī)技

17、術(shù)入手,一切向著數(shù)字化控制,智能化控制方向發(fā) 展。 1.3:溫度參數(shù)、溫度檢測和語音報(bào)警:溫度參數(shù)、溫度檢測和語音報(bào)警 1.3.1 溫度參數(shù)溫度參數(shù) 基本范圍-50-110 精度誤差小于0.5 led 數(shù)碼直讀顯示 可以任意設(shè)定溫度的上下限報(bào)警功能 1.3.2 溫度檢測溫度檢測 通過 ds18b20 傳感器檢測測量溫度,通過 at89s51 單片機(jī)進(jìn)行控制,通過 用 3 位 led 數(shù)碼管以串口傳送數(shù)據(jù)實(shí)現(xiàn)溫度顯示。 1.3.3 語音報(bào)警語音報(bào)警 先錄音,能分160段(地址為00h-0a0h)。我們說話平均語速4字/秒,所以20 秒我們錄80字。 經(jīng)過計(jì)算,每個(gè)字占2個(gè)地址。我們錄音13段。

18、錄音用s1鍵,放音控制用s2鍵。錄音時(shí)按下鍵后開始錄音,錄完每段后放開 按鍵,錄音停止。 共錄13段,錄每段時(shí)同時(shí)用數(shù)碼管提示,分別用數(shù)字0-f來表示。 按語音提示鍵播報(bào)溫度,不按不播報(bào)。 第二章:系統(tǒng)總體設(shè)計(jì)方案 2.1單片機(jī)語音溫度報(bào)警系統(tǒng)的總體設(shè)計(jì)單片機(jī)語音溫度報(bào)警系統(tǒng)的總體設(shè)計(jì) 語音溫度報(bào)警計(jì)電路設(shè)計(jì)總體設(shè)計(jì)方框圖如圖 2.1 所示,控制器采用單片 機(jī) at89s51,溫度傳感器采用 ds18b20,語音電路采用 isd1420,用 3 位 led 數(shù) 碼管以串口傳送數(shù)據(jù)實(shí)現(xiàn)溫度顯示。 單 片 機(jī) 按鍵輸入電路 顯示電路 溫度控制電路 測溫電路 時(shí)鐘電路 復(fù)位電路 報(bào)警電路 圖 2.1

19、 總體設(shè)計(jì)方框圖 單元模塊功能如下: 檢測電路由溫度傳感器 ds18b20 溫度傳感器是美國 dallas 半導(dǎo)體公司最新 推出的一種改進(jìn)型智能溫度傳感器,與傳統(tǒng)的熱敏電阻等測溫元件相比,它能 直接讀出被測溫度,并且可根據(jù)實(shí)際要求通過簡單的編程實(shí)現(xiàn)位的數(shù) 字值讀數(shù)方式。 自動(dòng)報(bào)警主機(jī)的核心器件是單片機(jī),它是整個(gè)系統(tǒng)的心臟,由它來接受報(bào) 警信號并控制協(xié)調(diào)各功能模塊的正常工作,考慮到系統(tǒng)的功能和經(jīng)濟(jì)性因素, 采用的是當(dāng)今流行的性價(jià)比比較高的 at89c51。 看門狗電路完成對系統(tǒng)電源電壓的監(jiān)測工作。 語音電路采用美國 isd 公司的高保真錄放一體化語音芯片 isd1420 來完成 報(bào)警時(shí)進(jìn)行語音提

20、示的預(yù)存工作,根據(jù)警情的不同進(jìn)行相應(yīng)的語音提示。 2.2 系統(tǒng)的基本工作過程系統(tǒng)的基本工作過程 在農(nóng)業(yè)應(yīng)用方面虛擬儀器溫室大棚溫度測控系統(tǒng)是一種比較智能,經(jīng)濟(jì)的 方案,適于大力推廣,改系統(tǒng)能夠?qū)Υ笈飪?nèi)的溫度進(jìn)行采集,然后再進(jìn)行比較, 通過比較對大棚內(nèi)的溫度是否超過溫度限制進(jìn)行分析,如果超過溫度限制,溫 度報(bào)警系統(tǒng)將進(jìn)行報(bào)警,來通知管理人員大棚內(nèi)的溫度超過限制,大棚內(nèi)的溫 控系統(tǒng)出現(xiàn)故障,從而有利于農(nóng)作物的生長,提高產(chǎn)量。 第三章:單片機(jī)溫度控制和語音報(bào)警系統(tǒng)硬件設(shè)計(jì) 3.1 溫度控制和報(bào)警主機(jī)溫度控制和報(bào)警主機(jī) 本系統(tǒng)主要是基于單片機(jī)實(shí)現(xiàn)其溫度檢測和報(bào)警功能,其硬件的主要設(shè)計(jì) 如下: 3.1.

21、1 主控制單片機(jī)主控制單片機(jī) 主控單片機(jī)采用一片atmel at89s51。根據(jù)題目要求,充分利用了單片機(jī)靈 活控制的優(yōu)點(diǎn),發(fā)揮其優(yōu)勢功能,采用單片機(jī)控制顯示信號燈,提高了系統(tǒng)的 靈活性,設(shè)置方便。at89s51芯片本身集成了看門狗(wdt)電路,這是為了系 統(tǒng)更加的穩(wěn)定可靠,避免了系統(tǒng)因?yàn)樗罊C(jī)而停止工作的情況發(fā)生這種做法對于 實(shí)際上長時(shí)間運(yùn)行在惡劣狀況的交通燈控制系統(tǒng)來說是十分必要的。它可以完 成自動(dòng)加載復(fù)位,省去人工調(diào)整的麻煩,可以做到無人職守。 3.1.2 at89s51 特點(diǎn)特點(diǎn) at89s51是一個(gè)低功耗,高性能cmos 8位單片機(jī),片內(nèi)含4k bytes isp(in- syste

22、m programmable)的可反復(fù)擦寫1000次的flash只讀程序存儲器,器件采用 atmel公司的高密度、非易失性存儲技術(shù)制造,兼容標(biāo)準(zhǔn)mcs-51指令系統(tǒng)及 80c51引腳結(jié)構(gòu),芯片內(nèi)集成了通用8位中央處理器和isp flash存儲單元,功能 強(qiáng)大的微型計(jì)算機(jī)的at89s51可為許多嵌入式控制應(yīng)用系統(tǒng)提供高性價(jià)比的解決 方案。 at89s51具有如下特點(diǎn):40個(gè)引腳,4k bytes flash片內(nèi)程序存儲器,128 bytes的隨機(jī)存取數(shù)據(jù)存儲器(ram) ,32個(gè)外部雙向輸入/輸出(i/o)口,5個(gè) 中斷優(yōu)先級2層中斷嵌套中斷,2個(gè)16位可編程定時(shí)計(jì)數(shù)器,2個(gè)全雙工串行通信 口,

23、看門狗(wdt)電路,片內(nèi)時(shí)鐘振蕩器。 (如圖3.1所示) 。 圖 3.1 at89s51 芯片 此外,at89s51 設(shè)計(jì)和配置了振蕩頻率可為 0hz 并可通過軟件設(shè)置省電模 式??臻e模式下,cpu 暫停工作,而 ram 定時(shí)計(jì)數(shù)器,串行口,外中斷系統(tǒng)可 繼續(xù)工作,掉電模式凍結(jié)振蕩器而保存 ram 的數(shù)據(jù),停止芯片其它功能直至外 中斷激活或硬件復(fù)位。同時(shí)該芯片還具有 pdip、tqfp 和 plcc 等三種封裝形式, 以適應(yīng)不同產(chǎn)品的需求。 3.1.3 at89s51 主要功能特性:主要功能特性: 兼容 mcs-51 指令系統(tǒng) 32 個(gè)雙向 i/o 口 2 個(gè) 16 位可編程定時(shí)/計(jì)數(shù)器 全

24、雙工 uart 串行中斷口線 2 個(gè)外部中斷源 中斷喚醒省電模式 看門狗(wdt)電路 靈活的 isp 字節(jié)和分頁編程 4k 可反復(fù)擦寫(1000 次)isp flash rom 4.5-5.5v 工作電壓 時(shí)鐘頻率 0-33mhz 128x8bit 內(nèi)部 ram 低功耗空閑和省電模式 3 級加密位 軟件設(shè)置空閑和省電功能 雙數(shù)據(jù)寄存器指針 at89s51 的引腳功能介紹: vcc: at89s51 電源正端輸入,接+5v。 vss: 電源地端。 xtal1: 單芯片系統(tǒng)時(shí)鐘的反相放大器輸入端。 xtal2: 系統(tǒng)時(shí)鐘的反相放大器輸出端,一般在設(shè)計(jì)上只要在 xtal1 和 xtal2 上 接上

25、一只石英振蕩晶體系統(tǒng)就可以動(dòng)作了,此外可以在兩引腳與地之間加入一 個(gè) 20pf 的小電容,可以使系統(tǒng)更穩(wěn)定,避免噪聲干擾而死機(jī)。 reset: at89s51的重置引腳,高電平動(dòng)作,當(dāng)要對晶片重置時(shí),只要對此引腳電平 提升至高電平并保持兩個(gè)機(jī)器周期以上的時(shí)間,at89s51便能完成系統(tǒng)重置的各 項(xiàng)動(dòng)作,使得內(nèi)部特殊功能寄存器之內(nèi)容均被設(shè)成已知狀態(tài),并且至地址0000h 處開始讀入程序代碼而執(zhí)行程序。 ea/vpp: ea為英文external access的縮寫,表示存取外部程序代碼之意,低電 平動(dòng)作,也就是說當(dāng)此引腳接低電平后,系統(tǒng)會取用外部的程序代碼(存于外 部eprom中)來執(zhí)行程序。因

26、此在8031及8032中,ea引腳必須接低電平,因?yàn)槠?內(nèi)部無程序存儲器空間。如果是使用 8751 內(nèi)部程序空間時(shí),此引腳要接成高 電平。此外,在將程序代碼燒錄至8751內(nèi)部eprom時(shí),可以利用此引腳來輸入 21v的燒錄高壓(vpp) 。 ale/prog: ale是英文address latch enable的縮寫,表示地址鎖存器啟用信號。 at89s51可以利用這支引腳來觸發(fā)外部的8位鎖存器(如74ls373) ,將端口0的地 址總線(a0a7)鎖進(jìn)鎖存器中,因?yàn)閍t89s51是以多工的方式送出地址及數(shù)據(jù)。 平時(shí)在程序執(zhí)行時(shí)ale引腳的輸出頻率約是系統(tǒng)工作頻率的1/6,因此可以用來 驅(qū)動(dòng)

27、其他周邊晶片的時(shí)基輸入。此外在燒錄8751程序代碼時(shí),此引腳會被當(dāng)成 程序規(guī)劃的特殊功能來使用。 psen: 此為program store enable的縮寫,其意為程序儲存啟用,當(dāng)8051被設(shè) 成為讀取外部程序代碼工作模式時(shí)(ea=0) ,會送出此信號以便取得程序代碼, 通常這支腳是接到eprom的oe腳。at89s51可以利用psen及rd引腳分別啟用存在 外部的ram與eprom,使得數(shù)據(jù)存儲器與程序存儲器可以合并在一起而共用64k的 定址范圍。 port0(p0.0p0.7): 端口0是一個(gè)8位寬的雙向輸出入端口,共有8個(gè)位,p0.0表示位0,p0.1表 示位1,依此類推。其他三個(gè)i

28、/o端口(p1、p2、p3)則不具有此電路組態(tài),而 是內(nèi)部有一提升電路,p0在當(dāng)作i/o用時(shí)可以推動(dòng)8個(gè)ls的ttl負(fù)載。如果當(dāng)ea引 腳為低電平時(shí)(即取用外部程序代碼或數(shù)據(jù)存儲器) ,p0就以多工方式提供地址 總線(a0a7)及數(shù)據(jù)總線(d0d7) 。設(shè)計(jì)者必須外加一個(gè)鎖存器將端口0送 出的地址鎖住成為a0a7,再配合端口2所送出的a8a15合成一個(gè)完整的16位 地址總線,而定址到64k的外部存儲器空間。 port2(p2.0p2.7): 端口2是具有內(nèi)部提升電路的雙向i/o端口,每一個(gè)引腳可以推動(dòng)4個(gè)ls的 ttl負(fù)載,若將端口2的輸出設(shè)為高電平時(shí),此端口便能當(dāng)成輸入端口來使用。 p2除了

29、用做一般i/o端口使用外,若是在at89s51擴(kuò)充外接程序存儲器或數(shù)據(jù)存 儲器時(shí),也提供地址總線的高字節(jié)a8a15,這個(gè)時(shí)候p2便不能當(dāng)作i/o來使用 了。 port1(p1.0p1.7): 端口1也是具有內(nèi)部提升電路的雙向i/o端口,其輸出緩沖器可以推動(dòng)4個(gè)ls ttl負(fù)載,同樣地若將端口1的輸出設(shè)為高電平,便是由此端口來輸入數(shù)據(jù)。如 果是使用8052或是8032的話,p1.0又當(dāng)作定時(shí)器2的外部脈沖輸入腳,而p1.1可 以有t2ex功能,可以做外部中斷輸入的觸發(fā)腳位。 port3(p3.0p3.7): 端口3也具有內(nèi)部提升電路的雙向i/o端口,其輸出緩沖器可以推動(dòng)4個(gè)ttl 負(fù)載,同時(shí)還多

30、工具有其他的額外特殊功能,包括串行通信、外部中斷控制、 計(jì)時(shí)計(jì)數(shù)控制及外部數(shù)據(jù)存儲器內(nèi)容的讀取或?qū)懭肟刂频裙δ堋?其引腳分配如下: p3.0:rxd,串行通信輸入。 p3.1:txd,串行通信輸出。 p3.2:int0,外部中斷0輸入。 p3.3:int1,外部中斷1輸入。 p3.4:t0,計(jì)時(shí)計(jì)數(shù)器0輸入。 p3.5:t1,計(jì)時(shí)計(jì)數(shù)器1輸入。 p3.6:wr:外部數(shù)據(jù)存儲器的寫入信號。 p3.7: rd,外部數(shù)據(jù)存儲器的讀取信號。 3.1.4 溫度檢測和報(bào)警主機(jī)硬件電路設(shè)計(jì)溫度檢測和報(bào)警主機(jī)硬件電路設(shè)計(jì) 圖3.2中的按健復(fù)位電路是上電復(fù)位加手動(dòng)復(fù)位,使用比較方便,在程序跑 飛時(shí),可以手動(dòng)復(fù)位

31、,這樣就不用在重起單片機(jī)電源,就可以實(shí)現(xiàn)復(fù)位。 圖 3.2 單片機(jī)主板電路 溫度的檢測主要依據(jù) ds18b20 來采集,ds18b20 可以采用兩種方式供電, 一種是采用電源供電方式,此時(shí) ds18b20 的 1 腳接地,2 腳作為信號線,3 腳接 電源。另一種是寄生電源供電方式,如圖 3.3 所示單片機(jī)端口接單線總線,為 保證在有效的 ds18b20 時(shí)鐘周期內(nèi)提供足夠的電流,可用一個(gè) mosfet 管來完成 對總線的上拉。本設(shè)計(jì)采用電源供電方式, p1.1 口接單線總線為保證在有效 的 ds18b20 時(shí)鐘周期內(nèi)提供足夠的電流,可用一個(gè) mosfet 管和 89s51 的 p1.0 來完成

32、對總線的上拉。當(dāng) ds18b20 處于寫存儲器操作和溫度 a/d 變換操作時(shí), 總線上必須有強(qiáng)的上拉,上拉開啟時(shí)間最大為 10 s。采用寄生電源供電方式 是 vdd和 gnd 端均接地。由于單線制只有一根線,因此發(fā)送接收口必須是三狀態(tài) 的。主機(jī)控制 ds18b20 完成溫度轉(zhuǎn)換必須經(jīng)過 3 個(gè)步驟: 初始化; rom 操作指令; 存儲器操作指令 圖 3.3 ds18b20 與單片機(jī)的接口電路 我們要求的溫度在一定的范圍內(nèi)為安全溫度,我們設(shè)置的上界溫度為 35, 當(dāng)測量值在正常范圍內(nèi)時(shí),程序控制 p2.0 輸出低電平,音頻信號不發(fā)聲,當(dāng)達(dá) 到一定的上界或者下界時(shí),報(bào)警電路開始工作,p2.0 同時(shí)

33、為高電平,音頻發(fā)音 告警,操作人員觀察音頻發(fā)生器是否發(fā)音,就可知道被測量器件工作是否正常。 圖 3.4 報(bào)警電路 3.1.4 單片機(jī)及復(fù)位鍵控制模塊單片機(jī)及復(fù)位鍵控制模塊 單片機(jī)采用89s51,其中有8k內(nèi)存可用。對交通燈的控制主要用其中的計(jì)數(shù) 器定時(shí)來完成。一方面要完成對各模塊的控制,另一方面也要協(xié)調(diào)好各模塊的 時(shí)序及口線沖突問題。 單片機(jī)復(fù)位電路是使cpu和系統(tǒng)中的其他功能部件都處在一個(gè)確定的初始狀 態(tài),并從該狀態(tài)開始工作,例如復(fù)位后pc=0000h,使單片機(jī)從第一個(gè)單元取指 令。無論是在單片機(jī)剛接上電源時(shí),還是斷電后或者發(fā)生故障后都要復(fù)位。單 片機(jī)復(fù)位的條件是:使rst/vpd引腳 加上

34、持續(xù)兩個(gè)機(jī)器周期(即24個(gè)振蕩周期) 的高電平。若時(shí)鐘頻率為12mhz,每機(jī)器周期為1us,則只需2us以上時(shí)間的高電 平,在rst引腳出現(xiàn)高電平后的第二個(gè)機(jī)器周期執(zhí)行復(fù)位。單片機(jī)常見的復(fù)位電 單 片 機(jī) is18b20 vcc gnd p1.0 路如圖3.3按鍵復(fù)位電路所示。 圖 3.3 按鍵復(fù)位電路 該電路除了具有上電復(fù)位電路功能,還可以使用中復(fù)位,只要按下圖 2.9 中的 reset 鍵,此時(shí)電源 vcc 經(jīng)電阻 r1 、r2 分壓,在 reset 端產(chǎn)生一個(gè)復(fù)位 高電平。 單片機(jī)復(fù)位期間不產(chǎn)生 ale 和 psen 信號,即 ale=1,這表明單片機(jī)復(fù)位不 會有任何取值操作。 按鍵復(fù)位

35、電路,易掌握,好操作。 3.2 語音電路語音電路 本系統(tǒng)語音電路可錄制四段提示音,同時(shí),在電話接通后,可以將語音分 段播放。根據(jù)系統(tǒng)的功能要求,系統(tǒng)選擇了美國 isd 公司的 isd1420 芯片。 3.2.1 isd1420 芯片簡述芯片簡述 isd1420 語音芯片是由美國 isd(information storage device)公司開發(fā)的 高保真、不怕斷電、錄放一體化的單片固態(tài)語音集成電路8。其片內(nèi)設(shè)有時(shí)鐘 振蕩器、128k 字節(jié) e2prom(電可編程可擦除只讀存貯器)、低噪前置放大器、自 動(dòng)增益控制電路、反混疊濾波器、平滑濾波器、模擬轉(zhuǎn)發(fā)器、差動(dòng)功率放大器 等高品質(zhì)語音錄放系統(tǒng)

36、所需的全部基本功能電路。由 isd1420 組成的最小應(yīng)用 系統(tǒng)僅包含:一個(gè)麥克,喇叭,幾個(gè)阻容元件,兩個(gè)開關(guān)和電源。 錄制的信息存放在內(nèi)部不揮發(fā)單元中,斷點(diǎn)后可以長久保存。這種獨(dú)特的 單片解決方案使用了 isd 的專利模擬存儲技術(shù)。語音和音頻信號不經(jīng)過轉(zhuǎn)換直 接以原來狀態(tài)存儲到內(nèi)部存儲器,可以實(shí)現(xiàn)高質(zhì)量的語音復(fù)制。 isd 系列語音芯片特點(diǎn): (a)所需外圍元件少,電路簡單,操作方便; (b)采用直接模擬量存貯技術(shù) dast(direct analog storage technology), 再現(xiàn)優(yōu)質(zhì)原聲; (c)零功率信息存貯,省掉備用電源; (d)信息可保存 10 年以上,可反復(fù)錄放達(dá)

37、 10 萬次之多; (e)易于使用,語音固化無需專用編程或開發(fā)裝置,可隨意改變錄音內(nèi)容; (f)較強(qiáng)的選址能力,可進(jìn)行分段管理和分段存儲多段信息; (g)具有自動(dòng)省電模式,錄音和回放后即刻進(jìn)入等待模式,此時(shí)僅需 0.5ua 的維持電流; (h)自帶時(shí)鐘源,高抗干擾性能; (i)可直接驅(qū)動(dòng) 8-16 喇叭工作,輸出不失真功率大于 50mw。也可作激勵(lì) 信號單端輸出,外接功率放大器,輸出功率為額定輸出功率的 1/4,約為 120mw 左右; (j)采用總線技術(shù),適于同單片機(jī)接口。 3.2.2 芯片引腳介紹芯片引腳介紹 a0 1 a1 2 a2 3 a3 4 a4 5 a5 6 nc 7 nc 8

38、a6 9 a7 10 nc 11 vssd 12 vssa 13 sp+ 14 sp- 15 vcca 16 mic 17 mic ref 18 agc 19 ana in 20 ana out 21 nc 22 playl 23 playe 24 recled 25 26 26 27 27 28 28 圖3.5 isd1420芯片引腳圖 ao-a7為地址或操作模式控制端;vssd為數(shù)字地; vssa為模擬地:sp、sp-為音頻信號輸出端,可以驅(qū)動(dòng)8-16個(gè)揚(yáng)聲器; vcca為模擬電源; vccd為數(shù)字電源; mic為話筒輸人端,可用駐極體話筒,通過電容耦合; micref為話筒輸人參考端,若

39、不用應(yīng)懸空; agc為自動(dòng)增益控制端,調(diào)整芯片內(nèi)部前置放大器增益,使錄入信號不失真; anain,anaout兩端間接電容,該端用于模擬信號的直接輸人、輸出; xclk為外部時(shí)鐘或接地(一般用戶接地即可);rec/為錄、放音控制,低電 平為錄音(此時(shí)playe/或playl/=o); playl/為電平放音控制(低電平有效),放音時(shí)應(yīng)該保持低電平(此時(shí)rec/=0); playe/為邊沿放音控制,下降沿開始放音(此時(shí)rec/=0); recled/為錄音指示,接發(fā)光二極管,錄音時(shí)亮,放音結(jié)束閃爍一下,然后 熄滅。 3.2.3 芯片工作原理芯片工作原理 isd1420 地址輸入端具有雙重功能,根

40、據(jù)地址中的 a6、a7 的電平狀態(tài)決 定 a0a7 的功能。如果 a6、a7 中間至少有一個(gè)低電平,則 a0a7 輸入全 解釋為地址位,作為起始地址用,此時(shí)地址線僅僅作為輸入端口,在操作過程 中不能輸出內(nèi)部地址信息。根據(jù) playe、playl 或 rec 的下降沿信號,地址輸 入被鎖定。如果 a6、a7 同為高電平時(shí),isd1420 芯片進(jìn)入模式操作方式。 3.2.4 芯片工作模式芯片工作模式 先錄音,能分 160 段(地址為 00h-0a0h)。我們說話平均語速 4 字/秒,所 以 20 秒我們錄 80 字。 經(jīng)過計(jì)算,每個(gè)字占 2 個(gè)地址。我們錄音 13 段。 錄音用 s1 鍵,放音控制

41、用 s2 鍵。錄音時(shí)按下鍵后開始錄音,錄完每段后放 開按鍵,錄音停止。 共錄 13 段,錄每段時(shí)同時(shí)用數(shù)碼管提示,分別用數(shù)字 0-f 來表示。 按語音提示鍵播報(bào)溫度,不按不播報(bào)。 一、語音溫度計(jì)溫馨提示您,當(dāng)前溫度(00h-27h) 二、一(28h-2fh) 三、二(30h-37h) 四、三(38h-3fh) 五、四(40h-47h) 六、五(48h-4fh) 七、六(50h-57h) 八、七(58h-5fh) 九、八(60h-67h) 十、九(68h-6fh) 十一、十(70h-77h) 十二、度(78h-7fh) 十三、溫度過高(80h-87h) 十四、溫度合適(88h-8fh) 十五、溫

42、度過低(90h-97h) 3.2.5 語音電路設(shè)計(jì)語音電路設(shè)計(jì) 圖 3.6 語音電路 3.3 ds18b20 芯片簡介芯片簡介 3.3.1 溫度傳感器的歷史及簡介溫度傳感器的歷史及簡介 溫度的測量是從金屬(物質(zhì))的熱脹冷縮開始。水銀溫度計(jì)至今仍是各種溫 度測量的計(jì)量標(biāo)準(zhǔn)??墒撬娜秉c(diǎn)是只能近距離觀測,而且水銀有毒,玻璃管 易碎。代替水銀的有酒精溫度計(jì)和金屬簧片溫度計(jì),它們雖然沒有毒性,但測 量精度很低,只能作為一個(gè)概略指示。不過在居民住宅中使用已可滿足要求。 在工業(yè)生產(chǎn)和實(shí)驗(yàn)研究中為了配合遠(yuǎn)傳儀表指示,出現(xiàn)了許多不同的溫度檢測 方法,常用的有電阻式、熱電偶式、pn 結(jié)型、輻射型、光纖式及石英諧

43、振型等。 它們都是基于溫度變化引起其物理參數(shù)(如電阻值,熱電勢等)的變化的原理。 隨著大規(guī)模集成電路工藝的提高,出現(xiàn)了多種集成的數(shù)字化溫度傳感器。 3.3.2 ds18b20 性能特點(diǎn)與內(nèi)部結(jié)構(gòu)性能特點(diǎn)與內(nèi)部結(jié)構(gòu) ds18b20 是美國 dallas 公司生產(chǎn)的單總線數(shù)字溫度傳感器,它具有微型化、 低功耗、高性能、抗干擾能力強(qiáng)、易于與未處理器接口等優(yōu)點(diǎn),適合于各種溫 度測控系統(tǒng)。 該器件將半導(dǎo)體溫敏器件、a/d 轉(zhuǎn)化器、存儲器等做在一個(gè)很小的集成電 路芯片上,傳感器直接輸出的就是溫度信號數(shù)字值。信號傳輸采用兩芯(或三 芯)電纜構(gòu)成的單總線結(jié)構(gòu)。一條單總線上可以掛接若干個(gè)數(shù)字溫度傳感器, 每個(gè)傳

44、感器有一個(gè)唯一的地址碼。微控制器通過對器件的尋址,就可以讀取某 個(gè)傳感器的溫度值,從而簡化了信號采集系統(tǒng)的電路結(jié)構(gòu)。 (1) ds18b20 的性能特點(diǎn)如下9 : 1) 獨(dú)特的單線接口僅需要一個(gè)端口引腳進(jìn)行通信; 2) 多個(gè) ds18b20 可以并聯(lián)在惟一的三線上,實(shí)現(xiàn)多點(diǎn)組網(wǎng)功能; 3) 無須外部器件; 4) 可通過數(shù)據(jù)線供電,電壓范圍為 3.05.5v; 5) 零待機(jī)功耗; 6) 溫度以 3 位數(shù)字顯示; 7) 用戶可定義報(bào)警設(shè)置; 8) 報(bào)警搜索命令識別并標(biāo)志超過程序限定溫度(溫度報(bào)警條件)的器件; 9) 負(fù)電壓特性,電源極性接反時(shí),溫度計(jì)不會因發(fā)熱而燒毀,但不能正常 工作。 (2) d

45、s18b20 的外形及管腳排列如下圖 2: 圖 3.7 ds18b20 封裝 (3) ds18b20 內(nèi)部結(jié)構(gòu)主要由六分組成: 1) 64 位光刻 rom。開始 8 位是產(chǎn)品類型的編號,接著是每個(gè)器件的惟一的 序號,共有 48 位,最后 8 位是前 56 位的 crc 校驗(yàn)碼,這也是多個(gè) ds18b20 可 以采用一線進(jìn)行通信的原因10。64 位閃速 rom 的結(jié)構(gòu)如下: 8b 檢驗(yàn) crc48b 序列號8b 工廠代碼 (10h) msb lsb msb lsb msb lsb 內(nèi)部 電源 探測 位 和 單線端口 位 產(chǎn)生器 暫存器 下限觸發(fā) 上限觸發(fā) 溫度傳感器 存儲器和控制邏輯 圖 3.8

46、 ds18b20 內(nèi)部結(jié)構(gòu) 2) 非揮發(fā)的溫度報(bào)警觸發(fā)器 th 和 tl,可通過軟件寫入用戶報(bào)警上下限值。 3) 高速暫存存儲,可以設(shè)置 ds18b20 溫度轉(zhuǎn)換的精度。 ds18b20 溫度傳感器的內(nèi)部存儲器還包括一個(gè)高速暫存 ram 和一個(gè)非易失 性的可電擦除的 e2pram。高速暫存 ram 的結(jié)構(gòu)為 8 字節(jié)的存儲器,結(jié)構(gòu)如圖 2.1 所示。頭 2 個(gè)字節(jié)包含測得的溫度信息,第 3 和第 4 字節(jié) th 和 tl 的拷貝, 是易失的,每次上電復(fù)位時(shí)被刷新。第 5 個(gè)字節(jié),為配置寄存器,它的內(nèi)容用 于確定溫度值的數(shù)字轉(zhuǎn)換分辨率。ds18b20 工作時(shí)寄存器中的分辨率轉(zhuǎn)換為相 應(yīng)精度的溫度

47、數(shù)值。它的內(nèi)部存儲器結(jié)構(gòu)和字節(jié)定義如圖 2.2 所示。低 5 位一 直為,tm 是工作模式位,用于設(shè)置 ds18b20 在工作模式還是在測試模式, byte0溫度測量值 lsb(50h) byte1溫度測量值 msb(50h)e2prom byte2th 高溫寄存器 - th 高溫寄存器 byte3tl 低溫寄存器 - tl 低溫寄存 器 byte4配位寄存器 - 配位寄存器 byte5預(yù)留(ffh) byte6預(yù)留(0ch) byte7預(yù)留(ioh) byte8循環(huán)冗余碼校驗(yàn)(crc) 圖 2.3 ds18b20 內(nèi)部存儲器結(jié)構(gòu) ds18b20 出廠時(shí)該位被設(shè)置為 0,用戶要去改動(dòng),r1 和

48、 r0 決定溫度轉(zhuǎn)換的 精度位數(shù),來設(shè)置分辨率,如圖 2.3。 tm r1r0 1 1 1 1 1 圖 2.4 ds18b20 字節(jié)定義 由表 2.1 可見,分辨率越高,所需要的溫度數(shù)據(jù)轉(zhuǎn)換時(shí)間越長。因此,在 實(shí)際應(yīng)用中要將分辨率和轉(zhuǎn)換時(shí)間權(quán)衡考慮。 高速暫存 ram 的第 6、7、8 字節(jié)保留未用,表現(xiàn)為全邏輯 1。第 9 字節(jié)讀 出前面所有 8 字節(jié)的 crc 碼,可用來檢驗(yàn)數(shù)據(jù),從而保證通信數(shù)據(jù)的正確性。 當(dāng) ds18b20 接收到溫度轉(zhuǎn)換命令后,開始啟動(dòng)轉(zhuǎn)換。轉(zhuǎn)換完成后的溫度值 就以 16 位帶符號擴(kuò)展的二進(jìn)制補(bǔ)碼形式存儲在高速暫存存儲器的第 1、2 字節(jié)。 單片機(jī)可以通過單線接口讀出

49、該數(shù)據(jù),讀數(shù)據(jù)時(shí)低位在先,高位在后,數(shù)據(jù)格 式以 0.0625lsb 形式表示。 當(dāng)符號位 s0 時(shí),表示測得的溫度值為正值,可以直接將二進(jìn)制位轉(zhuǎn)換為 十進(jìn)制;當(dāng)符號位 s1 時(shí),表示測得的溫度值為負(fù)值,要先將補(bǔ)碼變成原碼, 再計(jì)算十進(jìn)制數(shù)值。表 2.2 是一部分溫度值對應(yīng)的二進(jìn)制溫度數(shù)據(jù)6。 表 2.1 ds18b20 溫度轉(zhuǎn)換時(shí)間表: r 1 r 0 分辨率/ 位 溫度最大轉(zhuǎn)向時(shí) 間/ms 00993.75 0110187.5 1011375 1112750 表 2.2一部分溫度對應(yīng)值表 溫度/二進(jìn)制表示十六進(jìn)制表示 +1250000 0111 1101 07d0h 0000 +85000

50、0 0101 0101 0000 0550h +25.06250000 0001 1001 0000 0191h +10.1250000 0000 1010 0001 00a2h +0.50000 0000 0000 0010 0008h 00000 0000 0000 1000 0000h -0.51111 1111 1111 0000 fff8h -10.1251111 1111 0101 1110 ff5eh -25.06251111 1110 0110 1111 fe6fh -551111 1100 1001 0000 fc90h 4) crc 的產(chǎn)生 在 64 b rom 的最高有效

51、字節(jié)中存儲有循環(huán)冗余校驗(yàn)碼(crc) 。主機(jī)根據(jù) rom 的前 56 位來計(jì)算 crc 值,并和存入 ds18b20 中的 crc 值做比較,以判斷主 機(jī)收到的 rom 數(shù)據(jù)是否正確。 另外,由于 ds18b20 單線通信功能是分時(shí)完成的,它有嚴(yán)格的時(shí)隙概念, 因此讀寫時(shí)序很重要。系統(tǒng)對 ds18b20 的各種操作按協(xié)議進(jìn)行。操作協(xié)議為: 初使化 ds18b20(發(fā)復(fù)位脈沖)發(fā) rom 功能命令發(fā)存儲器操作命令處理 數(shù)據(jù)。 5)寄生電源 寄生電源有二極管 vd1、vd2、寄生電容 c 和電源檢測電路組成,如圖所示。 電源檢測電路用于判定供電方式。ds18b20 有兩種供電方式:3.05.5v

52、的電 源供電方式和寄生電源供電方式(直接從數(shù)據(jù)線獲取電源) 。 若采用外部電源給器件供電,外部電源接 vcc 引腳通過 vd2 向器件供電, 如圖所示。 寄生電源供電時(shí),vcc 端接地,器件從單線總線上獲取電源,如圖所示。 在 i/o 線呈低電平時(shí),改由電容 c 上的典雅繼續(xù)向器件供電。該寄生電源的優(yōu) 點(diǎn):第一,檢測遠(yuǎn)程溫度時(shí)無需本地電源;第二、缺少正常電源時(shí)也能讀 rom。 外部電源供電 寄生電源供電 6)溫度報(bào)警信號 ds18b20 完成溫度轉(zhuǎn)化后,就把測的的溫度值與 th、tl 做比較,若 tth 或 t11 主機(jī)寫1時(shí)序 主機(jī)寫0時(shí)序 圖 2.6 寫時(shí)序 寫時(shí)序包括寫 0 時(shí)序和寫 1

53、 時(shí)序。所有寫時(shí)序至少需要 60us,且在 2 次獨(dú)立的寫時(shí)序之間至少需要 1us 的恢復(fù)時(shí)間,都是以總線拉低開始。寫 1 時(shí) 序,主機(jī)輸出低電平,延時(shí) 2us,然后釋放總線,延時(shí) 60us。寫 0 時(shí)序,主機(jī) 輸出低電平,延時(shí) 60us,然后釋放總線,延時(shí) 2us8。 (3) 讀時(shí)序 主機(jī)采樣 主機(jī)采樣 4545 11 主機(jī)寫1時(shí)序 主機(jī)寫0時(shí)序 圖 2.7 讀時(shí)序 總線器件僅在主機(jī)發(fā)出讀時(shí)序是,才向主機(jī)傳輸數(shù)據(jù),所以,在主機(jī)發(fā)出 讀數(shù)據(jù)命令后,必須馬上產(chǎn)生讀時(shí)序,以便從機(jī)能夠傳輸數(shù)據(jù)。所有讀時(shí)序至 少需要 60us,且在 2 次獨(dú)立的讀時(shí)序之間至少需要 1us 的恢復(fù)時(shí)間。每個(gè)讀時(shí) 序都由

54、主機(jī)發(fā)起,至少拉低總線 1us。主機(jī)在讀時(shí)序期間必須釋放總線,并且 在時(shí)序起始后的 15us 之內(nèi)采樣總線狀態(tài)。主機(jī)輸出低電平延時(shí) 2us,然后主機(jī) 轉(zhuǎn)入輸入模式延時(shí) 12us,然后讀取總線當(dāng)前電平,然后延時(shí) 50us4。 3.3.4 ds18b20 的操作協(xié)議的操作協(xié)議 ds18b20 單線通信功能是分時(shí)完成的。單線信號包括復(fù)位脈沖,響應(yīng)脈沖, 寫“0” ,寫“1” ,讀“1” 。它們有嚴(yán)格的時(shí)隙概念。系統(tǒng)對 ds18b20 的操作以 rom 命令(5 個(gè))和存儲器命令(6)形式表現(xiàn),各種指令功能如表 2-3,2-4 所 示。 表 2-3 ds18b20 rom 命令 指 令 約定 代碼 功

55、能 讀 rom 33h 讀 ds18b20 中的編碼(既讀 64 位地址) 符 合 rom 55h 發(fā)出此命令后,接著發(fā)出 64 位 rom 編碼,訪問單總線上與該 編碼相應(yīng)的 ds18b20,使之做出響應(yīng),為下一步對該 ds18b20 的讀 寫做準(zhǔn)備。 搜 索 rom 0f0h 用于確定掛在同一總線上 ds18b20 的個(gè)數(shù)和識別 64 位 rom 地 址,為操作各個(gè)器件做好準(zhǔn)備。 跳 過 rom 0cch 忽略 64 位 rom 地址,直接向 ds18b20 發(fā)溫度轉(zhuǎn)換命令,適用 于單片工作。 告 警搜索 命令 0ech 執(zhí)行后,只有溫度超過設(shè)定上限或是下限的片子做出響應(yīng)。 表 2-4 d

56、s18b20 ram 命令 指令 約定 代碼 功能 溫度 變換 44h啟動(dòng) ds18b20 進(jìn)行溫度轉(zhuǎn)換,結(jié)果存入內(nèi)部 ram。 讀暫 存器 0beh讀內(nèi)部 ram 中的內(nèi)容。 寫暫 存器 4eh 發(fā)出向內(nèi)部 ram 的第 3、4 字節(jié)寫上、下限溫度數(shù)據(jù)命令, 緊跟該命令之后,是傳送兩字節(jié)的數(shù)據(jù)。 復(fù)制 暫 存 器 48h將 ram 中的第 3、4 字內(nèi)容復(fù)制到 eeprom 中。 重調(diào) eepram 0b8h將 eeprom 中內(nèi)容恢復(fù)到 ram 中的第 3、4 字節(jié)。 讀供 電 方 式 0b4h 讀 ds18b20 的供電模式,寄生供電是 ds18b20 發(fā)送“0” , 外接電源供電 ds

57、18b20 發(fā)送“1” 。 對 ds18b20 操作協(xié)議是:初始化 ds18b20(發(fā)復(fù)位脈沖)發(fā) rom 功能命 令處理數(shù)據(jù)發(fā)存儲命令處理數(shù)據(jù)。 初始化:主機(jī)發(fā)一位復(fù)位脈沖(對短為 480us 的低電平) ,接著主機(jī)釋放總 線進(jìn)入接收狀態(tài),ds18b20 在檢測到 i/o 引腳上的上升沿之后,等待 1560us 然后發(fā)出存在脈沖(60240us 的低電平) 。 寫時(shí)間片:將數(shù)據(jù)線從高電平拉至低電平,產(chǎn)生起始信號。在 15us 之內(nèi)將 所需寫的位送到數(shù)據(jù)線上,在 15us 到 60us 之間對數(shù)據(jù)線進(jìn)行采樣,如果采樣 為高電平,就寫 1,如果是低電平,寫 0 就發(fā)生。在開始另一個(gè)寫周期前必須

58、有 1us 以上的高電平恢復(fù)期。 讀時(shí)間片:主機(jī)將數(shù)據(jù)線從高電平拉至低電平 1us 以上,再使數(shù)據(jù)線升為 高電平,從而產(chǎn)生讀起始信號。主機(jī)在讀時(shí)間片下降沿之后 15us 內(nèi)完成讀位。 每個(gè)讀周期最短的持續(xù)時(shí)間為 60us,各個(gè)讀周期之間必須有 1us 以上的高電平 恢復(fù)期。 用戶對于 ds18b20 的訪問有三個(gè)步驟: (1).初始化 用戶通過信號線,向 ds18b20 發(fā)送一個(gè)滿足特定時(shí)序的負(fù)脈沖,信號線上 所有 ds18b20 芯片都被復(fù)位。準(zhǔn)備接受用戶的序列號命令。 (2).序列號訪問命令 接下來,用戶通過信號線,發(fā)送一個(gè)特定的 64 位序列號編碼。這時(shí),信號 線上所有相連 ds18b2

59、0 都進(jìn)行編碼匹配,只有編碼一致的 ds18b20 才被激活, 可以接受下面的內(nèi)存訪問命令。 (3).存訪問命令 在用戶發(fā)送序列號訪問命令選定 ds18b20 芯片后,被選中的芯片便可以接 受內(nèi)存訪問命令。讀取溫度數(shù)據(jù),設(shè)定溫度報(bào)警限。二進(jìn)制數(shù)據(jù)與溫度的對應(yīng) 關(guān)系見表 2-5。 表 2-5 二進(jìn)制數(shù)據(jù)與溫度的對應(yīng)關(guān)系 溫度溫度數(shù)據(jù)輸出(二進(jìn)制)溫度數(shù)據(jù)輸出(16 進(jìn)制) +125 0000 0111 1101 000007d0h +85 0000 0101 0101 00000550h +25.0625 0000 0001 1001 00010191h +10.125 0000 0000 10

60、10 001000a2h +0.5 0000 0000 0000 10000008h 0 0000 0000 0000 0000000h -0.5 1111 1111 1111 1000 fff8h -10.125 1111 1111 0101 1110ff5eh -25.0625 1111 1110 0110 1111 ff6fh -55 1111 1100 1001 0000fc90h 3.3.5 ds18b20 序列號編碼序列號編碼 ds18b20 內(nèi)部具有出廠前固化的 8 字節(jié)代碼,如表所示。 表 2-6 64 位光刻 rom 8 位 crc 代碼48 位器件序列號8 位產(chǎn)品類型碼(2

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論