找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 14815|回復(fù): 2
打印 上一主題 下一主題
收起左側(cè)

51單片機(jī)溫控

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:235869 發(fā)表于 2017-11-11 11:14 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
目 錄
☆摘要 ……………………………………………………………………………2
☆課題任務(wù) ………………………………………………………………………4
☆第1章  總體方案設(shè)計 ………………………………………………………5
☆第2章.智能開發(fā)版部分
2.1.  51系列單片機(jī)的原理圖…………………………………………………7
2.1.1. 基本51系列單片機(jī)的原理圖及STC12C5A60S2主要性能 …………7
2.1.2. STC12C5A60S2單片機(jī)部內(nèi)部結(jié)構(gòu)……………………………………7
2.2   51系列單片機(jī)的引腳功能 ………………………………………………9
2.2.1. I/O端口線輸入輸出引腳………………………………………………9
2.2.2. 控制線控制引腳 ………………………………………………………10
2.2.3. 外接晶體端 ……………………………………………………………10
2.3     51系列單片機(jī)的時序 …………………………………………………10
2.4.1   智能最小系統(tǒng)的LED顯示器接口 ……………………………………11
2.4.2   音頻放大電路 …………………………………………………………12
☆第3章.關(guān)于DS18B20的介紹
3.1.DS18B20簡介………………………………………………………………13
3.2單總線數(shù)字溫度計硬件設(shè)計原理部分……………………………………13
3.3DS18B20的封裝及內(nèi)部結(jié)構(gòu)………………………………………………14
3.4DS18B20的測溫原理………………………………………………………14
3.5DS18B20的工作時序………………………………………………………15
3.6DS18B20與單片機(jī)的典型接口設(shè)計………………………………………15
3.7DS18B20的精確延時問題  ………………………………………………16
3.8DS18B20工作原理及應(yīng)用…………………………………………………16
3.9控制器對18B20操作流程………………………………………………17
3.10DS18B20芯片與單片機(jī)的接口 …………………………………………18
☆第4章.程序
4.1溫度監(jiān)測51單片機(jī)程序 …………………………………………………18
4.2測溫程序流程框圖…………………………………………………………25
☆第5章.調(diào)試過程
軟件、硬件調(diào)試 ………………………………………………………………27
☆第6章效果展示
6.1實現(xiàn)效果……………………………………………………………………27
6.2實物效果圖 ………………………………………………………………27
☆附一:硬件原理圖……………………………………………………………28
☆附二:材料清單………………………………………………………………28
☆致謝……………………………………………………………………………30
☆參考文獻(xiàn)………………………………………………………………………31
溫度是一種最基本的環(huán)境參數(shù),在工農(nóng)業(yè)生產(chǎn)及日常生活中對溫度的測量及控制具有重要意義。溫度的測量及控制對保證產(chǎn)品質(zhì)量、提高生產(chǎn)效率、節(jié)約能源、生產(chǎn)安全、促進(jìn)國民經(jīng)濟(jì)的發(fā)展起到非常重要的作用。由于溫度測量的普遍性,溫度傳感器的數(shù)量在各種傳感器中居首位,約占50%。以往,在實際的溫度控制系統(tǒng)中,多采用熱敏電阻器或熱電偶測量溫度。這種溫度采集電路有時需要冷端補(bǔ)償電路,這樣就增加了電路的復(fù)雜性,而且該種電路易受干擾,使采集到的數(shù)據(jù)準(zhǔn)確性不高。隨著微電子技術(shù)、單片機(jī)技術(shù)、傳感器技術(shù)的不斷發(fā)展,為溫度控制系統(tǒng)測控功能的完善、測控精度的提高和抗干擾能力的增強(qiáng)等提供了條件。本文設(shè)計了一種基于AT89C51 單片機(jī)與DS18B20 的溫度控制系統(tǒng)。該設(shè)計通過AT89S52 單片機(jī)驅(qū)動數(shù)字溫度傳感器DS18B20,進(jìn)行溫度數(shù)據(jù)采集、讀取、處理,并通過數(shù)碼管顯示出來。同時,也可通過RS-232 串行口與PC 機(jī)連接,將數(shù)據(jù)傳送至PC 機(jī)系統(tǒng),從而方便溫度數(shù)據(jù)傳輸和統(tǒng)計工作。該系統(tǒng)還可擴(kuò)展成為多點溫度采集系統(tǒng)、溫度遠(yuǎn)程監(jiān)控系統(tǒng)等。
溫度傳感器是通過物體隨溫度變化而改變某種特性來間接測量的。不少材料、元件的特性都隨溫度的變化而變化,所以能作溫度傳感器的材料相當(dāng)多。溫度傳感器隨溫度而引起物理參數(shù)變化的有:膨脹、電阻、電容、而電動勢、磁性能、頻率、光學(xué)特性及熱噪聲等等。隨著生產(chǎn)的發(fā)展,新型溫度傳感器還會不斷涌現(xiàn)。由于工農(nóng)業(yè)生產(chǎn)中溫度測量的范圍極寬,從零下幾百度到零上幾千度,而各種材料做成的溫度傳感器只能在一定的溫度范圍內(nèi)使用。
溫度傳感器與被測介質(zhì)的接觸方式分為兩大類:接觸式和非接觸式。接觸式溫度傳感器需要與被測介質(zhì)保持熱接觸,使兩者進(jìn)行充分的熱交換而達(dá)到同一溫度。這一類傳感器主要有電阻式、熱電偶、PN結(jié)溫度傳感器等。非接觸式溫度傳感器無需與被測介質(zhì)接觸,而是通過被測介質(zhì)的熱輻射或?qū)α鱾鞯綔囟葌鞲衅,以達(dá)到測溫的目的。
● 關(guān)鍵詞:溫度、控制、監(jiān)測。
Abstract
Temperature is a physicalobjects and degree of industrial and agricultural production process, is a veryimportant and universal measuring parameters. Temperature measurement andcontrol to ensure product quality, improve the production efficiency, energysaving, safety, and to promote the development of the national economy play avery important role. Because the universality of measurement temperature,temperature sensors in the number of sensors in the first place, about 50%.
The temperature sensor isthrough the object with temperature changes some properties to measureindirectly. Many materials, components, with the characteristics of temperaturechanges, so can make much of the temperature sensor materials. The temperaturesensor with temperature changes caused by physical parameters are: inflation,resistor, capacitor, emf, magnetic, optical properties and frequency, thermalnoise, etc. With the development of production, new temperature sensors willemerge. Due to the industrial and agricultural production in very wide range oftemperature measurement, from below a few baidu to QianDu, and all kinds ofseveral above freezing temperature sensor materials only under certaintemperature range.
The temperature sensor andtested medium contact into two categories: touch and non-contact. Contacttemperature sensor and tested medium to keep contact with them, heat exchangerand achieve the same adequately. This kind of sensor are mainly resistive,thermocouple, PN junction temperature sensor etc. Contactless temperaturesensor and tested medium without contact, but through the medium of radiationor by convection to temperature sensor, in order to achieve the goal.
● Key words:Temperature, control, measurement.
課題任務(wù)
本課題主要介紹基于AT89C51單片機(jī)和DS18B20數(shù)字溫度傳感器的溫度測量系統(tǒng)。該系統(tǒng)利用AT89C51單片機(jī)采集爐溫,實現(xiàn)溫度顯示、報警等功能。它以AT89C51單片機(jī)為主控制芯片,采用數(shù)字溫度傳感器DS18B20實現(xiàn)溫度的檢測,其測量范圍在25~31℃之間,精度可以達(dá)到0.1℃,采用LCD液晶顯示模塊,它作為顯示器形象直觀的顯示測出的溫度值,或者采用數(shù)碼管顯示結(jié)果。
簡易溫度檢測系統(tǒng)是通過DS18B20檢測溫度,然后通過溫度傳感器通信模塊,將檢測到的實際溫度(環(huán)境溫度)傳送到開發(fā)板上,從而在數(shù)碼管上顯示檢測到的溫度。從中設(shè)置了報警設(shè)備,使檢測的溫度低于或高于一定值,報警設(shè)備就會起作用。
系統(tǒng)中使用到的主要材料有:單片機(jī)STC12C5A60S2,天線,蜂鳴器,多功能開發(fā)板,溫度傳感器(DS18B20)。在實際檢測時,主要通過溫度傳感器(DS18B20)的溫度檢測功能,實現(xiàn)實際環(huán)境溫度在開發(fā)板的數(shù)碼管上的的顯示。
本設(shè)計所介紹的數(shù)字溫度計與傳統(tǒng)的溫度計相比,具有讀數(shù)方便,測溫范圍廣,測溫準(zhǔn)確,其輸出溫度采用數(shù)字顯示,該設(shè)計控制器使用單片機(jī)8051,測溫傳感器使用DS18B20,用 LED數(shù)碼管以串口傳送數(shù)據(jù),實現(xiàn)溫度顯示,能準(zhǔn)確達(dá)到以上要求。DS18B20數(shù)字溫度傳感器是單總線器件與51單片機(jī)組成的測溫系統(tǒng),具有線路簡單、體積小等特點測溫準(zhǔn)確的有點。
多功能開發(fā)板通過下載溫度檢測程序(由STC12C5A60S2接收程序),與溫度檢測模塊(DS18B20)連接,即可實現(xiàn)實時溫度監(jiān)測控制的效果。
第1章.  總體方案設(shè)計
溫度傳感器按傳感器與被測介質(zhì)的接觸方式可分為兩大類:一類是接觸式溫度傳感器,一類是非接觸式溫度傳感器。
該溫度控制系統(tǒng)的設(shè)計包括硬件設(shè)計和軟件設(shè)計兩大部分,結(jié)合實際情況,該系統(tǒng)應(yīng)具備如下功能:
  (1)實時采集溫度;
  (2)顯示溫度;
 。3)串行傳送數(shù)據(jù);
 。4)控制外設(shè);
 。5)溫度超限報警;
  (6)可擴(kuò)展,形成多點溫度采集系統(tǒng),具有遠(yuǎn)程監(jiān)控等功能。
  在該溫度控制系統(tǒng)中AT89S52 單片機(jī)不僅與溫度傳感器DS18B20,外部設(shè)備,數(shù)碼管連接,還通過與串口電平芯片MAX232 連接,由數(shù)據(jù)線連接到PC 上,建立起遠(yuǎn)程通信。系統(tǒng)上電后,AT89S52 單片機(jī)驅(qū)動溫度傳感器DS18B20 工作,進(jìn)行溫度數(shù)據(jù)采集,傳輸。T89S52單片機(jī)在接到溫度傳感器DS18B20 傳送過來的溫度數(shù)據(jù)后,進(jìn)行操作,一方面送至數(shù)碼管顯示模塊進(jìn)行溫度顯示,另一方面將數(shù)據(jù)送至 PC 機(jī)上,方便在 PC 機(jī)進(jìn)行一些后續(xù)處理和控制操作,有利于遠(yuǎn)程控制的實現(xiàn)。溫度控制系統(tǒng)總體框圖如所示。
系統(tǒng)的硬件設(shè)計部分主要由以下幾部分組成:
 。1)單片機(jī)最小系統(tǒng):采用AT89S52 單片機(jī);
  (2)溫度采集模塊:采用DS18B20 溫度傳感器;
 。3)溫度顯示模塊:采用4 位LED 數(shù)碼管顯示;
 。4)串行通信模塊:與PC 機(jī)進(jìn)行串口通信;
 。5)報警電路:采用蜂鳴器報警;
 。6)外部設(shè)備控制電路;
DS18B20是DALLAS公司生產(chǎn)的單總線數(shù)字溫度傳感器,具有3引腳TO-92小體積封裝形式;溫度測量范圍為-55℃~+125℃,可編程為9位~12位A/D轉(zhuǎn)換精度,對應(yīng)的可辨溫度分別為0.5℃、0.25℃、0.125℃和0.0625℃,被測溫度用符號擴(kuò)展的16位數(shù)字量方式串行輸出,支持3V~5.5V的電壓范圍,使系統(tǒng)設(shè)計更靈活、方便,其工作電源既可在遠(yuǎn)端引入,也可采用寄生電源方式產(chǎn)生.同時多個DS18B20可以并聯(lián)到3根或2根線上,CPU只需一根端口線就能與諸多DS18B20通信,占用處理器的端口較少,可節(jié)省大量的引線和邏輯電路。以上特點使DS18B20非常適用于遠(yuǎn)距離多點溫度檢測系統(tǒng)。
file:///C:/Users/%E8%8B%97%E6%B2%B3%E6%B3%89/AppData/Local/Temp/msohtmlclip1/01/clip_image002.jpg
圖5-15 測溫系統(tǒng)硬件原理圖
1)DS18B20的供電方式選擇外接電源的方式,通過單線連接到智能芯片的一個I/O口上。
2)DS18B20與微處理器間采用串行數(shù)據(jù)傳送,在對DS18B20進(jìn)行讀寫編程時,必須嚴(yán)格保證讀寫時序,否則將無法讀取測溫結(jié)果。DS18B20的一線工作協(xié)議流程是:初始化→ROM操作指令→存儲器操作指令→數(shù)據(jù)傳輸。其工作時序包括初始化時序、寫時序和讀時序。
3)在DS18B20測溫程序設(shè)計中,向DS18B20發(fā)出溫度轉(zhuǎn)換命令后,程序總要等待返回信號,一旦DS18B20接觸不好或斷線,當(dāng)程序讀該DS1820時,將沒有返回信號,程序進(jìn)入死循環(huán)。這一點在進(jìn)行DS1820硬件連接和軟件設(shè)計時也要給予一定的重視。
第2章.智能開發(fā)板部分
2.1. 51系列單片機(jī)的內(nèi)部結(jié)構(gòu)
2.1.1.基本51系列單片機(jī)的原理圖
file:///C:/Users/%E8%8B%97%E6%B2%B3%E6%B3%89/AppData/Local/Temp/msohtmlclip1/01/clip_image004.gif
圖1   51系列單片機(jī)原理圖
STC12C5A60S2主要性能
⑴高速:1個時鐘周期/機(jī)器周期,增強(qiáng)型8051內(nèi)核,速度比普通8051快8到12倍
⑵工作頻率:0~35MHZ,相當(dāng)于普通8051:0~420MHZ
⑶時鐘:外部晶體或內(nèi)部RC振蕩器可選,在ISP下載編程用戶程序時設(shè)置
⑷4個16位定時器,兼容普通8051的定時器T0/T1,2路PCA實現(xiàn)2個定時器
⑸可編程時鐘輸出功能,T0在P3.4輸出時鐘,T1在P3.5時輸出時鐘,BRT在P1.0時輸出時鐘
⑹先進(jìn)的指令集結(jié)構(gòu),兼容普通8051指令集,有硬件乘法/除法指令
⑺每個I/O口驅(qū)動功能力均可達(dá)到20mA,但整個芯片最大不得超過55mA
2.1.2.STC12C5A60S2單片機(jī)部內(nèi)部結(jié)構(gòu)
STC12CXX單片機(jī)部內(nèi)部結(jié)構(gòu),各功能部件如圖1。
    ⑴ 有1280字節(jié)片內(nèi)RAM數(shù)據(jù)存儲器。
    ⑵ 芯片內(nèi)有EEPROM功能。            


⑶ 有ISP在系統(tǒng)可編程功能。
⑷ 8通道10位高速ADC模擬到數(shù)據(jù)轉(zhuǎn)換器。
⑸ 可編程計數(shù)器陣列PCA和可編程脈寬調(diào)節(jié)器PWM,右實現(xiàn)時鐘和可調(diào)頻率的PWM輸出。
⑹ 高速SPI通信端口。
⑺ 全雙工異步串行口(UART)
⑻ 32個通用寄存器。
⑼ 硬件看門狗功能。
file:///C:/Users/%E8%8B%97%E6%B2%B3%E6%B3%89/AppData/Local/Temp/msohtmlclip1/01/clip_image006.jpg
圖2 STC12CXX系列典型單片機(jī)內(nèi)部結(jié)構(gòu)圖
2.2 51系列單片機(jī)的引腳功能
file:///C:/Users/%E8%8B%97%E6%B2%B3%E6%B3%89/AppData/Local/Temp/msohtmlclip1/01/clip_image008.jpg
圖3  微型單片機(jī)的引腳
2.2.1.I/O端口線輸入輸出引腳
P0.0—P0.7(39—32):P0口是一個漏極開路型準(zhǔn)雙向I/O口。在訪問外部存儲器時,它是分時多路轉(zhuǎn)換的地址(低8位)和數(shù)據(jù)總線,在訪問期間激活了內(nèi)部的上拉電阻。在EPROM編程時,它接收指令字節(jié),而在驗證程序時,則輸出指令字節(jié)。驗證時,要求外接上拉電阻。
P1.0—P1.7(1-8):P1口是帶內(nèi)部上拉電阻的8位雙向I/O口。在EPROM編程和程序驗證時,它接收低8位地址。
P2.0—P2.7(21-28):P2口是一個帶內(nèi)部上拉電阻的8位雙向I/O口。在訪問外部存儲器時,它送出高8位地址。在對EFROM編程和程序驗證期間,它接收高8位地址。
P3.0—P3.7(10-17):P3口是一個帶內(nèi)部上拉電阻的8位雙向I/O口。在MCS—5l中,這8個引腳還兼有專用功能,P3的8條口線都定義有第二功能,詳見表1-1-1。
file:///C:/Users/%E8%8B%97%E6%B2%B3%E6%B3%89/AppData/Local/Temp/msohtmlclip1/01/clip_image010.jpg
圖4
file:///C:/Users/%E8%8B%97%E6%B2%B3%E6%B3%89/AppData/Local/Temp/msohtmlclip1/01/clip_image012.jpgfile:///C:/Users/%E8%8B%97%E6%B2%B3%E6%B3%89/AppData/Local/Temp/msohtmlclip1/01/clip_image014.jpg2.2.2.控制線控制引腳(ALE/PROG、     、          、RST/VPD)
ALE(30腳)地址鎖存控制信號。在系統(tǒng)擴(kuò)展時,ALE用于控制P0口輸出的低8位地址鎖存起來,以實現(xiàn)低位地址和數(shù)據(jù)的隔離。此外,由于ALE是以晶振1/6的固定頻率輸出的正脈沖,因此,可作為外部時鐘或外部定時脈沖使用。
file:///C:/Users/%E8%8B%97%E6%B2%B3%E6%B3%89/AppData/Local/Temp/msohtmlclip1/01/clip_image016.jpg(29腳)外部程序存儲器讀選通信號。在讀外部ROM時,有效(低電平),以實現(xiàn)外部ROM單元的讀操作。
file:///C:/Users/%E8%8B%97%E6%B2%B3%E6%B3%89/AppData/Local/Temp/msohtmlclip1/01/clip_image018.jpg(31腳)訪問程序存儲控制信號。當(dāng)信號為低電平時,對ROM的讀操作限定在外部程序存儲器;當(dāng)信號為高電平時,對ROM的讀操作是從內(nèi)部程序存儲器開始,并可延至外部程序存儲器。
RST/Vpp (9腳) 復(fù)位信號。當(dāng)輸入的復(fù)位信號延續(xù)兩個機(jī)器周期以上的高電平時即為有效,用以完成單片機(jī)的復(fù)位初始化操作。
2.2.3.外接晶體端
XTAL1(19腳)和XTAL2(18腳)外接晶體引線端。當(dāng)使用芯片內(nèi)部時鐘時,此二引線端用于外接石英晶體和微調(diào)電容;當(dāng)使用外部時鐘時,用于接外部時鐘脈沖信號。
主電源引腳高VCC和低VSS
VCC(40腳)+5V電源。
VSS(20腳)地線(GND)。     
以上是MCS-51單片機(jī)芯片40條引腳的定義及簡單功能說明,讀者可以對照實訓(xùn)電路找到相應(yīng)引腳,在電路中查看每個引腳的連接使用。
2.3  51系列單片機(jī)的時序
805l的基本時序周期一條指令譯碼產(chǎn)生的一系列微操作信號在時間上有嚴(yán)格的先后次序,這種次序就是計算機(jī)的時序。其基本時序周期有如下四種。
●振蕩周期:指振蕩源的周期,若為內(nèi)部產(chǎn)生方式,則為石英晶體的振蕩周期。T振蕩周期=1/fosc;
●時鐘周期:(稱S周期)為振蕩周期的兩倍,時鐘周期=2倍的振蕩周期T時鐘周期=2* T振蕩周期;
●機(jī)器周期:一個機(jī)器周期含6個時鐘周期(S周期)。T機(jī)器周期=6*T時鐘周期=12* T振蕩周期=12/fosc; STC12CXX系列單片機(jī)有1個時鐘周期/機(jī)器周期。
●指令周期:完成一條指令占用的全部時間。805l的指令周期含1—4個機(jī)器周期,其中多數(shù)為單周期指令,還有2周期和4周期指令。
2.4 . 1   智能最小系統(tǒng)的LED顯示器接口
通過2個74LS595芯片將8位段碼信號(a—h)和8位位碼信號(a1—a8)串行轉(zhuǎn)為并行信號驅(qū)動2個LED顯示模塊的8個LED數(shù)碼燈,P2.1是a—h、a1—a8串行數(shù)據(jù)的輸入端(SER),P2.2串行移位信號的SCLK輸入端,P2.3是并輸出信號的鎖存端(RCLK)。這些信號由單片機(jī)軟件生成。
file:///C:/Users/%E8%8B%97%E6%B2%B3%E6%B3%89/AppData/Local/Temp/msohtmlclip1/01/clip_image019.gif
圖1-1-12 顯示部分電路
在單片機(jī)系統(tǒng)中,通常用LED數(shù)碼顯示器來顯示各種數(shù)字或符號。由于它具有顯示清晰、亮度高、使用電壓低、壽命長的特點,因此使用非常廣泛。
LED顯示器又稱數(shù)碼管,八段LED顯示器由8個發(fā)光二極管組成。其中7個發(fā)光二極管構(gòu)成字型“8”的各個筆畫段,另一個小數(shù)點為dp發(fā)光二極管。LED顯示器有兩種不同的形式:一種是發(fā)光二極管的陽極都連在一起的,稱之為共陽極LED顯示器;另一種是發(fā)光二極管的陰極都連在一起的,稱之為共陰極LED顯示器。如圖1-1-13所示。
共陰和共陽結(jié)構(gòu)的LED顯示器各筆劃段名和安排位置是相同的。當(dāng)二極管導(dǎo)通時,相應(yīng)的筆劃段發(fā)亮,由發(fā)亮的筆劃段組合而顯示各種字符。8個筆劃段hgfedcba對應(yīng)于一個字節(jié)(8位)的D7 D6 D5 D4 D3 D2 D1 D0,于是用8位二進(jìn)制碼就可以表示欲顯示字符的字型代碼。例如,對于共陰LED顯示器,當(dāng)公共陰極接地(為零電平),而陽極hgfedcba各段為0111011時,顯示器顯示"P"字符,即對于共陰極LED顯示器,“P”字符的字形碼是73H。如果是共陽LED顯示器,公共陽極接高電平,顯示“P”字符的字形代碼應(yīng)為10001100(8CH)。
file:///C:/Users/%E8%8B%97%E6%B2%B3%E6%B3%89/AppData/Local/Temp/msohtmlclip1/01/clip_image021.jpg
圖1-1-13  LED數(shù)碼管共陽極和共陰極示圖
LED顯示方式有動態(tài)顯示和靜態(tài)顯示兩種方式。本系統(tǒng)采用動態(tài)掃描顯示接口電路,動態(tài)顯示接口電路是把所有顯示器的8個筆劃段a-h同名端連在一起,而每一個顯示器的公共極COM各自獨立地受I/O線控制。CPU向字段輸出口送出字型碼時,所有顯示器接收到相同的字型碼,但究竟是哪個顯示器亮,則取決于COM端。也就是說我們可以采用分時的方法,輪流控制各個顯示器的COM端,使各個顯示器輪流點亮。在輪流點亮掃描過程中,每位顯示器的點亮?xí)r間是極為短暫的(約1ms),但由于人的視覺暫留現(xiàn)象及發(fā)光二極管的余輝效應(yīng),盡管實際上各位顯示器并非同時點亮,但只要掃描的速度足夠快,給人的印象就是一組穩(wěn)定的顯示數(shù)據(jù),不會有閃爍感。
2.4. 2  音頻放大電路
音頻放大電路由放大三接管、蜂鳴器SPEAKER、限流電阻組成,音頻信號的輸出連接到單片機(jī)P3.3如圖1-1-15所示當(dāng)P3.2為低時,SPEAKER發(fā)聲,聲音脈寬不同發(fā)出的聲音不同。圖1-1-15 音頻放大電路。
file:///C:/Users/%E8%8B%97%E6%B2%B3%E6%B3%89/AppData/Local/Temp/msohtmlclip1/01/clip_image023.jpgP3.2
圖1-1-15 音頻放大電路
第3章.關(guān)于DS18B20的介紹
DS18B20是美國DALLAS半導(dǎo)體公司繼DS1820之后最新推出的一種改進(jìn)型智能溫度傳感器。與傳統(tǒng)的熱敏電阻相比,他能夠直接讀出被測溫度并且可根據(jù)實際要求通過簡單的編程實現(xiàn)9~12位的數(shù)字值讀數(shù)方式?梢苑謩e在93.75 ms和750 ms內(nèi)完成9位和12位的數(shù)字量,并且從DS18B20讀出的信息或?qū)懭隓S18B20的信息僅需要一根口線(單線接口)讀寫,溫度變換功率來源于數(shù)據(jù)總線,總線本身也可以向所掛接的DS18B20供電,而無需額外電源。因而使用DS18B20可使系統(tǒng)結(jié)構(gòu)更趨簡單,可靠性更高。他在測溫精度、轉(zhuǎn)換時間、傳輸距離、分辨率等方面較DS1820有了很大的改進(jìn),給用戶帶來了更方便的使用和更令人滿意的效果。  
3.1.DS18B20簡介
    1)獨特的單線接口方式:DS18B20與微處理器連接時僅需要一條口線即可實現(xiàn)微處理器與DS18B20的雙向通訊。
    2)在使用中不需要任何外圍元件。
    3)可用數(shù)據(jù)線供電,電壓范圍:+3.0~ +5.5 V。
    4)測溫范圍:-55 ~+125 ℃。固有測溫分辨率為0.5 ℃。
    5)通過編程可實現(xiàn)9~12位的數(shù)字讀數(shù)方式。
    6)用戶可自設(shè)定非易失性的報警上下限值。
    7)支持多點組網(wǎng)功能,多個DS18B20可以并聯(lián)在惟一的三線上,實現(xiàn)多點測溫。
(8)負(fù)壓特性,電源極性接反時,溫度計不會因發(fā)熱而燒毀,但不能正常工作。
3.2單總線數(shù)字溫度計硬件設(shè)計原理部分
file:///C:/Users/%E8%8B%97%E6%B2%B3%E6%B3%89/AppData/Local/Temp/msohtmlclip1/01/clip_image025.gif
3.3  DS18B20的封裝及內(nèi)部結(jié)構(gòu)
file:///C:/Users/%E8%8B%97%E6%B2%B3%E6%B3%89/AppData/Local/Temp/msohtmlclip1/01/clip_image027.jpg
DS18B20引腳功能:1、 GND為電源地
2、 DQ為數(shù)字信號輸入/輸出端
3、VDD為外接供電電源輸入端(在寄生電源接線方式時接地)
DS18B20內(nèi)部結(jié)構(gòu)主要由四部分組成:64位光刻ROM、溫度傳感器、非揮發(fā)的溫度報警觸發(fā)器TH和TL、配置寄存器。
3.4 DS18B20的測溫原理
    DS18B20的測溫原理如圖2所示,圖中低溫度系數(shù)晶振的振蕩頻率受溫度的影響很小〔1〕,用于產(chǎn)生固定頻率的脈沖信號送給減法計數(shù)器1,高溫度系數(shù)晶振隨溫度變化其震蕩頻率明顯改變,所產(chǎn)生的信號作為減法計數(shù)器2的脈沖輸入,圖中還隱含著計數(shù)門,當(dāng)計數(shù)門打開時,DS18B20就對低溫度系數(shù)振蕩器產(chǎn)生的時鐘脈沖后進(jìn)行計數(shù),進(jìn)而完成溫度測量。計數(shù)門的開啟時間由高溫度系數(shù)振蕩器來決定,每次測量前,首先將-55 ℃所對應(yīng)的基數(shù)分別置入減法計數(shù)器1和溫度寄存器中,減法計數(shù)器1和溫度寄存器被預(yù)置在 -55 ℃ 所對應(yīng)的一個基數(shù)值。減法計數(shù)器1對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進(jìn)行減法計數(shù),當(dāng)減法計數(shù)器1的預(yù)置值減到0時溫度寄存器的值將加1,減法計數(shù)器1的預(yù)置將重新被裝入,減法計數(shù)器1重新開始對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進(jìn)行計數(shù),如此循環(huán)直到減法計數(shù)器2計數(shù)到0時,停止溫度寄存器值的累加,此時溫度寄存器中的數(shù)值即為所測溫度。圖2中的斜率累加器用于補(bǔ)償和修正測溫過程中的非線性,其輸出用于修正減法計數(shù)器的預(yù)置值,只要計數(shù)門仍未關(guān)閉就重復(fù)上述過程,直至溫度寄存器值達(dá)到被測溫度值,這就是DS18B20的測溫原理。
另外,由于DS18B20單線通信功能是分時完成的,他有嚴(yán)格的時隙概念,因此讀寫時序很重要。系統(tǒng)對DS18B20的各種操作必須按協(xié)議進(jìn)行。操作協(xié)議為:初始化DS18B20(發(fā)復(fù)位脈沖)→發(fā)ROM功能命令→發(fā)存儲器操作命令→處理數(shù)據(jù)。
3.5DS18B20的工作時序
DS18B20的一線工作協(xié)議流程是:初始化→ROM操作指令→存儲器操作指令→數(shù)據(jù)傳輸。其工作時序包括初始化時序、寫時序和讀時序,如圖3a)(b)(c)所示。
file:///C:/Users/%E8%8B%97%E6%B2%B3%E6%B3%89/AppData/Local/Temp/msohtmlclip1/01/clip_image029.jpg
3.6.DS18B20與單片機(jī)的典型接口設(shè)計
以MCS51單片機(jī)為例,圖3中采用寄生電源供電方式, P1 1口接單線總線為保證在有效的DS18B20時鐘周期內(nèi)提供足夠的電流,可用一個MOSFET管和89C51的P1 0來完成對總線的上拉〔2〕。當(dāng)DS18B20處于寫存儲器操作和溫度A/D變換操作時,總線上必須有強(qiáng)的上拉,上拉開啟時間最大為10 μs。采用寄生電源供電方式是VDD和GND端均接地。由于單線制只有一根線,因此發(fā)送接收口必須是三態(tài)的。主機(jī)控制DS18B20完成溫度轉(zhuǎn)換必須經(jīng)過3個步驟:初始化、ROM操作指令、存儲器操作指令。假設(shè)單片機(jī)系統(tǒng)所用的晶振頻率為12 MHz,根據(jù)DS18B20的初始化時序、寫時序和讀時序,分別編寫3個子程序:INIT為初始化子程序,WRITE為寫(命令或數(shù)據(jù))子程序,READ為讀數(shù)據(jù)子程序,所有的數(shù)據(jù)讀寫均由最低位開始,實際在實驗中不用這種方式,只要在數(shù)據(jù)線上加一個上拉電阻4.7 kΩ,另外2個腳分別接電源和地。  
3.7 DS18B20的精確延時問題
    雖然DS18B20有諸多優(yōu)點,但使用起來并非易事,由于采用單總線數(shù)據(jù)傳輸方式,DS18B20的數(shù)據(jù)I/O均由同一條線完成。因此,對讀寫的操作時序要求嚴(yán)格。為保證DS18B20的嚴(yán)格I/O時序,需要做較精確的延時。在DS18B20操作中,用到的延時有15 μs,90 μs,270 μs,540 μs等。
    只要用該函數(shù)進(jìn)行大約15 μs×N的延時即可。有了比較精確的延時保證,就可以對DS18B20進(jìn)行讀寫操作、溫度轉(zhuǎn)換及顯示等操作。  
3.8 DS18B20工作原理及應(yīng)用
DS18B20的溫度檢測與數(shù)字?jǐn)?shù)據(jù)輸出全集成于一個芯片之上,從而抗干擾力更強(qiáng)。其一個工作周期可分為兩個部分,即溫度檢測和數(shù)據(jù)處理。在講解其工作流程之前我們有必要了解18B20的內(nèi)部存儲器資源。18B20共有三種形態(tài)的存儲器資源,它們分別是:
ROM 只讀存儲器,用于存放DS18B20ID編碼,其前8位是單線系列編碼(DS18B20的編碼是19H),后面48位是芯片唯一的序列號,最后8位是以上56的位的CRC碼(冗余校驗)。數(shù)據(jù)在出產(chǎn)時設(shè)置不由用戶更改。DS18B20共64位ROM。
RAM 數(shù)據(jù)暫存器,用于內(nèi)部計算和數(shù)據(jù)存取,數(shù)據(jù)在掉電后丟失,DS18B20共9個字節(jié)RAM,每個字節(jié)為8位。第1、2個字節(jié)是溫度轉(zhuǎn)換后的數(shù)據(jù)值信息,第3、4個字節(jié)是用戶EEPROM(常用于溫度報警值儲存)的鏡像。在上電復(fù)位時其值將被刷新。第5個字節(jié)則是用戶第3個EEPROM的鏡像。第6、7、8個字節(jié)為計數(shù)寄存器,是為了讓用戶得到更高的溫度分辨率而設(shè)計的,同樣也是內(nèi)部溫度轉(zhuǎn)換、計算的暫存單元。第9個字節(jié)為前8個字節(jié)的CRC碼。EEPROM 非易失性記憶體,用于存放長期需要保存的數(shù)據(jù),上下限溫度報警值和校驗數(shù)據(jù),DS18B20共3位EEPROM,并在RAM都存在鏡像,以方便用戶操作。
3.9 控制器對18B20操作流程
1. 復(fù)位:首先我們必須對DS18B20芯片進(jìn)行復(fù)位,復(fù)位就是由控制器(單片機(jī))給DS18B20單總線至少480uS的低電平信號。當(dāng)18B20接到此復(fù)位信號后則會在15~60uS后回發(fā)一個芯片的存在脈沖。
2. 存在脈沖:在復(fù)位電平結(jié)束之后,控制器應(yīng)該將數(shù)據(jù)單總線拉高,以便于在15~60uS后接收存在脈沖,存在脈沖為一個60~240uS的低電平信號。至此,通信雙方已經(jīng)達(dá)成了基本的協(xié)議,接下來將會是控制器與18B20間的數(shù)據(jù)通信。如果復(fù)位低電平的時間不足或是單總線的電路斷路都不會接到存在脈沖,在設(shè)計時要注意意外情況的處理。
3. 控制器發(fā)送ROM指令:雙方打完了招呼之后最要將進(jìn)行交流了,ROM指令共有5條,每一個工作周期只能發(fā)一條,ROM指令分別是讀ROM數(shù)據(jù)、指定匹配芯片、跳躍ROM、芯片搜索、報警芯片搜索。ROM指令為8位長度,功能是對片內(nèi)的64位光刻ROM進(jìn)行操作。其主要目的是為了分辨一條總線上掛接的多個器件并作處理。誠然,單總線上可以同時掛接多個器件,并通過每個器件上所獨有的ID號來區(qū)別,一般只掛接單個18B20芯片時可以跳過ROM指令(注意:此處指的跳過ROM指令并非不發(fā)送ROM指令,而是用特有的一條“跳過指令”)。ROM指令在下文有詳細(xì)的介紹。
4. 控制器發(fā)送存儲器操作指令:在ROM指令發(fā)送給18B20之后,緊接著(不間斷)就是發(fā)送存儲器操作指令了。操作指令同樣為8位,共6條,存儲器操作指令分別是寫RAM數(shù)據(jù)、讀RAM數(shù)據(jù)、將RAM數(shù)據(jù)復(fù)制到EEPROM、溫度轉(zhuǎn)換、將EEPROM中的報警值復(fù)制到RAM、工作方式切換。存儲器操作指令的功能是命令18B20作什么樣的工作,是芯片控制的關(guān)鍵。
5. 執(zhí)行或數(shù)據(jù)讀寫:一個存儲器操作指令結(jié)束后則將進(jìn)行指令執(zhí)行或數(shù)據(jù)的讀寫,這個操作要視存儲器操作指令而定。如執(zhí)行溫度轉(zhuǎn)換指令則控制器(單片機(jī))必須等待18B20執(zhí)行其指令,一般轉(zhuǎn)換時間為500uS。如執(zhí)行數(shù)據(jù)讀寫指令則需要嚴(yán)格遵循18B20的讀寫時序來操作。數(shù)據(jù)的讀寫方法將有下文有詳細(xì)介紹。
若要讀出當(dāng)前的溫度數(shù)據(jù)我們需要執(zhí)行兩次工作周期,第一個周期為復(fù)位、跳過ROM指令、執(zhí)行溫度轉(zhuǎn)換存儲器操作指令、等待500uS溫度轉(zhuǎn)換時間。緊接著執(zhí)行第二個周期為復(fù)位、跳過ROM指令、執(zhí)行讀RAM的存儲器操作指令、讀數(shù)據(jù)(最多為9個字節(jié),中途可停止,只讀簡單溫度值則讀前2個字節(jié)即可)。
3.10 DS18B20芯片與單片機(jī)的接口
file:///C:/Users/%E8%8B%97%E6%B2%B3%E6%B3%89/AppData/Local/Temp/msohtmlclip1/01/clip_image031.jpg
第4章.程序及效果展示
4.1 溫度監(jiān)測51單片機(jī)程序
#include<reg51.h>
#include<intrins.h>
#defineuchar unsigned char
#defineuint   unsigned int
sbitDQ=P1^4;      //定義通信端口
sbitser=P2^1;      //LED顯示 595數(shù)據(jù)輸入
sbitsrclk=P2^2;
sbitrclk=P2^3;
sbitP10=P3^2;     //蜂鳴器報警引腳,P10=1時報警
uchar code
LED[12]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff,0xbf};//0123456789+-
Uchar code
LED_dot[10]={0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x78,0x00,0x10};     //帶小數(shù)點
ucharidata T[5]={0,0,0,0,0};
unsignedchar seg,QQ=0,weima=0x0ef;
unsignedchar FLAG=0;
uinttemph=31;        //初始上限值
uinttempl=25;        //初始下限值
//--------------------------------------------------------------
voiddelayx_us(unsigned char i) //11*x+12
{
while(i--);
}
voiddelay1_us()//1.45us
{_nop_();_nop_();_nop_();
_nop_();_nop_();_nop_();
}
voiddelay(unsigned int x)
{unsignedint y=10000    ;
while(x--)
{
while(y--);
y=10000;
}
}
//---------------------------------------------------------------//
void   outbyte(uchar a,b)
{uchar j;
   for(j=0;j<8;j++)
   {      if(a&0x80)  ser=1;  else ser=0;
            a=a<<1;
            srclk=0;
            srclk=1;
    }
    for(j=0;j<8;j++)
   {       if(b&0x80)  ser=1; else  ser=0;
            b=b<<1;
            srclk=0;
            srclk=1;
    }
            rclk=0;
            rclk=1;
         }
ucharInit_DS18B20(void)
{ unsignedchar flag=0;
  DQ=0;    //單片機(jī)將DQ拉低
  delayx_us(250); //精確延時 480us ~960us
  delayx_us(250);
  DQ=1;   //拉高總線
  delayx_us(30);     //大于15US~60US
  flag=DQ;     //稍做延時后 如果x=0則初始化成功 x=1則初始化失敗
  delayx_us(240);
  DQ=1;
  return(flag);
}
ucharReadBit(void)
{bit s;
  DQ=1;           //拉高電平,準(zhǔn)備啟動讀時序
delay1_us();
DQ=0;
delay1_us();
delay1_us();
DQ=1;               //在15US內(nèi)停止低電平
delay1_us();
delay1_us();
delay1_us();
delay1_us();
delay1_us();
delay1_us();
delay1_us();
s=DQ;           //讀取1位數(shù)據(jù)
delayx_us(60);          //讀時序不能少于60us
return(s);
}
ucharReadOneChar(void)
{
unsignedchar i,dat=0;
unsignedchar     j;
for(i=0;i<8;i++)
{j=ReadBit();
  dat=(j<<7)|(dat>>1);
}
return(dat);
}
voidWriteOneChar(unsigned char dat)
{
unsignedchar i=0;
bit n;
for (i=0;i<8;i++)
{   DQ=1; //拉高電平,準(zhǔn)備啟動寫時序
  delay1_us();
  n=dat&0x01;
  dat>>=1;       //取下一位,由低到高
  if(n)       //寫1
    {
      DQ=0;       //拉低電平  15US內(nèi)釋放總線
     delay1_us();
     delay1_us();
      DQ=1;       //寫1
      delayx_us(60);    //整個時序不能低于60US
     }
  else        //寫0
    {
     DQ=0;
     delayx_us(60);  //保持低電平60us~120us
     DQ=1;
     delay1_us();
     }
}
}
floatReadTemperature(void)
{
floatvalue;
unsignedchar a, b;
unsignedint tempInt=0,tempdot=0,tempwhole=0;
Init_DS18B20();
WriteOneChar(0xcc);
WriteOneChar(0x44);
delay(12);
Init_DS18B20();
WriteOneChar(0xcc);
WriteOneChar(0xbe);
a=ReadOneChar();
b=ReadOneChar();
tempInt=b;
tempdot=a;
tempwhole=tempInt*256+tempdot;
value=tempwhole*0.0625;//基本單位為0.0625
return(value);
}
voidtime0() interrupt 1 using 2
{TH0=(65536-4000)/256;
  TL0=(65536-4000)%256;
  if(QQ!=2)
     { seg=LED[T[QQ]];
      outbyte(weima,seg);   }
   else
    { seg=LED_dot[T[QQ]];
      outbyte(weima,seg);   }
   QQ++;
    if(QQ>=4)
    { weima=0x0ef;
     QQ=0;
    }
    else weima=(weima<<1)|0x01;
}
main()
{floattemperature;
int m,n ;
uchar i;
P10=1;
   TMOD=0x21;
   TH0=(65536-4000)/256;
   TL0=(65536-4000)%256;
   TL1=0xfd;TH1=0Xfd;
   SCON=0x50;PCON=0x00;
   TR1=1;
   EA=1;
   ET0=1;
   TR0=1;
while(1)
{
temperature=ReadTemperature();//讀溫度
m=temperature;
if(m>=31)P10=0;    //溫度高于或等于上限值,報警
T[4]=(m%100)/100;
T[3]=(m%100)/10;
T[2]=m%10;
n=(temperature-m)*100+0.5;
T[1]=n/10;
T[0]=n%10;
i=0;
SBUF=0x46;
while(TI==0);
TI=0;
SBUF=0x44;
while(TI==0);
TI=0;
{SBUF=T[3]|0x30;
while(TI==0);
TI=0;
SBUF=T[2]|0x30;
while(TI==0);
TI=0;
SBUF=0x2e;
while(TI==0);                        
TI=0;
SBUF=T[1]|0x30;
while(TI==0);
TI=0;
if(m<25)P10=0;     //溫度低于下限值,報警
elseP10=1;         
}
}
}
file:///C:/Users/%E8%8B%97%E6%B2%B3%E6%B3%89/AppData/Local/Temp/msohtmlclip1/01/clip_image032.gif4.2測溫程序流程框圖
第5章.調(diào)試過程
                                   ——軟件、硬件調(diào)試
1、我們組在前期分工時,利用課余時間焊電路板(電路圖見硬件部分)焊出了我們的第一塊板子;
2、下一步的工作就是軟件部分,簡單點就是編寫程序。剛拿到題目時,老師給了我們一些相關(guān)的資料,我們組花了一天時間先把這些資料研究了下,還是沒有頭緒修改程序。經(jīng)過老師給我們的思路,我們組集體出動到圖書館翻閱關(guān)于51系列軟件編程的相關(guān)資料書籍,程序編寫出來了。
3、我們使用Keil uVision3進(jìn)行程序的編寫,通過單片機(jī)stc-isp-v4.79下載程序到我們焊出的第一塊板子,在我們下載程序后,并沒有實現(xiàn)出我們的所要見到的效果。在LED上顯示95.54。而且始終數(shù)字不變,這點讓我們很郁悶。
4、我們反復(fù)的調(diào)試,我們檢查DS18B20的數(shù)據(jù)輸入/輸出DQ端口與單片機(jī)的P1.4端口相連是否正確,將傳感器DS18B20的地線和外接供電電源輸入端口分別接在單片機(jī)的地線端和+5V電源端口測試電源供電情況。
5、先用萬用表檢查傳感器DS18B20的第3腳是否與電源相連,1腳是否與地相接,結(jié)果無誤。經(jīng)過一上午的鉆研,還是沒有結(jié)果。我們從程序及電路板焊的正確與否,尋找問題,但還是沒有頭緒。我們懷疑板子上的芯片可能時間久了有些可能燒壞了;無奈,我們選擇了再焊一塊板子。
6、第二塊板子因為有第一塊板子的經(jīng)驗,很快就焊接出來了,焊接工藝還是相當(dāng)不錯的,但結(jié)果還是無法實現(xiàn)效果,我們在經(jīng)過討論后,決定請教老師,在老師幫我們仔細(xì)分析下,用了兩三節(jié)課左右的時間才出現(xiàn)預(yù)期的效果,讓我們很是激動。
7、在老師的指導(dǎo)下調(diào)試過程:
我們調(diào)試了測試了波形,發(fā)現(xiàn)DS18B20沒有工作。我們又用萬用表測試了傳感器三只腳的電壓,發(fā)現(xiàn)我們第一塊焊的板子顯示電壓正常,第二塊板子,都顯示5V,經(jīng)檢查,發(fā)現(xiàn)地線接錯了,接入了空腳的一端,我們又將板子的線路重新改裝了一下,效果顯示的很正常,就是報警聲音略微低了一些,老師讓我們改變下程序的關(guān)于聲音的送入時長。
8、第一塊板子,我們判斷可能是DS18B20燒壞了,于是,我向班級同學(xué)借了一個DS18B20重新焊接,皇天不負(fù)有心人,我們兩塊板子效果都實現(xiàn)了。當(dāng)溫度低于設(shè)定的25.00℃時,會報警長鳴,當(dāng)溫度高于31.00℃時,會報警,設(shè)置這兩個溫度點是充分考慮到現(xiàn)在的室溫與人體的溫度,便于通過手上熱傳導(dǎo)控溫。
9、我們還做了錄下了一小段視頻作為紀(jì)念?傮w系統(tǒng)調(diào)試成功,設(shè)計完成。感謝老師的指導(dǎo)和小組成員的共同努力!
第6章效果展示
6.1實現(xiàn)效果
數(shù)字溫度傳感器DS18B20測溫,使用單個DS18B20采集環(huán)境溫度,并使用四位數(shù)碼管顯示溫度結(jié)果,實現(xiàn)了測溫范圍在零下10度到50度,可設(shè)高低溫報警的效果,當(dāng)溫度低于25度,或高于31度的時候,蜂鳴器就會發(fā)出聲音,實現(xiàn)報警,精確度為0.01,DS18B20采用外部電源供電方式,為保證在有效的時鐘周期內(nèi)提供足夠的電流,使用了一個4.7K的電阻,進(jìn)行相應(yīng)的控制。
file:///C:/Users/%E8%8B%97%E6%B2%B3%E6%B3%89/AppData/Local/Temp/msohtmlclip1/01/clip_image034.jpg6.2實物效果圖效果圖
file:///C:/Users/%E8%8B%97%E6%B2%B3%E6%B3%89/AppData/Local/Temp/msohtmlclip1/01/clip_image036.jpgfile:///C:/Users/%E8%8B%97%E6%B2%B3%E6%B3%89/AppData/Local/Temp/msohtmlclip1/01/clip_image038.jpgfile:///C:/Users/%E8%8B%97%E6%B2%B3%E6%B3%89/AppData/Local/Temp/msohtmlclip1/01/clip_image040.jpg
附一:硬件原理圖
file:///C:/Users/%E8%8B%97%E6%B2%B3%E6%B3%89/AppData/Local/Temp/msohtmlclip1/01/clip_image042.gif
附二:材料清單
  
Part Type
  
Designator
Footprint
 
Part Type
Designator
Footprint
 
S3
AJ6
 
10k
R12
805
 
S4
AJ6
 
10k
R16
805
 
S1
AJ6
 
10k
R15
805
 
S2
AJ6
 
10uF
C17
LS-100/16
 
S7
AJ6
 
10uF
C18
LS-100/16
 
S8
AJ6
 
10uF
C14
LS-100/16
 
S6
AJ6
 
10uF
C15
LS-100/16
 
S5
AJ6
 
10uF
C16
LS-100/16
 
L7
LJQ
 
10uF
C3
LS-100/16
 
L6
LJQ
 
11.0592MHZ
Y1
XTAL1
 
L9
LJQ
 
20P
C2
RAD0.1
 
L11
LJQ
 
20P
C1
RAD0.1
 
L10
LJQ
 
32.768KHZ
Y2
RAD0.1
 
L2
LJQ
 
36
R25
805
 
L1
LJQ
 
36
R24
805
 
L3
LJQ
 
36
R27
805
 
L5
LJQ
 
36
R26
805
 
L4
LJQ
 
36
R23
805
 
L21
LJQ
 
36
R20
805
 
L20
LJQ
 
36
R21
805
 
L19
LJQ
 
36
R22
805
 
L22
LJQ
 
74LS595
U9
DIP-16
 
L25
LJQ
 
74LS595
U8
DIP-16
 
L24
LJQ
 
128x64lLCD液晶顯示器插頭
J4
SIP24
 
L23
LJQ
 
430
R100
805
 
L14
LJQ
 
9015
Q6
TO-126
 
L13
LJQ
 
9015
Q9
TO-126
 
L12
LJQ
 
9015
Q8
TO-126
 
L15
LJQ
 
9015
Q7
TO-126
 
L18
LJQ
 
9015
Q5
TO-126
 
L17
LJQ
 
9015
Q2
TO-126
 
L16
LJQ
 
9015
Q1
TO-126
3
RD
AXIAL0.6
 
9015
Q3
TO-126
4K3
R33
805
 
9015
Q4
TO-126
4K3
R34
805
 
BATTERY
BT1
BATTERY
4K3
R5
805
 
CON2
JD
SIP2
4K3
R35
805
 
CON20
J3
SIP20
4K3
R29
805
 
CON20
J2
SIP20
4K3
R28
805
 
DB9
RS232
DB9/F
4K3
R30
805
 
DS18b20
 
TO-126
4K3
R32
805
 
DS1302
U10
DIP8
4K3
R31
805
 
MAX232CPE(16)
U5
DIP-16
4K7
R111
805
 
POT2
RP
TO-126
10K
R18
805
 
SM410561K
D14
SM41056K
10K
R10
805
 
SM410561K
D15
SM41056K
10K
R11
805
 
SPEAKER
LS1
RB.3/.6
10K
R1
AXIAL0.4
 
STC12C5A60S2
U11
DIP-40
10k
R17
805
 
電源
J1
POWER
10k
R13
805
 
紅外頭
U12
SIP4
10k
R14
805
 
 DS18B20
 
 

在兩周的實訓(xùn)課中,我們組成功完成了實訓(xùn)設(shè)計任務(wù)——基于DS18B20的簡易溫度顯示報警控制設(shè)計,我們在完成這份報告時心情激動萬分。
從一開始的選題、資料的查找,材料的整理,在顧老師的指導(dǎo)下,我們?nèi)M同學(xué)認(rèn)真學(xué)習(xí)、仔細(xì)分析,遇到問題及時商量查找資料,當(dāng)查找資料后還有不明白的地方及時請教老師。顧老師在我們開始選題時,給我們講解了每一個課題的大體方案及所需元器件,我們經(jīng)過商量,選擇了我們已有的元器件的這個課題,在我們選擇課題后,顧老師就智能電子技術(shù)實踐技術(shù)教材給我們做了詳細(xì)的講解;我們受益匪淺。非常感謝顧老師精心的指導(dǎo)、組員們的認(rèn)真努力。在單片機(jī)的學(xué)習(xí)方面我們更進(jìn)一步,在兩周的實訓(xùn)中,我們對keil軟件的編寫程序更加熟練,我們又重溫了焊接電路板的技術(shù),感覺很是不錯。
感謝和我一起努力奮斗的同學(xué)們,因為你們,我的學(xué)習(xí)和生活過得精彩而又充實!
感謝在電子082班一起度過美好時光的同學(xué)們,并一起度過那些令人難忘的歲月!
最后,感謝所有關(guān)心我、幫助過我的老師、同學(xué)和朋友!
參考文獻(xiàn)
[1] 智能電子技術(shù)實踐教程 劉昌珍  無錫商院:電子工程系 2009
[2]Protel199SE原理圖與PCB設(shè)計教程 無錫:電子工業(yè)出版社 2009
[3] DS18_b20.cn.pdf  單數(shù)字溫度傳感器
[4] 徐愛鈞.單片機(jī)高級語言C51 應(yīng)用程序設(shè)計[M]. 北京:電子工業(yè)出版社,2002.
[5] 謝自美.電子線路設(shè)計.實驗.測試(第二版) [M].武漢:華中科技大學(xué)出版社,2000.
[6] 江國強(qiáng).現(xiàn)代數(shù)字邏輯電路.北京:電子工業(yè)出版社,2002 .
[7] 張勇.PROTEL 99SE 電路設(shè)計技術(shù)入門與應(yīng)用(第一版).北京:電子工業(yè)出版社
[8] 樊昌信.通信原理(第五版)[M].北京:國防工業(yè)出版社,2001 .

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報

沙發(fā)
ID:1 發(fā)表于 2017-11-14 05:37 | 只看該作者
好資料,51黑有你更精彩!!!
回復(fù)

使用道具 舉報

板凳
ID:605453 發(fā)表于 2019-8-30 17:08 | 只看該作者
為什么圖片看不了啊
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表