版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、單片機(jī)課程設(shè)計(jì)系部名稱: 信息工程系 專業(yè)班級(jí): 電氣083班 學(xué) 號(hào): 200880884* 學(xué)生姓名: * * 指導(dǎo)教師: 張 * * 2011年06月20日目錄1 前言12 設(shè)計(jì)任務(wù)及要求22.1 設(shè)計(jì)任務(wù)22.2 設(shè)計(jì)要求23 課程設(shè)計(jì)方案及器材選用分析33.1 設(shè)計(jì)總體方案33.1.1 方案論證33.1.2 方案二的總體設(shè)計(jì)框圖43.2器材選用分析43.2.1 ds18b20溫度傳感器43.2.2 at89s52單片機(jī)介紹123.3 軟件流程圖153.3.1 主程序153.3.2 讀溫度子程序153.3.3 溫度轉(zhuǎn)換命令子程序163.3.4 計(jì)算溫度子程序164 硬件電路的設(shè)計(jì)174
2、.1 protel99 se軟件介紹174.1.1 protel99 se軟件174.1.2 主控制電路圖184.2 proteus 進(jìn)行仿真204.2.1 proteus6簡(jiǎn)介204.2.2 proteus仿真圖205 調(diào)試性能及分析22課程設(shè)計(jì)心得24參考文獻(xiàn)25附錄:ds18b20顯示程序261 前言目前,單片機(jī)已經(jīng)在測(cè)控領(lǐng)域中獲得了廣泛的應(yīng)用,它除了可以測(cè)量電信以外,還可以用于溫度、濕度等非電信號(hào)的測(cè)量,能獨(dú)立工作的單片機(jī)溫度檢測(cè)、溫度控制系統(tǒng)已經(jīng)廣泛應(yīng)用很多領(lǐng)域。單片機(jī)是一種特殊的計(jì)算機(jī),它是在一塊半導(dǎo)體的芯片上集成了cpu,存儲(chǔ)器,ram,rom,及輸入與輸出接口電路,這種芯片稱為
3、:單片機(jī)。由于單片機(jī)的集成度高,功能強(qiáng),通用性好,特別是它具有體積小,重量輕,能耗低,價(jià)格便宜,可靠性高,抗干擾能力強(qiáng)和使用方便的優(yōu)點(diǎn),使它迅速的得到了推廣應(yīng)用,目前已成為測(cè)量控制系統(tǒng)中的優(yōu)選機(jī)種和新電子產(chǎn)品中的關(guān)鍵部件。單片機(jī)已不僅僅局限于小系統(tǒng)的概念,現(xiàn)已廣泛應(yīng)用于家用電器,機(jī)電產(chǎn)品,辦公自動(dòng)化用品,機(jī)器人,兒童玩具,航天器等領(lǐng)域。本次課程設(shè)計(jì),就是用單片機(jī)實(shí)現(xiàn)溫度控制,傳統(tǒng)的溫度檢測(cè)大多以熱敏電阻為溫度傳感器,但熱敏電阻的可靠性差,測(cè)量溫度準(zhǔn)確率低,而且必須經(jīng)過(guò)專門的接口電路轉(zhuǎn)換成數(shù)字信號(hào)才能由單片機(jī)進(jìn)行處理。本次采用ds18b20數(shù)字溫度傳感器來(lái)實(shí)現(xiàn)基于51單片機(jī)的數(shù)字溫度計(jì)的設(shè)計(jì)。傳
4、統(tǒng)的溫度計(jì)有反應(yīng)速度慢、讀數(shù)麻煩、測(cè)量精度不高、誤差大等缺點(diǎn)而下面利用集成溫度傳感器ad590設(shè)計(jì)并制作了一款基于at89c51的4位數(shù)碼管顯示的數(shù)字溫度計(jì),其電路簡(jiǎn)單,軟硬件結(jié)構(gòu)模塊化,易于實(shí)現(xiàn)。 該數(shù)字溫度計(jì)利用ad590集成溫度傳感器及其接口電路完成溫度的測(cè)量并轉(zhuǎn)換成模擬電壓信號(hào),經(jīng)由模數(shù)轉(zhuǎn)換器adc0804轉(zhuǎn)換成單片機(jī)能夠處理的數(shù)字信號(hào),然后送到單片機(jī)at89c51中進(jìn)行處理變換,最后將溫度值顯示在d4、d3、d2、d1共4位七段碼led顯示器上。系統(tǒng)以at89c51單片機(jī)為控制核心,加上ad590測(cè)溫電路、adc模數(shù)轉(zhuǎn)換電路、4位溫度數(shù)據(jù)顯示電路以及外圍電源、時(shí)鐘電路等組成。 2 設(shè)
5、計(jì)任務(wù)及要求2.1 設(shè)計(jì)任務(wù)現(xiàn)代社會(huì)生活中,多功能的數(shù)字溫度計(jì)可以給我們的生活帶來(lái)很大的方便;支持“一線總線”接口的溫度傳感器簡(jiǎn)化了數(shù)字溫度計(jì)的設(shè)計(jì),降低了成本;以美國(guó)maxim/dallas半導(dǎo)體公司的單總線溫度傳感器ds18b20為核心,以atmel公司的at89s52為控制器設(shè)計(jì)的ds18b20溫度控制器結(jié)構(gòu)簡(jiǎn)單、測(cè)溫準(zhǔn)確、具有一定控制功能的智能溫度控制器。此次課程設(shè)計(jì),就是用單片機(jī)1實(shí)現(xiàn)溫度控制,傳統(tǒng)的溫度檢測(cè)大多以熱敏電阻為溫度傳感器,但熱敏電阻的可靠性差,測(cè)量溫度準(zhǔn)確率低,而且必須經(jīng)過(guò)專門的接口電路轉(zhuǎn)換成數(shù)字信號(hào)才能由單片機(jī)進(jìn)行處理。本次采用ds18b20數(shù)字溫度傳感器來(lái)實(shí)現(xiàn)基于5
6、1單片機(jī)的數(shù)字溫度計(jì)的設(shè)計(jì)。該數(shù)字溫度計(jì)利用ad590集成溫度傳感器及其接口電路完成溫度的測(cè)量并轉(zhuǎn)換成模擬電壓信號(hào),經(jīng)由模數(shù)轉(zhuǎn)換器adc0804轉(zhuǎn)換成單片機(jī)能夠處理的數(shù)字信號(hào),然后送到單片機(jī)at89c51中進(jìn)行處理變換,最后將溫度值顯示在d4、d3、d2、d1共4位七段碼led顯示器上。系統(tǒng)以at89c51單片機(jī)為控制核心,加上ad590測(cè)溫電路、adc模數(shù)轉(zhuǎn)換電路、4位溫度數(shù)據(jù)顯示電路以及外圍電源、時(shí)鐘電路等組成。2.2 設(shè)計(jì)要求設(shè)計(jì)一個(gè)基于單片機(jī)的ds18b20數(shù)字溫度計(jì)。課程設(shè)計(jì)要求: 5v供電; 溫度采集采用ds18b20; 4位led顯示; 2個(gè)按鍵; 設(shè)計(jì)溫度控制器原理圖,學(xué)習(xí)用p
7、rotel畫(huà)出該原理圖,并用proteus進(jìn)行仿真;設(shè)計(jì)和繪制軟件流程圖,用c語(yǔ)言進(jìn)行程序編寫(xiě);焊接硬件電路,進(jìn)行調(diào)試。3 課程設(shè)計(jì)方案及器材選用分析3.1設(shè)計(jì)總體方案提及到溫度的檢測(cè),我們首先會(huì)考慮傳統(tǒng)的測(cè)溫元件有熱電偶和熱電阻,而熱電偶和熱電阻測(cè)出的一般都是電壓,再轉(zhuǎn)換成對(duì)應(yīng)的溫度,需要比較多的外部硬件支持,硬件電路復(fù)雜,軟件調(diào)試也復(fù)雜,制作成本高。因此,本數(shù)字溫度計(jì)設(shè)計(jì)采用智能溫度傳感器ds18b20作為檢測(cè)元件,測(cè)溫范圍為-55c至+125c,最大分辨率可達(dá)0.0625c。ds18b20可以直接讀出被測(cè)量的溫度值,而采用三線制與單片機(jī)相連,減少了外部的硬件電路,具有低成本和易使用的特點(diǎn)
8、。按照系統(tǒng)設(shè)計(jì)功能的要求,確定系統(tǒng)由三個(gè)模塊組成:主控制器stc89c51,溫度傳感器ds18b20,驅(qū)動(dòng)顯示電路。總體電路框圖如下:主控制器stc89c51ds18b20驅(qū)動(dòng)顯示電路圖3.1 系統(tǒng)總體框圖3.1.1方案論證方案一:由于本設(shè)計(jì)是測(cè)溫電路,可以使用熱敏電阻之類的器件利用其感溫效應(yīng),在將隨被測(cè)溫度變化的電壓或電流采集過(guò)來(lái),進(jìn)行a/d轉(zhuǎn)換后,就可以用單片機(jī)進(jìn)行數(shù)據(jù)的處理,在顯示電路上,就可以將被測(cè)溫度顯示出來(lái),這種設(shè)計(jì)需要用到a/d轉(zhuǎn)換電路,感溫電路比較麻煩。所以,他的設(shè)計(jì)理論不符合本次設(shè)計(jì)的方案要求,應(yīng)繼續(xù)考慮另一可行方案。方案二:進(jìn)而考慮到用溫度傳感器,在單片機(jī)電路設(shè)計(jì)中,大多都
9、是使用傳感器,所以這是非常容易想到的,所以可以采用一只溫度傳感器ds18b20,此傳感器,可以很容易直接讀取被測(cè)溫度值,進(jìn)行轉(zhuǎn)換,就可以滿足設(shè)計(jì)要求。因此,從以上兩種方案很容易看出,方案二,電路比較簡(jiǎn)單,軟件設(shè)計(jì)也比較簡(jiǎn)單,故采用了方案二。3.1.2方案二的總體設(shè)計(jì)框圖溫度計(jì)電路設(shè)計(jì)總體設(shè)計(jì)方框圖如圖1所示,控制器采用單片機(jī)at89s51,溫度傳感器采用ds18b20,用3位led數(shù)碼管以串口傳送數(shù)據(jù)實(shí)現(xiàn)溫度顯示。ds18b20 采用3 腳pr-35 封裝或8 腳soic 封裝。主 控 制 器led顯 示溫 度 傳 感 器單片機(jī)復(fù)位時(shí)鐘振蕩報(bào)警點(diǎn)按鍵調(diào)整圖3.2總體設(shè)計(jì)方框圖主控制器:?jiǎn)纹瑱C(jī)a
10、t89s51具有低電壓供電和體積小等特點(diǎn),四個(gè)端口只需要兩個(gè)口就能滿足電路系統(tǒng)的設(shè)計(jì)需要,很適合便攜手持式產(chǎn)品的設(shè)計(jì)使用系統(tǒng)可用二節(jié)電池供電。顯示電路:顯示電路采用3位共陽(yáng)led數(shù)碼管,從p3口rxd,txd串口輸出段碼。3.2器材選用分析3.2.1 ds18b20溫度傳感器1. ds18b20的特點(diǎn)本設(shè)計(jì)的測(cè)溫系統(tǒng)采用芯片ds18b20,ds18b20是dallas公司的最新單線數(shù)字溫度傳感器,它的體積更小,適用電壓更寬,更經(jīng)濟(jì)。實(shí)現(xiàn)方法簡(jiǎn)介ds18b20采用外接電源方式工作,一線測(cè)溫一線與stc89c51連接,測(cè)出的數(shù)據(jù)放在寄存器中,將數(shù)據(jù)經(jīng)過(guò)bcd碼轉(zhuǎn)換后送到led顯示。ds18b20溫
11、度傳感器是美國(guó)dallas半導(dǎo)體公司最新推出的一種改進(jìn)型智能溫度傳感器,與傳統(tǒng)的熱敏電阻等測(cè)溫元件相比,它能直接讀出被測(cè)溫度,并且可根據(jù)實(shí)際要求通過(guò)簡(jiǎn)單的編程實(shí)現(xiàn)位的數(shù)字值讀數(shù)方式。ds18b20的性能特點(diǎn)如下:獨(dú)特的單線接口僅需要一個(gè)端口引腳進(jìn)行通信;多個(gè)ds18b20可以并聯(lián)在惟一的三線上,實(shí)現(xiàn)多點(diǎn)組網(wǎng)功能;無(wú)須外部器件;可通過(guò)數(shù)據(jù)線供電,電壓范圍為3.05.5;零待機(jī)功耗;溫度以或位數(shù)字;用戶可定義報(bào)警設(shè)置;報(bào)警搜索命令識(shí)別并標(biāo)志超過(guò)程序限定溫度(溫度報(bào)警條件)的器件;負(fù)電壓特性,電源極性接反時(shí),溫度計(jì)不會(huì)因發(fā)熱而燒毀,但不能正常工作; ds18b20內(nèi)部結(jié)構(gòu)主要由四部分組成:64位光刻
12、rom,溫度傳感器,非揮發(fā)的溫度報(bào)警觸發(fā)器th和tl,高速暫存器。ds18b20的管腳排列如圖2-3-1所示。64位光刻rom是出廠前被光刻好的,它可以看作是該ds18b20的地址序列號(hào)。不同的器件地址序列號(hào)不同。 c64 位rom和單線接口高速緩存存儲(chǔ)器與控制邏輯溫度傳感器高溫觸發(fā)器th低溫觸發(fā)器tl配置寄存器8位crc發(fā)生器vdd 圖3.3 ds18b20的內(nèi)部結(jié)構(gòu)圖3.4 ds18b20的引腳分布圖64位rom的結(jié)構(gòu)開(kāi)始8位是產(chǎn)品類型的編號(hào),接著是每個(gè)器件的惟一的序號(hào),共有48位,最后8位是前面56位的crc檢驗(yàn)碼,這也是多個(gè)ds18b20可以采用一線進(jìn)行通信的原因。溫度報(bào)警觸發(fā)器和,可
13、通過(guò)軟件寫(xiě)入戶報(bào)警上下限。ds18b20溫度傳感器的內(nèi)部存儲(chǔ)器還包括一個(gè)高速暫存ram和一個(gè)非易失性的可電擦除的eeram。高速暫存ram的結(jié)構(gòu)為字節(jié)的存儲(chǔ)器,結(jié)構(gòu)如圖2-3-2所示。頭2個(gè)字節(jié)包含測(cè)得的溫度信息,第3和第4字節(jié)th和tl的拷貝,是易失的,每次上電復(fù)位時(shí)被刷新。第5個(gè)字節(jié),為配置寄存器,它的內(nèi)容用于確定溫度值的數(shù)字轉(zhuǎn)換分辨率。ds18b20工作時(shí)寄存器中的分辨率轉(zhuǎn)換為相應(yīng)精度的溫度數(shù)值。該字節(jié)各位的定義如下圖所示。低5位一直為1,tm是工作模式位,用于設(shè)置ds18b20在工作模式還是在測(cè)試模式,ds18b20出廠時(shí)該位被設(shè)置為0,用戶要去改動(dòng),r1和0決定溫度轉(zhuǎn)換的精度位數(shù),來(lái)
14、設(shè)置分辨率。圖3.5 ds18b20的字節(jié)定義ds18b20高速暫存器共9個(gè)存存單元,如表所示:表3-1 ds18b20的引腳分布圖序號(hào) 寄存器名稱 作 用 序號(hào) 寄存器名稱 0 溫度低字節(jié) 以16位補(bǔ)碼形式存放 4、5 保留字節(jié)1、2 1 溫度高字節(jié) 6 計(jì)數(shù)器余值 2 th/用戶字節(jié)1 存放溫度上限 7 計(jì)數(shù)器/ 3 hl/用戶字節(jié)2 存放溫度下限 8 crc 以12位轉(zhuǎn)化為例說(shuō)明溫度高低字節(jié)存放形式及計(jì)算:12位轉(zhuǎn)化后得到的12位數(shù)據(jù),存儲(chǔ)在18b20的兩個(gè)高低兩個(gè)8位的ram中,二進(jìn)制中的前面5位是符號(hào)位。如果測(cè)得的溫度大于0,這5位為0,只要將測(cè)到的數(shù)值乘于0.0625即可得到實(shí)際溫
15、度;如果溫度小于0,這5位為1,測(cè)到的數(shù)值需要取反加1再乘于0.0625才能得到實(shí)際溫度。 高8位 s s s s s 26 25 24 低8位 23 22 21 20 2-1 2-2 2-3 2-4 表3-2 ds18b20的字節(jié)存放表由下圖可以看到,dsl8820的內(nèi)部存儲(chǔ)器是由8個(gè)單元組成,其中第0、1個(gè)存放測(cè)量溫度值,第2、3分別存放報(bào)警溫度的上下限值,第4單元為配置單元,5、6、7單元在dsl8820這里沒(méi)有被用到。對(duì)于第4個(gè)寄存器,用戶可以設(shè)置溫度轉(zhuǎn)換精度,系統(tǒng)默認(rèn)12bit轉(zhuǎn)換精度,相當(dāng)于十進(jìn)制的00625,其轉(zhuǎn)換時(shí)間大約為750磷。具體見(jiàn)表2-4-1。圖3.6 內(nèi)部存儲(chǔ)器結(jié)構(gòu)圖
16、表3-3 溫度精度配置r1r0轉(zhuǎn)換精度(16進(jìn)制)轉(zhuǎn)換精度(十進(jìn)制)轉(zhuǎn)換時(shí)間009bit0.593.75ms0110bit0.25187.5ms1011bit0.125375ms1112bit0.0625750ms 由表3-3可見(jiàn),ds18b20溫度轉(zhuǎn)換的時(shí)間比較長(zhǎng),而且分辨率越高,所需要的溫度數(shù)據(jù)轉(zhuǎn)換時(shí)間越長(zhǎng)。因此,在實(shí)際應(yīng)用中要將分辨率和轉(zhuǎn)換時(shí)間權(quán)衡考慮。高速暫存ram的第6、7、8字節(jié)保留未用,表現(xiàn)為全邏輯1。第9字節(jié)讀出前面所有8字節(jié)的crc碼,可用來(lái)檢驗(yàn)數(shù)據(jù),從而保證通信數(shù)據(jù)的正確性。當(dāng)ds18b20接收到溫度轉(zhuǎn)換命令后,開(kāi)始啟動(dòng)轉(zhuǎn)換。轉(zhuǎn)換完成后的溫度值就以16位帶符號(hào)擴(kuò)展的二進(jìn)制補(bǔ)
17、碼形式存儲(chǔ)在高速暫存存儲(chǔ)器的第1、2字節(jié)。單片機(jī)可以通過(guò)單線接口讀出該數(shù)據(jù),讀數(shù)據(jù)時(shí)低位在先,高位在后,數(shù)據(jù)格式以0.0625lsb形式表示。當(dāng)符號(hào)位s0時(shí),表示測(cè)得的溫度值為正值,可以直接將二進(jìn)制位轉(zhuǎn)換為十進(jìn)制;當(dāng)符號(hào)位s1時(shí),表示測(cè)得的溫度值為負(fù)值,要先將補(bǔ)碼變成原碼,再計(jì)算十進(jìn)制數(shù)值。表2-4-2是一部分溫度值對(duì)應(yīng)的二進(jìn)制溫度數(shù)據(jù)。表3-4 溫度精度配置溫度/二進(jìn)制表示十六進(jìn)制表示+1250000 0111 1101 000007d0h+850000 0101 0101 00000550h+25.06250000 0001 1001 00000191h+10.1250000 0000 1
18、010 000100a2h+0.50000 0000 0000 00100008h00000 0000 0000 10000000h-0.51111 1111 1111 0000fff8h-10.1251111 1111 0101 1110ff5eh-25.06251111 1110 0110 1111fe6fh-551111 1100 1001 0000fc90hds18b20完成溫度轉(zhuǎn)換后,就把測(cè)得的溫度值與ram中的th、tl字節(jié)內(nèi)容作比較。若tth或ttl,則將該器件內(nèi)的報(bào)警標(biāo)志位置位,并對(duì)主機(jī)發(fā)出的報(bào)警搜索命令作出響應(yīng)。因此,可用多只ds18b20同時(shí)測(cè)量溫度并進(jìn)行報(bào)警搜索。在64位
19、rom的最高有效字節(jié)中存儲(chǔ)有循環(huán)冗余檢驗(yàn)碼(crc)。主機(jī)rom的前56位來(lái)計(jì)算crc值,并和存入ds18b20的crc值作比較,以判斷主機(jī)收到的rom數(shù)據(jù)是否正確。ds18b20的測(cè)溫原理是這這樣的,器件中低溫度系數(shù)晶振的振蕩頻率受溫度的影響很小,用于產(chǎn)生固定頻率的脈沖信號(hào)送給減法計(jì)數(shù)器1;高溫度系數(shù)晶振隨溫度變化其振蕩頻率明顯改變,所產(chǎn)生的信號(hào)作為減法計(jì)數(shù)器2的脈沖輸入。器件中還有一個(gè)計(jì)數(shù)門,當(dāng)計(jì)數(shù)門打開(kāi)時(shí),ds18b20就對(duì)低溫度系數(shù)振蕩器產(chǎn)生的時(shí)鐘脈沖進(jìn)行計(jì)數(shù)進(jìn)而完成溫度測(cè)量。計(jì)數(shù)門的開(kāi)啟時(shí)間由高溫度系數(shù)振蕩器來(lái)決定,每次測(cè)量前,首先將55所對(duì)應(yīng)的一個(gè)基數(shù)分別置入減法計(jì)數(shù)器1、溫度寄存
20、器中,計(jì)數(shù)器1和溫度寄存器被預(yù)置在55所對(duì)應(yīng)的一個(gè)基數(shù)值。減法計(jì)數(shù)器1對(duì)低溫度系數(shù)晶振產(chǎn)生的脈沖信號(hào)進(jìn)行減法計(jì)數(shù),當(dāng)減法計(jì)數(shù)器1的預(yù)置值減到0時(shí),溫度寄存器的值將加1,減法計(jì)數(shù)器1的預(yù)置將重新被裝入,減法計(jì)數(shù)器1重新開(kāi)始對(duì)低溫度系數(shù)晶振產(chǎn)生的脈沖信號(hào)進(jìn)行計(jì)數(shù),如此循環(huán)直到減法計(jì)數(shù)器計(jì)數(shù)到0時(shí),停止溫度寄存器的累加,此時(shí)溫度寄存器中的數(shù)值就是所測(cè)溫度值。其輸出用于修正減法計(jì)數(shù)器的預(yù)置值,只要計(jì)數(shù)器門仍未關(guān)閉就重復(fù)上述過(guò)程,直到溫度寄存器值大致被測(cè)溫度值。 另外,由于ds18b20單線通信功能是分時(shí)完成的,它有嚴(yán)格的時(shí)隙概念,因此讀寫(xiě)時(shí)序很重要。系統(tǒng)對(duì)ds18b20的各種操作按協(xié)議進(jìn)行。操作協(xié)議為
21、:初使化ds18b20(發(fā)復(fù)位脈沖)發(fā)rom功能命令發(fā)存儲(chǔ)器操作命令處理數(shù)據(jù)。 由于ds18b20采用的“一線總線”結(jié)構(gòu),所以數(shù)據(jù)的傳輸與命令的通訊只要通過(guò)微處理器的一根雙向io口就可以實(shí)現(xiàn)。dsl8b20約定在每次通信前必須對(duì)其復(fù)位,具體的復(fù)位時(shí)序如圖2-4-2所示。 圖3.7 復(fù)位時(shí)序圖 圖2-4-3中所示,trstl為主機(jī)發(fā)出的低電平信號(hào),本文中有at89s52提供,trstl的最小時(shí)延為,然后釋放總線,檢查dsl8b20的返回信號(hào),看其是否已準(zhǔn)備接受其他操作,其中tpdhigh時(shí)間最小為,最長(zhǎng)不能超過(guò),否則認(rèn)為ds18b20沒(méi)有準(zhǔn)備好,主機(jī)應(yīng)繼續(xù)復(fù)位,直到檢測(cè)到返回信號(hào)變?yōu)榈碗娖綖橹埂?/p>
22、表3-5 ds18b20的rom操作指令操作指令33h55hcchf0hech含義讀rom匹配rom跳過(guò)rom搜索rom報(bào)警搜索rom表3-6 ds18b20的存儲(chǔ)器操作指令操作指令4ehbeh48h44hd8hb4h含義寫(xiě)讀內(nèi)部復(fù)制溫度轉(zhuǎn)換重新調(diào)出讀電源主機(jī)一旦檢測(cè)到ds18b20的存在,根據(jù)ds18b2的工作協(xié)議,就應(yīng)對(duì)rom進(jìn)行操作,接著對(duì)存儲(chǔ)器操作,最后進(jìn)行數(shù)據(jù)處理。在ds18b20中規(guī)定了5條對(duì)rom的操作命令。見(jiàn)表2-4-3。主機(jī)在發(fā)送完rom操作指令之后,就可以對(duì)ds18b20內(nèi)部的存儲(chǔ)器進(jìn)行操作,同樣ds18b20規(guī)定了6條操作指令。見(jiàn)表2-4-4。 ds18b20的讀、寫(xiě)時(shí)序
23、圖見(jiàn)圖2-4-3。圖3.8 ds18b20的讀寫(xiě)時(shí)序圖2. ds18b20的使用方法由于ds18b20采用的是1wire總線協(xié)議方式,即在一根數(shù)據(jù)線實(shí)現(xiàn)數(shù)據(jù)的雙向傳輸,而對(duì)at89s51單片機(jī)來(lái)說(shuō),硬件上并不支持單總線協(xié)議,因此,我們必須采用軟件的方法來(lái)模擬單總線的協(xié)議時(shí)序來(lái)完成對(duì)ds18b20芯片的訪問(wèn)。由于ds18b20是在一根i/o線上讀寫(xiě)數(shù)據(jù),因此,對(duì)讀寫(xiě)的數(shù)據(jù)位有著嚴(yán)格的時(shí)序要求。ds18b20有嚴(yán)格的通信協(xié)議來(lái)保證各位數(shù)據(jù)傳輸?shù)恼_性和完整性。該協(xié)議定義了幾種信號(hào)的時(shí)序:初始化時(shí)序、讀時(shí)序、寫(xiě)時(shí)序。所有時(shí)序都是將圖3.9 ds18b20的復(fù)位時(shí)序圖3.10 ds18b20的讀時(shí)序圖
24、3.11 ds18b20的寫(xiě)時(shí)序主機(jī)作為主設(shè)備,單總線器件作為從設(shè)備。而每一次命令和數(shù)據(jù)的傳輸都是從主機(jī)主動(dòng)啟動(dòng)寫(xiě)時(shí)序開(kāi)始,如果要求單總線器件回送數(shù)據(jù),在進(jìn)行寫(xiě)命令后,主機(jī)需啟動(dòng)讀時(shí)序完成數(shù)據(jù)接收。數(shù)據(jù)和命令的傳輸都是低位在先。對(duì)于ds18b20的讀時(shí)序分為讀0時(shí)序和讀1時(shí)序兩個(gè)過(guò)程。對(duì)于ds18b20的讀時(shí)隙是從主機(jī)把單總線拉低之后,在15秒之內(nèi)就得釋放單總線,以讓ds18b20把數(shù)據(jù)傳輸?shù)絾慰偩€上。ds18b20在完成一個(gè)讀時(shí)序過(guò)程,至少需要60us才能完成。ds18b20的寫(xiě)時(shí)序,對(duì)于ds18b20的寫(xiě)時(shí)序仍然分為寫(xiě)0時(shí)序和寫(xiě)1時(shí)序兩個(gè)過(guò)程,對(duì)于ds18b20寫(xiě)0時(shí)序和寫(xiě)1時(shí)序的要求不同
25、,當(dāng)要寫(xiě)0時(shí)序時(shí),單總線要被拉低至少60us,保證ds18b20能夠在15us到45us之間能夠正確地采樣io總線上的“0”電平,當(dāng)要寫(xiě)1時(shí)序時(shí),單總線被拉低之后,在15us之內(nèi)就得釋放單線3.2.2 at89s52單片機(jī)介紹1. at89s52的主要性能與mcs-51單片機(jī)產(chǎn)品兼容,8k字節(jié)在系統(tǒng)可編程flash存儲(chǔ)器、 1000次擦寫(xiě)周期、 全靜態(tài)操作:0hz33hz 、三級(jí)加密程序存儲(chǔ)器 、 32個(gè)可編程i/o口線 、三個(gè)16位定時(shí)器/計(jì)數(shù)器 八個(gè)中斷源 、全雙工uart串行通道、 低功耗空閑和掉電模式 、掉電后中斷可喚醒 、看門狗定時(shí)器 、雙數(shù)據(jù)指針 、掉電標(biāo)識(shí)符 。2. at89s5
26、2的功能特性at89s52 是一種低功耗、高性能cmos8位微控制器,具有 8k 在系統(tǒng)可編程flash 存儲(chǔ)器。使用atmel公司高密度非易失性存儲(chǔ)器技術(shù)制造,與工業(yè)80c51 產(chǎn)品指令和引腳完 全兼容。片上flash允許程序存儲(chǔ)器在系統(tǒng)可編程,亦適于 常規(guī)編程器。在單芯片上,擁有靈巧的8 位cpu 和在系統(tǒng) 可編程flash,使得at89s52為眾多嵌入式控制應(yīng)用系統(tǒng)提 供高靈活、超有效的解決方案。 at89s52具有以下標(biāo)準(zhǔn)功能: 8k字節(jié)flash,256字節(jié)ram, 32 位i/o 口線,看門狗定時(shí)器,2個(gè)數(shù)據(jù)指針,三個(gè)16 位 定時(shí)器/計(jì)數(shù)器,一個(gè)6向量2級(jí)中斷結(jié)構(gòu),全雙工串行口,
27、 片內(nèi)晶振及時(shí)鐘電路。另外,at89s52 可降至0hz 靜態(tài)邏輯操作,支持2種軟件可選擇節(jié)電模式??臻e模式下,cpu 停止工作,允許ram、定時(shí)器/計(jì)數(shù)器、串口、中斷繼續(xù)工 作。掉電保護(hù)方式下,ram內(nèi)容被保存,振蕩器被凍結(jié), 單片機(jī)一切工作停止,直到下一個(gè)中斷或硬件復(fù)位為止。8 位微控制器 8k 字節(jié)在系統(tǒng)可編程 flash at89s52 p0 口:p0口是一個(gè)8位漏極開(kāi)路的雙向i/o口。作為輸出口,每位能驅(qū)動(dòng)8個(gè)ttl邏輯電平。對(duì)p0端口寫(xiě)“1”時(shí),引腳用作高阻抗輸入。 當(dāng)訪問(wèn)外部程序和數(shù)據(jù)存儲(chǔ)器時(shí),p0口也被作為低8位地址/數(shù)據(jù)復(fù)用。在這種模式下,p0具有內(nèi)部上拉電阻。 在flash
28、編程時(shí),p0口也用來(lái)接收指令字節(jié);在程序校驗(yàn)時(shí),輸出指令字節(jié)。程序校驗(yàn) 時(shí),需要外部上拉電阻。 p1 口:p1 口是一個(gè)具有內(nèi)部上拉電阻的8 位雙向i/o 口,p1 輸出緩沖器能驅(qū)動(dòng)4 個(gè)ttl 邏輯電平。對(duì)p1 端口寫(xiě)“1”時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為輸入口使用。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(iil)。此外,p1.0和p1.2分別作定時(shí)器/計(jì)數(shù)器2的外部計(jì)數(shù)輸入(p1.0/t2)和時(shí)器/計(jì)數(shù)器2 的觸發(fā)輸入(p1.1/t2ex),具體如下表所示。 在flash編程和校驗(yàn)時(shí),p1口接收低8位地址字節(jié)。 引腳號(hào)第二功能 p1.0 t2(定時(shí)器/計(jì)數(shù)器
29、t2的外部計(jì)數(shù)輸入),時(shí)鐘輸出 p1.1 t2ex(定時(shí)器/計(jì)數(shù)器t2的捕捉/重載觸發(fā)信號(hào)和方向控制) p1.5 mosi(在系統(tǒng)編程用) p1.6 miso(在系統(tǒng)編程用) p1.7 sck(在系統(tǒng)編程用) p2 口:p2 口是一個(gè)具有內(nèi)部上拉電阻的8 位雙向i/o 口,p2 輸出緩沖器能驅(qū)動(dòng)4 個(gè) ttl 邏輯電平。對(duì)p2 端口寫(xiě)“1”時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為輸入 口使用。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(iil)。在訪問(wèn)外部程序存儲(chǔ)器或用16位地址讀取外部數(shù)據(jù)存儲(chǔ)器(例如執(zhí)行movx dptr) 時(shí),p2 口送出高八位地址。在這種應(yīng)用中,p2
30、 口使用很強(qiáng)的內(nèi)部上拉發(fā)送1。在使用 8位地址(如movx ri)訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí),p2口輸出p2鎖存器的內(nèi)容。 在flash編程和校驗(yàn)時(shí),p2口也接收高8位地址字節(jié)和一些控制信號(hào)。 p3 口:p3 口是一個(gè)具有內(nèi)部上拉電阻的8 位雙向i/o 口,p2 輸出緩沖器能驅(qū)動(dòng)4 個(gè)ttl 邏輯電平。對(duì)p3 端口寫(xiě)“1”時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為輸入口使用。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(iil)。 p3口亦作為at89s52特殊功能(第二功能)使用,如下所示。 在flash編程和校驗(yàn)時(shí),p3口也接收一些控制信號(hào)。 端口引腳 第二功能p3.0 rxd(
31、串行輸入口)p3.1 txd(串行輸出口)p3.2 int0(外中斷0)p3.3 int1(外中斷1)p3.4 t0(定時(shí)/計(jì)數(shù)器0)p3.5 t1(定時(shí)/計(jì)數(shù)器1)p3.6 wr(外部數(shù)據(jù)存儲(chǔ)器寫(xiě)選通)p3.7 rd(外部數(shù)據(jù)存儲(chǔ)器讀選通)此外,p3口還接收一些用于flash閃存編程和程序校驗(yàn)的控制信號(hào)。rst復(fù)位輸入。當(dāng)振蕩器工作時(shí),rst引腳出現(xiàn)兩個(gè)機(jī)器周期以上高電平將是單片機(jī)復(fù)位。ale/prog當(dāng)訪問(wèn)外部程序存儲(chǔ)器或數(shù)據(jù)存儲(chǔ)器時(shí),ale(地址鎖存允許)輸出脈沖用于鎖存地址的低8位字節(jié)。一般情況下,ale仍以時(shí)鐘振蕩頻率的1/6輸出固定的脈沖信號(hào),因此它可對(duì)外輸出時(shí)鐘或用于定時(shí)目的。要
32、注意的是:每當(dāng)訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí)將跳過(guò)一個(gè)ale脈沖。對(duì)flash存儲(chǔ)器編程期間,該引腳還用于輸入編程脈沖(prog)。如有必要,可通過(guò)對(duì)特殊功能寄存器(sfr)區(qū)中的8eh單元的d0位置位,可禁止ale操作。該位置位后,只有一條movx和movc指令才能將ale激活。此外,該引腳會(huì)被微弱拉高,單片機(jī)執(zhí)行外部程序時(shí),應(yīng)設(shè)置ale禁止位無(wú)效。psen程序儲(chǔ)存允許(psen)輸出是外部程序存儲(chǔ)器的讀選通信號(hào),當(dāng)at89c52由外部程序存儲(chǔ)器取指令(或數(shù)據(jù))時(shí),每個(gè)機(jī)器周期兩次psen有效,即輸出兩個(gè)脈沖,在此期間,當(dāng)訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器,將跳過(guò)兩次psen信號(hào)。ea/vpp外部訪問(wèn)允許,欲使cpu
33、僅訪問(wèn)外部程序存儲(chǔ)器(地址為0000h-ffffh),ea端必須保持低電平(接地)。需注意的是:如果加密位lb1被編程,復(fù)位時(shí)內(nèi)部會(huì)鎖存ea端狀態(tài)。如ea端為高電平(接vcc端),cpu則執(zhí)行內(nèi)部程序存儲(chǔ)器的指令。flash存儲(chǔ)器編程時(shí),該引腳加上+12v的編程允許電源vpp,當(dāng)然這必須是該器件是使用12v編程電壓vpp。3.3 軟件流程圖系統(tǒng)程序主要包括主程序,讀出溫度子程序,溫度轉(zhuǎn)換命令子程序,計(jì)算溫度子程序,顯示數(shù)據(jù)刷新子程序等。3.3.1 主程序初始化調(diào)用顯示子程序1s到?初次上電讀出溫度值溫度計(jì)算處理顯示數(shù)據(jù)刷新發(fā)溫度轉(zhuǎn)換開(kāi)始命令nyny主程序的主要功能是負(fù)責(zé)溫度的實(shí)時(shí)顯示、讀出并處
34、理ds18b20的測(cè)量的當(dāng)前溫度值,溫度測(cè)量每1s進(jìn)行一次。這樣可以在一秒之內(nèi)測(cè)量一次被測(cè)溫度,其程序流程見(jiàn)圖7所示。y發(fā)ds18b20復(fù)位命令發(fā)跳過(guò)rom命令發(fā)讀取溫度命令讀取操作,crc校驗(yàn)9字節(jié)完?crc校驗(yàn)正?確?移入溫度暫存器結(jié)束nny 3.12主程序流程圖 圖3-13 讀溫度流程圖3.3.2 讀溫度子程序讀出溫度子程序的主要功能是讀出ram中的9字節(jié),在讀出時(shí)需進(jìn)行crc校驗(yàn),校驗(yàn)有錯(cuò)時(shí)不進(jìn)行溫度數(shù)據(jù)的改寫(xiě)。其程序流程圖如圖8示發(fā)ds18b20復(fù)位命令發(fā)跳過(guò)rom命令發(fā)溫度轉(zhuǎn)換開(kāi)始命令結(jié)束圖3.13 溫度轉(zhuǎn)換流程圖3.3.3 溫度轉(zhuǎn)換命令子程序溫度轉(zhuǎn)換命令子程序主要是發(fā)溫度轉(zhuǎn)換開(kāi)始
35、命令,當(dāng)采用12位分辨率時(shí)轉(zhuǎn)換時(shí)間約為750ms,在本程序設(shè)計(jì)中采用1s顯示程序延時(shí)法等待轉(zhuǎn)換的完成。溫度轉(zhuǎn)換命令子程序流程圖如上圖,圖3.14所示3.3.4 計(jì)算溫度子程序計(jì)算溫度子程序?qū)am中讀取值進(jìn)行bcd碼的轉(zhuǎn)換運(yùn)算,并進(jìn)行溫度值正負(fù)的判定,其程序流程圖如圖3.15所示溫度數(shù)據(jù)移入顯示寄存器十位數(shù)0?百位數(shù)0?十位數(shù)顯示符號(hào)百位數(shù)不顯示百位數(shù)顯示數(shù)據(jù)(不顯示符號(hào)) 結(jié)束nnyy 開(kāi)始溫度零下?溫度值取補(bǔ)碼置“”標(biāo)志計(jì)算小數(shù)位溫度bcd值 計(jì)算整數(shù)位溫度bcd值 結(jié)束置“+”標(biāo)志ny 圖3-14 計(jì)算溫度流程圖 圖3-15顯示數(shù)據(jù)刷新流程圖4 硬件電路的設(shè)計(jì)4.1 protel99 s
36、e軟件介紹4.1.1 protel99 se軟件protel99 se 5共分5個(gè)模塊,分別是原理圖設(shè)計(jì)、pcb設(shè)計(jì)(包含信號(hào)完整性分析)、自動(dòng)布線器、原理圖混合信號(hào)仿真、pld設(shè)計(jì)。 以下介紹一些protel99se的部分最新功能: l 可生成30多種格式的電氣連接網(wǎng)絡(luò)表; l 強(qiáng)大的全局編輯功能; l 在原理圖中選擇一級(jí)器件,pcb中同樣的器件也將被選中; l 同時(shí)運(yùn)行原理圖和pcb,在打開(kāi)的原理圖和pcb圖間允許雙向交叉查找元器件、引腳、網(wǎng)絡(luò) l 既可以進(jìn)行正向注釋元器件標(biāo)號(hào)(由原理圖到pcb),也可以進(jìn)行反向注釋(由pcb到原理圖),以保持電氣原理圖和pcb在設(shè)計(jì)上的一致性; l 滿足
37、國(guó)際化設(shè)計(jì)要求(包括國(guó)標(biāo)標(biāo)題欄輸出,gb4728國(guó)標(biāo)庫(kù)); * 方便易用的數(shù)?;旌戏抡妫嫒輘pice 3f5); l 支持用cupl語(yǔ)言和原理圖設(shè)計(jì)pld,生成標(biāo)準(zhǔn)的jed下載文件; * pcb可設(shè)計(jì)32個(gè)信號(hào)層,16個(gè)電源-地層和16個(gè)機(jī)加工層; l 強(qiáng)大的“規(guī)則驅(qū)動(dòng)”設(shè)計(jì)環(huán)境,符合在線的和批處理的設(shè)計(jì)規(guī)則檢查; l 智能覆銅功能,覆鈾可以自動(dòng)重鋪; l 提供大量的工業(yè)化標(biāo)準(zhǔn)電路板做為設(shè)計(jì)模版; l 放置漢字功能; l 可以輸入和輸出dxf、dwg格式文件,實(shí)現(xiàn)和autocad等軟件的數(shù)據(jù)交換; l 智能封裝導(dǎo)航(對(duì)于建立復(fù)雜的pga、bga封裝很有用); l 方便的打印預(yù)覽功能,不用修改
38、pcb文件就可以直接控制打印結(jié)果; l 獨(dú)特的3d顯示可以在制板之前看到裝配事物的效果; l 強(qiáng)大的cam處理使您輕松實(shí)現(xiàn)輸出光繪文件、材料清單、鉆孔文件、貼片機(jī)文件、測(cè)試點(diǎn)報(bào)告等; l 經(jīng)過(guò)充分驗(yàn)證的傳輸線特性和仿真精確計(jì)算的算法,信號(hào)完整性分析直接從pcb啟動(dòng); l 反射和串?dāng)_仿真的波形顯示結(jié)果與便利的測(cè)量工具相結(jié)合; l 專家導(dǎo)航幫您解決信號(hào)完整性問(wèn)題。 4.1.2主控制電路at89s52原理圖:系統(tǒng)完整電路圖如下:圖5.16主電路原理圖 圖5.17 數(shù)碼管連線圖5.18 系統(tǒng)報(bào)警電路圖5.19電路的pcb圖4.2 proteus 進(jìn)行仿真程序編寫(xiě)完以后,我們先對(duì)其進(jìn)行仿真,初步驗(yàn)證電路
39、圖和程序的可行性和正確性。4.2.1 roteus6簡(jiǎn)介proteus 是英國(guó)labcenter公司開(kāi)發(fā)的電路分析與實(shí)物仿真軟件。它運(yùn)行于windows操作系統(tǒng)上,可以仿真、分析(spice)各種模擬器件和集成電路,該軟件的特點(diǎn)是: 1 實(shí)現(xiàn)了單片機(jī)仿真和spice電路仿真相結(jié)合。具有模擬電路仿真、數(shù)字電路仿真、單片機(jī)及其外圍電路組成的系統(tǒng)的仿真、rs232動(dòng)態(tài)仿真、i2c調(diào)試器、spi調(diào)試器、鍵盤和lcd系統(tǒng)仿真的功能;有各種虛擬儀器,如示波器、邏輯分析儀、信號(hào)發(fā)生器等。 2 支持主流單片機(jī)系統(tǒng)的仿真。目前支持的單片機(jī)類型有:arm7(lpc21xx)、 8051/52系列、avr系列、pi
40、c10/12/16/18系列、hc11系列以及多種外圍芯片。 3 提供軟件調(diào)試功能。在硬件仿真系統(tǒng)中具有全速、單步、設(shè)置斷點(diǎn)等調(diào)試功能,同時(shí)可以觀察各個(gè)變量、寄存器等的當(dāng)前狀態(tài),因此在該軟件仿真系統(tǒng)中,也必須具有這些功能;同時(shí)支持第三方的軟件編譯和調(diào)試環(huán)境,如keil c51 uvision2、mplab等軟件。 具有強(qiáng)大的原理圖繪制功能??傊撥浖且豢罴瘑纹瑱C(jī)和spice分析于一身的仿真軟件,功能極其強(qiáng)大。 proteus6.5是目前最好的模擬單片機(jī)外圍器件的工具,真的很不錯(cuò)??梢苑抡?1系列、avr,pic等常用的mcu及其外圍電路(如lcd,ram,rom,鍵盤,馬達(dá),led,ad/
41、da,部分spi器件,部分iic器件,.) 其實(shí)proteus 與 multisim比較類似,只不過(guò)它可以仿真mcu。4.2.2 proteus仿真圖5 調(diào)試性能及分析 系統(tǒng)的性能調(diào)試以(1、主程序)為主。硬件調(diào)試比較簡(jiǎn)單,首先檢查電路的焊接是否正確,然后用萬(wàn)用表測(cè)試。軟件調(diào)試可以先編寫(xiě)顯示程序并進(jìn)行硬件的正確性檢驗(yàn),然后分別進(jìn)行主程序、從程序的編寫(xiě)和調(diào)試,由于ds18b20與單片機(jī)采用串行數(shù)據(jù)傳送,因此對(duì)ds18b20進(jìn)行編程時(shí)必須嚴(yán)格地保證讀寫(xiě)時(shí)序,否則將無(wú)法讀取測(cè)量結(jié)果。性能測(cè)試可用制作的溫度計(jì)和已有的成品溫度計(jì)來(lái)同時(shí)測(cè)量比較,由于ds18b20精度較高,所以誤差指標(biāo)可以限制在0.1c以
42、內(nèi),另外,-55c至+125c的測(cè)溫范圍使得該溫度計(jì)完全適用于一般的應(yīng)用場(chǎng)合,其低電壓供電的特性可做成電池供電的手持電子溫度計(jì)。電路焊接板圖片如下:課程設(shè)計(jì)心得本次的課程設(shè)計(jì)共三周時(shí)間,分別進(jìn)行了bs18d20電路原理圖的設(shè)計(jì),電路仿真圖的設(shè)計(jì)以及實(shí)物電路板的焊制三個(gè)過(guò)程。經(jīng)過(guò)這次的課程設(shè)計(jì),我們不僅加深了對(duì)protel99 se軟件的應(yīng)用和proteus仿真軟件的了解和使用,還學(xué)到了許多課本上沒(méi)有涉及知識(shí),練習(xí)了電路原理圖的設(shè)計(jì)和仿真運(yùn)行,同時(shí)對(duì)上學(xué)期學(xué)習(xí)的單片機(jī)課程進(jìn)行了一次全面的復(fù)習(xí)和鞏固,收益很大。我們知道,課程設(shè)計(jì)一般強(qiáng)調(diào)能力培養(yǎng)為主,在獨(dú)立完成設(shè)計(jì)任務(wù)的同時(shí),還要注意其他幾方面能力
43、的培養(yǎng)與提高,如獨(dú)立工作能力與創(chuàng)造力;綜合運(yùn)用專業(yè)及基礎(chǔ)知識(shí)的能力,解決實(shí)際工程技術(shù)問(wèn)題的能力;查閱圖書(shū)資料、產(chǎn)品手冊(cè)和各種工具書(shū)的能力;工程繪圖的能力;書(shū)寫(xiě)技術(shù)報(bào)告和編制技術(shù)資料的能力。在專業(yè)知識(shí)與研究方法方面為日后的畢業(yè)設(shè)計(jì)乃至畢業(yè)后的工作奠定良好的基礎(chǔ)第一周是對(duì)bs18d20電路原理圖設(shè)計(jì),剛開(kāi)始感覺(jué)有一定的難度,主要是對(duì)protel99 se軟件及功能的不了解。但在老師和同學(xué)的幫助下還是順利的完成了,進(jìn)而對(duì)接下來(lái)的兩個(gè)任務(wù)有了興趣。整個(gè)課設(shè)的過(guò)程就是一個(gè)學(xué)習(xí)的過(guò)程。因?yàn)樵谡n設(shè)的過(guò)程中,我們必須熟悉電路原理及器件的使用特點(diǎn),這些都是對(duì)課本知識(shí)復(fù)習(xí)和鞏固。所以 我覺(jué)得課設(shè)是一個(gè)很重要的學(xué)習(xí)
44、環(huán)節(jié),值得我們應(yīng)該很認(rèn)真的去對(duì)待!由于本次課程設(shè)計(jì)是由分組進(jìn)行完成的,所以通過(guò)這次的課設(shè)我更加了解到合作的重要性。三周的設(shè)計(jì)中,我們組成員都參加了設(shè)計(jì)的各個(gè)方面的討論和動(dòng)手實(shí)踐,大家更具自己的實(shí)際情況做了不同的分工,合理的利用了時(shí)間,感覺(jué)得到了很好的經(jīng)驗(yàn)。這次課設(shè)讓我對(duì)單片機(jī)有了進(jìn)一步的了解,而且對(duì)proteus仿真軟件的有了一定了解。體會(huì)到了proteus仿真軟件的強(qiáng)大。最主要的是我們能夠自己通過(guò)單片機(jī)焊接事物,這是我們?cè)谡n堂上是學(xué)不到的。極大地增強(qiáng)了我們的動(dòng)手實(shí)踐能力。通過(guò)本次課設(shè),能夠使我們熟練掌握單片機(jī)控制電路的設(shè)計(jì)、程序編寫(xiě)和整體焊接及系統(tǒng)調(diào)試,從而全面地提高我們對(duì)單片機(jī)的軟件、硬件
45、等方面的理解,進(jìn)而增強(qiáng)我們?cè)趯?shí)踐環(huán)節(jié)的動(dòng)手操作能力。譬如,我們可以根據(jù)實(shí)驗(yàn)指導(dǎo)書(shū)的要求,完成bs18d20電路的硬件設(shè)計(jì)、電路器件的選擇、單片機(jī)軟件的運(yùn)行、以及整體系統(tǒng)調(diào)試,并寫(xiě)出完善的設(shè)計(jì)報(bào)告。在進(jìn)行課設(shè)之前,要求我們具備數(shù)字電路、模擬電路、電路基礎(chǔ)、微機(jī)原理、電力電子、電機(jī)學(xué)和單片機(jī)等相關(guān)課程的知識(shí),并具備一些基本的實(shí)踐操作水平,為以后的就業(yè)打好一定的基礎(chǔ)??偟膩?lái)說(shuō),這次的課程設(shè)計(jì)自己還是很滿意的,感覺(jué)收獲了不少東西,相信此次學(xué)到的知識(shí)在以后的生活和學(xué)習(xí)中對(duì)我會(huì)有很大的幫助!參考文獻(xiàn)1 張五一,張道光.微機(jī)原理與接口技術(shù).鄭州:河南科學(xué)技術(shù)出版社,20062 李廣弟.單片機(jī)基礎(chǔ). 北京:北
46、京航空航天大學(xué)出版社,19943 廖常初.現(xiàn)場(chǎng)總線概述.電工技術(shù),1999.4 倪曉軍.單片機(jī)原理與接口技術(shù)教程.北京:清華大學(xué)出版社,20095 姚年春 向華protel99se基礎(chǔ)教程. 北京.人民名郵電出版社,20096 韓穎; proteus在單片機(jī)技術(shù)實(shí)訓(xùn)教學(xué)中的應(yīng)用j;中國(guó)科教創(chuàng)新導(dǎo)刊;2008年31期7 周靈彬;張靖武.proteus的單片機(jī)教學(xué)與應(yīng)用仿真j.單片機(jī)與嵌入式系統(tǒng)應(yīng)用;2008年01期附錄:ds18b20顯示程序-#include #define uint unsigned int#define uchar unsigned char /宏定義sbit p34=p2
47、4;sbit p35=p25;sbit p36=p26;sbit dp=p07;sbit p37=p27;sbit dq=p22; /定義ds18b20總線i/osbit set=p31; /定義選擇報(bào)調(diào)整警溫度上限和下限(1為上限,0為下限)/*p3.2和p3.3為調(diào)整溫度報(bào)警增加鍵和減少鍵*/sbit ling=p20; /定義響鈴signed char m; /溫度值全局變量bit sign=0; /外部中斷狀態(tài)標(biāo)志signed char shangxian=38; /上限報(bào)警溫度,默認(rèn)值為38signed char xiaxian=6; /下限報(bào)警溫度,默認(rèn)值為5uchar code
48、leddata=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff,0xbf;/*延時(shí)子程序*/void delay(uint i) while( i- );/*初始化ds18b20*/void init_ds18b20(void) unsigned char x=0; dq=1; delay(8); /稍做延時(shí) dq=0; /單片機(jī)將dq拉低 delay(80); /精確延時(shí),大于480us dq=1; /拉高總線 delay(14); x=dq; /稍做延時(shí)后,如果x=0則初始化成功,x=1則初始化失敗 delay(20);/*讀一
49、個(gè)字節(jié)*/unsigned char readonechar(void) unsigned char i=0; unsigned char dat=0; for (i=8;i0;i-) dq=0; / 給脈沖信號(hào) dat=1; dq=1; / 給脈沖信號(hào) if(dq) dat|=0x80; delay(4); return(dat);/*寫(xiě)一個(gè)字節(jié)*/void writeonechar(unsigned char dat) unsigned char i=0; for (i=8; i0; i-) dq=0; dq=dat&0x01; delay(5); dq=1; dat=1; void tmpchange(void) /發(fā)送溫度轉(zhuǎn)換命令 init_ds18b20(); writeonechar(0xcc); /跳過(guò)讀序號(hào)列號(hào)的操作 writeonechar(0x44); /啟動(dòng)溫度轉(zhuǎn)換/*讀取溫度*/unsigned int readtempera
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年中職鐵道機(jī)車車輛制造與維護(hù)(鐵道工程實(shí)務(wù))試題及答案
- 2025年中職(汽車運(yùn)用與維修)汽車發(fā)動(dòng)機(jī)維修階段測(cè)試試題及答案
- 2026年紀(jì)念日與節(jié)日?qǐng)鼍岸ㄖ祈?xiàng)目可行性研究報(bào)告
- 2026年康復(fù)理療(刮痧理療操作)試題及答案
- 2025年高職(畜牧工程技術(shù))畜禽舍設(shè)計(jì)實(shí)務(wù)測(cè)試題及答案
- 2025年高職船舶電子電氣工程(設(shè)備調(diào)試)試題及答案
- 2025年中職(建筑材料檢測(cè))材料質(zhì)量檢驗(yàn)試題及答案
- 2025年中職至大學(xué)階段(服裝類)專業(yè)技能綜合測(cè)試試題及答案
- 2025年高職(護(hù)理)靜脈輸液操作試題及答案
- 2025年高職(大數(shù)據(jù)與會(huì)計(jì))會(huì)計(jì)應(yīng)用階段測(cè)試題及答案
- 消費(fèi)類半固態(tài)電池項(xiàng)目可行性研究報(bào)告
- 溝槽開(kāi)挖應(yīng)急預(yù)案
- DBJ04∕T 398-2019 電動(dòng)汽車充電基礎(chǔ)設(shè)施技術(shù)標(biāo)準(zhǔn)
- 山東省濟(jì)南市2024年1月高二上學(xué)期學(xué)情期末檢測(cè)英語(yǔ)試題含解析
- 口腔門診醫(yī)療質(zhì)控培訓(xùn)
- (正式版)JBT 9229-2024 剪叉式升降工作平臺(tái)
- HGT4134-2022 工業(yè)聚乙二醇PEG
- 小學(xué)教職工代表大會(huì)提案表
- ESC2023年心臟起搏器和心臟再同步治療指南解讀
- 《泰坦尼克號(hào)》拉片分析
- 基層版胸痛中心建設(shè)標(biāo)準(zhǔn)課件
評(píng)論
0/150
提交評(píng)論