畢業(yè)論文(設(shè)計(jì))-LCD時(shí)鐘溫度顯示設(shè)計(jì)_第1頁(yè)
畢業(yè)論文(設(shè)計(jì))-LCD時(shí)鐘溫度顯示設(shè)計(jì)_第2頁(yè)
畢業(yè)論文(設(shè)計(jì))-LCD時(shí)鐘溫度顯示設(shè)計(jì)_第3頁(yè)
畢業(yè)論文(設(shè)計(jì))-LCD時(shí)鐘溫度顯示設(shè)計(jì)_第4頁(yè)
畢業(yè)論文(設(shè)計(jì))-LCD時(shí)鐘溫度顯示設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩33頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、lcd時(shí)鐘溫度計(jì)設(shè)計(jì)姓名: 學(xué)號(hào): 班級(jí):1. 設(shè)計(jì)背景隨著社會(huì)的不斷發(fā)展,在工業(yè)生產(chǎn)屮越來(lái)越重視溫度對(duì)機(jī)器和生產(chǎn)的彫響,很多場(chǎng)合都要經(jīng) 常測(cè)量溫度,經(jīng)常要每隔一段時(shí)i'可測(cè)量室內(nèi)和機(jī)器內(nèi)部等的溫度,并作記錄,這樣就要求有一個(gè) 人完成這份工作,現(xiàn)在希望可以利用單片機(jī)來(lái)完成測(cè)溫和記錄的工作,這種方法的準(zhǔn)確性也比較 高,而且可以方便查詢過(guò)去某段時(shí)間的溫度,可以減小工作量。我們?cè)O(shè)計(jì)的lcd時(shí)鐘溫度顯示系統(tǒng)是一個(gè)可以記錄時(shí)間及溫度的系統(tǒng),該系統(tǒng)是由中央控制 器、溫度檢測(cè)器、時(shí)鐘系統(tǒng)、存儲(chǔ)器,顯示器及鍵盤(pán)部分組成。控制器采用單片機(jī)stc89c52,溫 度檢測(cè)部分采用ds18b20溫度傳感器,吋鐘

2、系統(tǒng)用吋鐘芯片ds1302,用lcd液晶12232f作為顯 示器,用at24c16作為存儲(chǔ)器件。單片機(jī)通過(guò)時(shí)鐘芯片ds1302獲取時(shí)間數(shù)據(jù),對(duì)數(shù)據(jù)處理后顯 示時(shí)間;溫度傳感器采用ds18b20采集溫度信號(hào)送給單片機(jī)處理,存儲(chǔ)器通過(guò)單片機(jī)對(duì)某些時(shí)間 點(diǎn)的數(shù)據(jù)進(jìn)行存儲(chǔ);單片機(jī)再把時(shí)間數(shù)據(jù)和溫度數(shù)據(jù)送液晶顯示器12232f顯示,鍵盤(pán)可以調(diào)時(shí) 和溫度查詢,可以查某一個(gè)時(shí)間的溫度。2. 方案論證2.1設(shè)計(jì)原理由于本設(shè)計(jì)硬件上簡(jiǎn)單,方法上易于實(shí)現(xiàn),成本低的要求,設(shè)計(jì)中利用電子技術(shù)和傳感技術(shù)。主 要應(yīng)用各種芯片實(shí)現(xiàn)設(shè)計(jì)中的要求,依靠一顆主芯片控制個(gè)芯片的動(dòng)作。2. 2方案選擇按照系統(tǒng)的設(shè)汁功能要求,本時(shí)鐘溫

3、度系統(tǒng)的設(shè)訃須采用單片機(jī)軟件系統(tǒng)實(shí)現(xiàn),用單片機(jī) 的自動(dòng)控制能力配合按鍵控制,來(lái)控制時(shí)鐘、溫度的存儲(chǔ)和查詢及顯示。初步確定設(shè)計(jì)系統(tǒng)由單片機(jī)主控模塊、時(shí)鐘模塊、測(cè)溫模塊、存儲(chǔ)模塊、顯示模塊、鍵盤(pán) 接口模塊共6個(gè)模塊組成,對(duì)于單片機(jī)的選擇,如果用8031系列,由于它沒(méi)有內(nèi)部ram,系統(tǒng)又 需要大量?jī)?nèi)存存儲(chǔ)數(shù)據(jù),因而不可用;51系列單片機(jī)的rom為4k,對(duì)于我們?cè)O(shè)計(jì)的系統(tǒng)可能有 點(diǎn)小,這里我們用w78e516b,它與stc89c52單片機(jī)產(chǎn)品兼容,有8k字節(jié)在系統(tǒng)可編程flash 存儲(chǔ)器w78e516b是一種低功耗、高性能cm0s8位微控制器。時(shí)鐘功能的實(shí)現(xiàn)有兩種方案:一是用軟件實(shí)現(xiàn),直接用單片機(jī)的定

4、時(shí)器編程以實(shí)現(xiàn)時(shí)鐘; 二是用專(zhuān)門(mén)的時(shí)鐘芯片實(shí)現(xiàn)時(shí)鐘的記時(shí),再把時(shí)間數(shù)據(jù)送入單片機(jī),由單片機(jī)控制顯示。比較兩 種方案,用軟件實(shí)現(xiàn)時(shí)鐘固然可以,但是程序運(yùn)行的每一步都需要時(shí)間,多一步或少一步程序都會(huì)影響記時(shí)的準(zhǔn)確度,用專(zhuān)用時(shí)鐘芯片可以實(shí)現(xiàn)準(zhǔn)確記時(shí)。故選方案二。時(shí)鐘和溫度的顯示可以用數(shù)碼管,但是數(shù)碼管的只能顯示簡(jiǎn)單的數(shù)字,我們?cè)O(shè)計(jì)的系統(tǒng)有 很多東西需要顯示,還是用顯示功能更好的液晶顯示器比較好,它能顯示更多的數(shù)據(jù),用可以顯 示漢字的液晶顯示器還可以增加顯示信息的可讀性,讓人看起來(lái)會(huì)很方便。2. 3系統(tǒng)原理圖系統(tǒng)由單片機(jī)主控模塊、時(shí)鐘模塊、測(cè)溫模塊、存儲(chǔ)模塊、顯示模塊、鍵盤(pán)接口模塊共6 個(gè)模塊組成如圖

5、2-1所示。其總電路圖見(jiàn)附錄1存儲(chǔ)器at24c16lcd顯示器12232f吋鐘ds1302主控器件stc89c52溫度檢測(cè)ds18b20鍵盤(pán)部分圖2-1系統(tǒng)原理3. 硬件電路設(shè)計(jì)3.1整體電路原理根據(jù)方案的選擇,系統(tǒng)由w78e516b.時(shí)鐘芯片ds1302.測(cè)溫芯片ds1802、at24c16存儲(chǔ)電 路、液品顯不電路、鍵掃描電路組成。本系統(tǒng)采用匯編語(yǔ)言編寫(xiě),控制器采用單片機(jī)stc89c52,溫度檢測(cè)部分采用ds18b20溫度傳 感器,時(shí)鐘系統(tǒng)用時(shí)蝕芯片ds1302,用lcd液晶12232f作為顯示器,用at24c16作為存儲(chǔ)器件。 單片機(jī)通過(guò)時(shí)鐘芯片ds1302獲取時(shí)間數(shù)據(jù),對(duì)數(shù)據(jù)處理后顯示時(shí)

6、間;溫度傳感器采用ds18b20 采集溫度信號(hào)送給單片機(jī)處理,存儲(chǔ)器通過(guò)單片機(jī)對(duì)某些時(shí)間點(diǎn)的數(shù)據(jù)進(jìn)行存儲(chǔ);單片機(jī)再把時(shí) 間數(shù)據(jù)和溫度數(shù)據(jù)送液晶顯示器12232f顯示,鍵盤(pán)可以調(diào)時(shí)和溫度查詢??梢圆槟骋粋€(gè)時(shí)間的 溫度。3. 2各電路原理單片機(jī)的晶振頻率應(yīng)低于40mhz,所以我們采用1l0592mhz,加兩個(gè)30°f電容。圖3-1所c3c4示。買(mǎi)時(shí)時(shí)鐘電路ds1302米用普通32. 768khz晶振。如圖3-2c1o.luf丄y1 icryst,c2| 一ii圖31品振電路圖3 2時(shí)鐘品振3. 2. 2時(shí)鐘模塊的設(shè)計(jì)我們采用ds1302作為主要計(jì)時(shí)芯片,主要為了提高計(jì)時(shí)精度,更重要的就是

7、ds1302可以在 很小的后備電源下繼續(xù)計(jì)時(shí),并可編程選擇充電電流來(lái)對(duì)后備電源進(jìn)行充電,可以保證后備電源 基本不耗電。(1) ds1302的結(jié)構(gòu)及工作原理ds1302是美國(guó)dallas公司推出的一種高性能、低功耗、帶ram的實(shí)吋吋鐘電路,它可以 對(duì)年、月、日、周日、時(shí)、分、秒進(jìn)行計(jì)時(shí),具有閏年補(bǔ)償功能,工作電壓為2. 5v5. 5vo釆用 三線接口與cpu進(jìn)行同步通信,并可采用突發(fā)方式一次傳送多個(gè)字節(jié)的時(shí)鐘信號(hào)或ram數(shù)據(jù)。 ds1302內(nèi)部有一個(gè)31x8的用于臨時(shí)性存放數(shù)據(jù)的ram寄存器。ds1302是ds1202的升級(jí)產(chǎn)品, 與ds1202兼容,但增加了主電源/后背電源雙電源引腳,同時(shí)提供

8、了對(duì)后背電源進(jìn)行涓細(xì)電流充 電的能力。(2) 引腳功能及結(jié)構(gòu)1p817|6|一123 4 id 心鳥(niǎo)hi>vccxsci.k圖3-3 ds1302的引腳排列圖3-3示出ds1302的引腳排列,其中vccl為后備電源,vcc2為主電源。在主電源關(guān)閉的 情況下,也能保持時(shí)鐘的連續(xù)運(yùn)行。ds1302由vccl或vcc2兩者屮的較大者供電。當(dāng)vcc2大于 vccl + o. 2v 時(shí),vcc2 給 ds1302 供電。當(dāng) vcc2 小于 vccl 吋,ds1302 由 vccl 供電。xi 和 x2 是 振蕩源,外接32. 768khz晶振。rst是復(fù)位/片選線,通過(guò)把rst輸入驅(qū)動(dòng)置高電平來(lái)啟

9、動(dòng)所有的數(shù)據(jù)傳送。rst輸入有兩種功能:首先,rst接通控制邏輯,允許地址/命令序列送入移位寄存器; 其次,rst提供終止單字節(jié)或多字節(jié)數(shù)據(jù)的傳送手段。當(dāng)rst為高電平時(shí),所有的數(shù)據(jù)傳送被初 始化,允許對(duì)ds1302進(jìn)行操作。如果在傳送過(guò)程中rst置為低電平,則會(huì)終止此次數(shù)據(jù)傳送, i/o引腳變?yōu)楦咦钁B(tài)。上電運(yùn)行吋,在vcc>2. 5v之前,rst必須保持低電平。只有在sclk為低 電平時(shí),才能將rst置為高電平。i/o為串行數(shù)據(jù)輸入輸出端(雙向),后面有詳細(xì)說(shuō)明。sclk始 終是輸入端。此外,ds1302還有年份寄存器、控制寄存器、充電寄存器、時(shí)鐘突發(fā)寄存器及與 ram相關(guān)的寄存器等。

10、時(shí)鐘突發(fā)寄存器可一次性順序讀寫(xiě)除充電寄存器外的所有寄存器內(nèi)容。 ds1302與rm相關(guān)的寄存器分為兩類(lèi):一類(lèi)是單個(gè)rm單元,共31個(gè),每個(gè)單元組態(tài)為一個(gè)8 位的字節(jié),其命令控制字為c0iifdii,其中奇數(shù)為讀操作,偶數(shù)為寫(xiě)操作;另一類(lèi)為突發(fā)方式下 的ram寄存器,此方式下可一次性讀寫(xiě)所有的ram的31個(gè)字節(jié),命令控制字為feh(寫(xiě))、ffh(讀)。(3)ds1302與cpu的連接實(shí)際上,在調(diào)試程序時(shí)可以不加電容器,只加一個(gè)32. 768khz的晶振即可。只是選擇晶振 時(shí),不同的晶振,誤差也較大。另外,還可以在上面的電路屮加入ds18b20,同時(shí)顯示實(shí)時(shí)溫度。 只要占用cpu 個(gè)口線即可。lc

11、d還可以換成led,還可以使用北京衛(wèi)信杰科技發(fā)展有限公司生 產(chǎn)的10位多功能8段液晶顯示模塊lcm101,內(nèi)含看門(mén)狗(wdt)/時(shí)鐘發(fā)生器及兩種頻率的蜂鳴器 驅(qū)動(dòng)電路,并有內(nèi)置顯示ram,可顯示任意字段筆劃,具有34線串行接口,可與任何單片機(jī)、 tc接口。功耗低,顯示狀態(tài)時(shí)電流為2ua (典型值),省電模式時(shí)小于ina,工作電壓為2. 4v 3. 3v,顯zk清晰。i iu2c2vcxi&rhvoctt0:23456? u u u u u 1 u upppppppp圖3-4 ds1302與cpu連接的電路原理圖3. 2. 3溫度傳感器設(shè)計(jì)由于傳統(tǒng)的熱敏電阻等測(cè)溫元件測(cè)出的一般都是電壓,

12、再轉(zhuǎn)換成對(duì)應(yīng)的溫度,需耍比佼多 的外部元件支持,且硬件電路復(fù)雜,制作成本相對(duì)較高。而ds18b20溫度傳感器是美國(guó)dallas 半導(dǎo)體公司最新推出的一種改進(jìn)型智能溫度傳感器,它能直接讀出被測(cè)溫度,并且可根據(jù)實(shí)際要 求通過(guò)簡(jiǎn)單的編程實(shí)現(xiàn)曠12位的數(shù)字值讀數(shù)方式。電路圖如圖3-5所示。t|u2iio.lufgnddq vddds18b20r1ti1ok圖3-5溫度傳感器電路圖(1)ds18b20的性能特點(diǎn)如下:a)獨(dú)特的單線接口僅需要一個(gè)端口引腳進(jìn)行通信;b)多個(gè)ds18b20可以并聯(lián)在惟一的三線上,實(shí)現(xiàn)多點(diǎn)組網(wǎng)功能;c)無(wú)須外部器件;d)可通過(guò)數(shù)據(jù)線供電,電壓范圍為3. 05. 5v;e)零待機(jī)

13、功耗;f)溫度以9或12位數(shù)字量讀??;g)用戶可定義的非易失性溫度報(bào)警設(shè)置;h)報(bào)警搜索命令識(shí)別并標(biāo)志超過(guò)程序限定溫度(溫度報(bào)警條件)的器件;1)負(fù)電壓特性,電源極性接反時(shí),溫度計(jì)不會(huì)因發(fā)熱而燒毀,但不能正常工作。(2)ds18b20 的使用由于ds18b20釆用的是1 wire總線協(xié)議方式,即在一根數(shù)據(jù)線實(shí)現(xiàn)數(shù)據(jù)的雙向傳輸,而對(duì) stc89c52單片機(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)保證各

14、位數(shù)據(jù)傳輸?shù)恼_性和完整性。該協(xié)議定義了幾種信號(hào)的時(shí) 序:初始化時(shí)序、讀吋序、寫(xiě)時(shí)序。所有時(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ù)和命令的傳輸都是低位在先。表1ds18b20詳細(xì)引腳功能描述序號(hào)名稱(chēng)引腳功能描述1gnd地信號(hào)2dq數(shù)據(jù)輸入/輸岀引腳。開(kāi)漏單總線接口引腳。當(dāng)被用著在寄生電源下,也可以 向器件提供電源。3vdd可選擇的vdd引腳。當(dāng)工作于寄生電源時(shí),此引腳必須接地。ds18b20的讀時(shí)序?qū)τ赿s18b20的讀時(shí)序分為讀0時(shí)序和讀1時(shí)序兩個(gè)過(guò)程

15、。對(duì)于ds18b20的讀時(shí)隙是從主機(jī)把單總線拉低之后,在15秒之內(nèi)就得釋放單總線,以讓ds18b20把數(shù)據(jù)傳輸?shù)絾慰偩€上。ds18b20在完成一個(gè)讀時(shí)序過(guò)程,至少需要60us才能完成。圖3-6 ds18b20的讀時(shí)序ds18b20的寫(xiě)時(shí)序?qū)τ赿s18b20的寫(xiě)時(shí)序仍然分為寫(xiě)0時(shí)序和寫(xiě)1時(shí)序兩個(gè)過(guò)程。對(duì)于ds18b20寫(xiě)0時(shí)序和寫(xiě)1時(shí)序的要求不同,當(dāng)要寫(xiě)0時(shí)序時(shí),單總線要被拉低至少60us, 保證ds18b20能夠在15us到45us之間能夠正確地釆樣10總線上的“0”電平,當(dāng)要寫(xiě)1時(shí)序時(shí), 單總線被拉低之后,在15us之內(nèi)就得釋放單總線。主cpu耳出豎 訂us斤一如123$ 二_s18820采

16、祥區(qū)4 15us>4 15u;30u3主cpu寫(xiě)h煽60120us圖3-7 ds18b20的寫(xiě)時(shí)序3.2.4液晶顯示電路(1)顯示電路采用12232f液晶顯示器。12232f是一種內(nèi)置8192個(gè)16*16點(diǎn)漢字庫(kù)和128個(gè) 16*8點(diǎn)ascii字符集圖形點(diǎn)陣液晶顯示器,它主要由行驅(qū)動(dòng)器/列驅(qū)動(dòng)器及128x32全點(diǎn)陣液晶 顯示器組成°可完成圖形顯示,也可以顯示7. 5x2個(gè)(16x 16點(diǎn)陣)漢字.與外部cpu接口采用串 行方式控制。曲8吐0 30 花col戀2 54*15 c串口43 15© 5±0 2&0)10.379.0010.3w u&

17、 cork eol49cglil 0w=ji mr i石 o圖3-8 12232f液品顯示器主要技術(shù)參數(shù)和性能:1. 電源:vdd:+3 os+5. 5vo (電源低于4. 0伏led背光需另外供電)2. 顯示內(nèi)容:122 (列)x 32 (行)點(diǎn)。3. 全屏幕點(diǎn)陣。4. 2m rom(cgrom)總共提供8192個(gè)漢字(16x16點(diǎn)陣)。5. 16k rom (hcgrom)總共提供128個(gè)字符(16x8點(diǎn)陣)。6. 2mhz 頻率。7. 工作溫度:0°c s +60°c,存儲(chǔ)溫度:-20°c s +70°c(2)模塊的外部接口表2 12232f液晶顯

18、示器并行接口管腳號(hào)管腳名稱(chēng)levek管腳功能描述1vssov電源地2vcc3. 0+5v電源正3vee對(duì)比度調(diào)整4rs(cs)h/lrs= “h”,表示db7'db0為顯示數(shù)據(jù)rs= “l(fā)”,表示db7'db0為顯示指令數(shù)據(jù)5r/w(s1d)h/lr/w二 “h” , e二 “h” ,數(shù)據(jù)被讀到 db7db0r/w= “l(fā)” ,e=, db7db0 的數(shù)據(jù)被寫(xiě)到 ir 或 dr6e (clk)h/l使能信號(hào)7dboh/l數(shù)據(jù)線8db1h/l數(shù)據(jù)線9db2h/l數(shù)據(jù)線10db3h/l數(shù)據(jù)線11db4h/l數(shù)據(jù)線12db5h/l數(shù)據(jù)線13db6h/l數(shù)據(jù)線14db7h/l數(shù)據(jù)線15

19、bl+vdd背光源電壓+4. 2v-+5v16bi-vss背光源公共端(3) 顯不芯片電路v5圖3-9 12232f電路圖3. 2. 5存儲(chǔ)電路存儲(chǔ)電路采用atmel公司生產(chǎn)的at24c16,具有16kb的存儲(chǔ)空間。其管腳接法是1、2、3、4接地,5、6分別接單片機(jī)的端口,7、8接5v電源。u4vcc ao wp a1 scl a2 sda gndat24c168冷65| vcc1234i-p1gtput-p12-pn圖3-10存儲(chǔ)電路3. 2.6鍵盤(pán)接口電路按鍵有6個(gè),分別實(shí)現(xiàn)為時(shí)間選擇、調(diào)整、時(shí)間的加減、查詢溫度、復(fù)位的功能。用中斷法完成讀鍵功能。如圖:r9 10k11111sw-pb2s

20、w1 d14sw-pb3sw-pbsw3 d1645sw4 d17sw-pbsw5 d18vcc圖3-11按鍵電路sw2 d151n41481n41481n41481n41481n4148into1r810k3. 2. 7復(fù)位電路上電復(fù)位釆用電平方式開(kāi)關(guān)復(fù)位。如圖(2)所示。上電復(fù)位用rc電路,電容用10" f,電阻用iokq。vcc1 s+/c14 10ufr6110k尋rcn61 1ic11c c a>>aa/vppxt圖3-12復(fù)位電路3. 2. 8系統(tǒng)pcb圖單片機(jī)w78e516b是木系統(tǒng)的核心部分,它控制著數(shù)據(jù)顯示、溫度檢測(cè)存儲(chǔ)數(shù)據(jù)等功能。根據(jù)以上各功能模塊得到

21、應(yīng)用電路總原理圖,然后畫(huà)出pcb圖。c?u5c6uau3enu<u2一3 一圖3-13總電路pcb圖4軟件系統(tǒng)設(shè)計(jì)4. 1主程序系統(tǒng)主程序首先對(duì)系統(tǒng)進(jìn)行初始化,包括設(shè)置定時(shí)器、中斷和端口;然后顯示開(kāi)機(jī)畫(huà)面。由于單片機(jī)沒(méi)有停止指令,所以可以設(shè)計(jì)系統(tǒng)程序不斷地循環(huán)執(zhí)行上述顯示效果。下圖是系統(tǒng)的 流程圖。圖41系統(tǒng)流程圖4. 2系統(tǒng)各子程序4. 2.1時(shí)間顯示程序我們采用了時(shí)鐘芯片ds1302,所以只需從ds1302各寄存器中讀出小時(shí)、分鐘、秒,再處理 即可。在首次對(duì)ds1302進(jìn)行操作z前,必須對(duì)它進(jìn)行初始化,然后從ds1302屮讀取數(shù)據(jù),再經(jīng) 過(guò)處理后,送給顯示緩沖單元。流程圖見(jiàn)圖4 2。

22、圖42時(shí)間顯示程序4. 2. 2時(shí)間調(diào)整程序調(diào)整時(shí)間用5個(gè)調(diào)整按鈕,一個(gè)作為選擇,另外兩個(gè)做為移位控制用,最后兩個(gè)做為加減 用,分別定義控制按鈕,移位按鈕,力口、減按鈕。在調(diào)整時(shí)間過(guò)程中,要調(diào)整的那位與別的位應(yīng) 該有區(qū)別,所以增加了閃爍功能,即調(diào)整的那位一直在閃爍直到調(diào)整下一位。閃爍原理就是讓要 調(diào)整的那一位,每隔一定時(shí)間熄滅一次,比如說(shuō)50mso利用定時(shí)器計(jì)時(shí),當(dāng)達(dá)到50ms溢出時(shí), 就送給該位熄滅符,在下一次溢出吋,再送正常顯示的值,不斷交替,直到調(diào)整該位結(jié)束,此吋 送正常顯示值給該位,再進(jìn)入下一位調(diào)整閃爍程序,時(shí)間調(diào)整程序流程圖如圖4 3。圖4 3時(shí)間調(diào)整程序流程圖4. 2. 3讀取溫度

23、子程序主程序的主要功能是負(fù)責(zé)溫度的實(shí)時(shí)顯示、讀出并處理ds18b20的測(cè)量溫度值,溫度測(cè)量每is進(jìn)行一次,流程圖如圖44。讀出溫度子程序的主要功能是讀出ram屮的9個(gè)字節(jié),在讀出時(shí)需進(jìn)行crc校驗(yàn),校驗(yàn)冇錯(cuò)時(shí)不進(jìn)行溫度數(shù)據(jù)的改寫(xiě)。其程序流程圖如圖4 5。發(fā)ds18b20慕位命今發(fā)跳過(guò)rom命令發(fā)讀取瀾度命今讀取操作.crc校騙圖44 ds18b20溫度計(jì)主程序流程圖圖45讀出溫度子程序流程圖4. 2. 4計(jì)算溫度子程序計(jì)算溫度子稈序?qū)am中讀取值進(jìn)行bcd碼的轉(zhuǎn)換運(yùn)算,并進(jìn)行溫度值正負(fù)的判泄,其程序流程圖如圖4 6圖4 6計(jì)算溫度子程序流程圖4. 2. 5顯示數(shù)據(jù)刷新子程序顯示數(shù)據(jù)刷新子程序

24、主要吋對(duì)顯示緩沖器中的顯示數(shù)據(jù)進(jìn)行刷新操作,當(dāng)最高顯示位為零時(shí)將符號(hào)顯示位移入下一位。程序流程圖如圖4 7圖4一7顯示數(shù)據(jù)刷新子程序流程圖4. 2.6溫度數(shù)據(jù)的計(jì)算處理方法從ds18b20讀取出的二進(jìn)制值必須先轉(zhuǎn)換成十進(jìn)制值,才能用于字符的顯示。因?yàn)閐s18b20 的轉(zhuǎn)換精度為9-12位可選的,為了提高精度采用12位。在采用12位轉(zhuǎn)換精度時(shí),溫度寄存器 里的值是以0. 0625為步進(jìn)的,即溫度值為溫度寄存器里的二進(jìn)制值乘以0. 0625,就是實(shí)際的卜 進(jìn)制溫度值。下表就是二進(jìn)制和十進(jìn)制的近似對(duì)應(yīng)關(guān)系表。表3小數(shù)部分二進(jìn)制和十進(jìn)制的近似對(duì)應(yīng)關(guān)系表小數(shù)部分二進(jìn)制值0123456789abcdef十

25、進(jìn)制值00112334556678894. 2. 7溫度值存儲(chǔ)子程序圖4一8根據(jù)要求,系統(tǒng)要存儲(chǔ)某幾個(gè)時(shí)間點(diǎn)的溫度,在時(shí)鐘到達(dá)這幾個(gè)時(shí)間點(diǎn)時(shí),通過(guò)軟件判斷, 把此時(shí)的溫度數(shù)據(jù)讀到單片機(jī)內(nèi)存,再通過(guò)24c16的讀寫(xiě)程序把溫度數(shù)據(jù)存儲(chǔ)到24c16對(duì)應(yīng)地址 單元,這樣溫度數(shù)據(jù)就儲(chǔ)存起來(lái)了。程序流程圖見(jiàn)圖4 8。4. 2. 8查詢子程序根據(jù)實(shí)際要求將某一天某一個(gè)時(shí)間的具體溫度值可進(jìn)行查看,以及當(dāng)天溫度的最高、最低 溫度(可查詢10天)。通過(guò)按鈕確定要顯示笫幾天的溫度值,把溫度值讀到單片機(jī)內(nèi)存,發(fā)命令 給24c16的讀寫(xiě)程序,查找對(duì)應(yīng)的地址單元,把地址單元內(nèi)容讀取出來(lái)。程序流程圖見(jiàn)圖49。圖4一9杳詢子

26、程序流程圖5.電路調(diào)試5.1調(diào)試設(shè)備微機(jī)電源(+5v/+12v)一臺(tái)一臺(tái)一臺(tái)51系列編程器(燒錄器+軟件)一臺(tái)pc微機(jī)數(shù)字萬(wàn)用表5. 2調(diào)試步驟5. 2. 1硬件診斷先檢查印制板及焊接的質(zhì)量是否符合要求,有無(wú)虛焊點(diǎn)及線路間有無(wú)短路、斷路。然后用萬(wàn) 用表測(cè)試,通電檢測(cè),檢查個(gè)芯片電壓是否正常,檢查無(wú)誤后,可通電檢查lcd液晶顯示器亮度 情況,一般情況下取背光電壓為45. 5v即可得到滿意的效果。5. 2. 2單片機(jī)程序調(diào)試軟件調(diào)試是在mcdwin編譯器下進(jìn)行,源程序編譯及仿真調(diào)試應(yīng)分段或以子程序?yàn)閱挝恢饌€(gè) 進(jìn)行,最后結(jié)合硬件實(shí)時(shí)調(diào)試。子程序調(diào)試包括:1. ds1302的計(jì)時(shí)和讀寫(xiě)程序、顯示程序;

27、2. at24c16讀寫(xiě)程序;3. ds18b20讀出溫度子程序、溫度轉(zhuǎn)換命令子程序、計(jì)算溫度子程序、顯示數(shù)據(jù)刷新子程 序。根據(jù)程序各部份子程序先進(jìn)行獨(dú)立調(diào)試,1. 由于采用了 ds1302作為計(jì)時(shí)器使用,其計(jì)時(shí)精度相對(duì)來(lái)說(shuō)比較高。用制作的成品與萬(wàn)年歷 計(jì)吋比較,基本沒(méi)有誤差。2. 由于ds18b20的誤差指標(biāo)在0. loc以內(nèi),在一般場(chǎng)合完全適用。3. 根據(jù)實(shí)驗(yàn)要求記錄并顯示某些時(shí)間的溫度值及一天當(dāng)屮的最高、最低溫度。經(jīng)測(cè)試,at24c16 能存儲(chǔ)十天內(nèi)的所有要求的數(shù)據(jù)。5. 2.3電路仿真電路使用proteus軟件進(jìn)行仿真,proteus軟件有十多年的歷史,在全球廣泛使用,除了其具 有和其

28、它eda工具一樣的原理布圖、pcb自動(dòng)或人工布線及電路仿真的功能外,其革命性的功 能是,他的電路仿真是互動(dòng)的,針對(duì)微處理器的應(yīng)用,還可以直接在基于原理圖的虛擬原型上編 程,并實(shí)現(xiàn)軟件源碼級(jí)的實(shí)時(shí)調(diào)試,如有顯示及輸出,還能看到運(yùn)行后輸入輸出的效果,配合系 統(tǒng)配置的虛擬儀器如示波器、邏輯分析儀等。lcd!lm032lnnricoctluo l7ci cj cico lr kn ci ci lzi'ji« |r- lzi o111圖5-1顯示仿真圖5 2溫度仿真結(jié)論及尚存在的問(wèn)題一、設(shè)計(jì)總結(jié)隨著科學(xué)的不斷進(jìn)步和發(fā)展,一項(xiàng)工程的建設(shè),非常注重其實(shí)用性和價(jià)值性。所以在設(shè)計(jì) 上如何選材、

29、如何規(guī)劃起了舉足輕重的作用。本次畢業(yè)設(shè)計(jì)正是要通過(guò)個(gè)人的思考和研究,制作 出價(jià)格便宜、功能齊全的實(shí)用器件。這畢業(yè)設(shè)計(jì),要求掌握和靈活運(yùn)用多門(mén)課程知識(shí),并通過(guò)個(gè)人思考和查找資料,培養(yǎng)分析 問(wèn)題和解決問(wèn)題的能力,培養(yǎng)動(dòng)手能力。本次畢業(yè)設(shè)汁,需要常握pro tel軟件和繪制電路板的 方法,同時(shí)也通過(guò)設(shè)計(jì),體驗(yàn)理論聯(lián)合實(shí)際的復(fù)雜性,增強(qiáng)工程設(shè)計(jì)的觀念。為日后的工作打下 良好的基礎(chǔ)。從這次畢業(yè)設(shè)計(jì)中,我更深刻地掌握了所學(xué)的學(xué)科知識(shí),學(xué)到了很多課外的知識(shí),提高了 自我分析問(wèn)題、解決問(wèn)題的能力,同時(shí)也使我認(rèn)識(shí)到,理論聯(lián)系實(shí)際是十分閑難的,要設(shè)計(jì)成功 是需要很大的努力和不斷鉆研的精神。我也由這次畢業(yè)設(shè)計(jì),看到

30、了自己許多的不足之處,在今 后在社會(huì)的工作中,我將朝自己的目標(biāo)繼續(xù)努力,希望以后能為國(guó)家的建設(shè)多出一分貢獻(xiàn)。二、尚存在的問(wèn)題在本次設(shè)計(jì)中,主要應(yīng)用芯片集成來(lái)實(shí)現(xiàn)時(shí)鐘和溫度顯示。因此在設(shè)計(jì)過(guò)程中要熟練運(yùn)用 單片機(jī)主芯片,而且要有清晰的思路,運(yùn)用時(shí)要畫(huà)出它們的電路圖才能準(zhǔn)確的設(shè)計(jì)成功,不懂的 時(shí)候要查閱相關(guān)的資料及書(shū)籍。電路設(shè)計(jì)好并仿真成功了,還要運(yùn)用protel軟件來(lái)印制電路板。 由于我對(duì)protel軟件不太熟悉,所以課后要仔細(xì)的看書(shū)學(xué)習(xí),最后順利了完成了電路的原理圖 和pcb圖,并順利制作了一塊電路板。電路設(shè)計(jì)以及單片機(jī)、電腦程序設(shè)計(jì)均已達(dá)到要求,但實(shí) 際做出樣品后,尚存在一些問(wèn)題。設(shè)計(jì)過(guò)程中

31、亦遇過(guò)不少問(wèn)題。芯片的工作電壓不正常或者過(guò)高 電壓,則可能出現(xiàn)不能發(fā)送碼或者不能譯碼的現(xiàn)象,所以要檢查電源電壓是否符合要求。致謝通過(guò)三個(gè)多月的努力,畢業(yè)設(shè)計(jì)終于完成,心里有種成就感,沖勁也更大了。大學(xué)四年, 從理論知識(shí)的學(xué)習(xí),動(dòng)手能力的培養(yǎng),綜合能力的提高,到實(shí)際應(yīng)用的操作,是一步一步慢慢走 來(lái),慢慢積累,慢慢提高的。在這次的畢業(yè)設(shè)計(jì)中,首先要感謝我的導(dǎo)師吳茂老師。吳老師平日 里工作繁多,但在我做畢業(yè)設(shè)計(jì)的每個(gè)階段,查閱資料,設(shè)計(jì)草案的確定和修改,中期檢查,后 期詳細(xì)設(shè)計(jì),裝配草圖等整個(gè)過(guò)程中都給予了我悉心的指導(dǎo)??傇谖易蠲糟臅r(shí)候,給予支持并 提出寶貴的意見(jiàn),使我認(rèn)準(zhǔn)方向,枳極提高。我的設(shè)計(jì)

32、較為復(fù)雜煩瑣,但是吳老師仍然細(xì)心地糾 正圖紙中的錯(cuò)誤。除了敬佩吳老師的專(zhuān)業(yè)水平外,他的治學(xué)嚴(yán)謹(jǐn)和科學(xué)研究的精神也是我永遠(yuǎn)學(xué) 習(xí)的榜樣,并將積極影響我今后的學(xué)習(xí)和工作。還要感謝大學(xué)四年來(lái)所有的老師,為我打下了 電子專(zhuān)業(yè)知識(shí)的基礎(chǔ);同時(shí)還要感謝所有的同學(xué)們,正是因?yàn)橛辛四銈兊闹С趾凸膭?lì),此次畢業(yè) 設(shè)計(jì)才會(huì)順利完成。這次畢業(yè)設(shè)計(jì)對(duì)于我來(lái)說(shuō),意義非常不同,它是我大學(xué)四年來(lái)的綜合, 有形的與無(wú)形的結(jié)合,每字句都認(rèn)真仔細(xì)地琢磨,是那么真實(shí),那么沉甸,那么有價(jià)值,那么意 義重大。它的背后是老師、學(xué)生、知識(shí)三者有機(jī)互動(dòng)的全面綜合的體現(xiàn)。最后感謝機(jī)電與信息工程學(xué)院和我的母校一一佛山科學(xué)技術(shù)學(xué)院四年來(lái)對(duì)我的精心栽

33、培。參考文獻(xiàn)1 胡漢才.單片機(jī)原理及其接口技術(shù)(第2版).北京:清華大學(xué)出版社,20042 趙曉安編著,mcs 51單片機(jī)原理及應(yīng)用,天津大學(xué)出版社,1994年3 閻 石主編.數(shù)字電子技術(shù)基礎(chǔ)(第四版)北京:高等教育出版社,2000. 54 康華光.電子技術(shù)基礎(chǔ)模擬部分m.第四版.北京:高等教育出版社,20015 陸坤主編,電子設(shè)計(jì)技術(shù),電子科技大學(xué)出版社,1998.106 清華天則工作室主編,編程技巧及故障排除即時(shí)通,兵器工業(yè)出版社,2001. 1附錄一電路圖附圖11電路圖附錄二引腳封裝t2 p1.0匚40vddt2ex.p1.1匚239p0.0, adop1.2匚338po.t ad1p1

34、.3匚437p0.2, ad2p1.4匚536po3, ad3p1.5匚635p04 ad4p1.6匚734p0.5, ad5p1.7匚.533p0.6, ad6rst匚932p0.7, ad7rxd, p3.0匚1031eatxd, p3.1匚1130aleinto, p3.2匚1229psenint1.p3.3匚1328p2.7.a15to, p3.4匚1427p2.6, a14_t1. p3.5匚1526p2.5, a13wrt p3.6匚1625p2.4, a12rdp3.7匚1724p2.3.a11xtal2匚1823p2.2,a10xtal1匚1922p2.1,a9vss匚2021

35、p2.0, a8附圖2-1 78e516b引腳封裝圖衣厶管腳號(hào)管腳名稱(chēng)lever管腳功能描述1vssov電源地2vcc3. 0+5v電源正3vo對(duì)比度調(diào)整4rs(cs)h/lrs二“h”,表示db7、db0為顯示數(shù)據(jù)rs二“l(fā)” ,表示db7、db0為顯示指令數(shù)據(jù)5r/w(sid)h/lr/w二 “h" , e= “h” ,數(shù)據(jù)被讀到 db7dbor/w= “l(fā)” ,e= “h l” , db7'db0 的數(shù)據(jù)被寫(xiě)到 ir 或 dr6e(clk)h/l使能信號(hào)7dboh/l數(shù)據(jù)線8db1h/l數(shù)據(jù)線9db2h/l數(shù)據(jù)線10db3h/l數(shù)據(jù)線11db4h/l數(shù)據(jù)線12db5h/

36、l數(shù)據(jù)線13db6h/l數(shù)據(jù)線14db7h/l數(shù)據(jù)線15bl十vdd背光源電壓+4. 2v-+5v16bl-vss背光源公共端附圖2-2顯示芯片外部接口附錄三部分程序org 0000hajmp startorg 0003hajmpintxoorg ooobhajmpinttoorg 0030hstar!': mov sp, #070hmov zt, #0011;清狀態(tài)mov 21h, #00h;清狀態(tài)clr flag2lcall qingmov dt1_1,#3omov dti 2, #31mov dt1_3,#32mov dti 4, #33mov dt1_5,#34mov dti

37、6, #34mov dti 7,#34mov dt1_&#34mov dt1_11,#1omov dt1_14, #10mov dt2_1, #20mov dt2 2,#21mov dt2_3, #22mov dt2 5,#11mov dt2 6,#11mov dt2_7,#11mov dt2 8,#11mov dt2_9,#11mov dt2 16, #13 ;第16位顯示。mov dinshi, #6;定吋 50ms*6=300msmov daoshi, #33;定時(shí) 50*6*33s (9. 9s)對(duì)狀態(tài)清零mov jishu_a, #2mov flash, #10mov p1,

38、#offhmov p3, #0ffhclr rstclr p3. 3clr p3.4clr p3. 5mov tho,#03chmov tlo,#obohsetbeasetbeto;setbptosetbexo;clrpxo; setbtrosetbitomov tm0d,#01h;定時(shí)器0, 50ms;定時(shí)顯示為高優(yōu)先級(jí);按鍵處理為低優(yōu)先級(jí)acall init_ttme ;初始化時(shí)間蕊片(振蕩器工作允許,24小時(shí)模式,禁止涓流充電,禁 止寫(xiě)入)lcall init_lcd ;初始化 lcdlcall display,all;setb zt3;mov zt,#00hmain:;jmp$;lca

39、lldisplay;jmpmainlcallget 1820lcallds_1820lcalldisplayacalldisplayjmp mainqtng:mov ro, #2011;rm 清零qt_o:mov r0, #0011inc rocjne ro,#70h,ql_0retinit lcd:mov d,#38hlcall commdmov d,#38hlcall commdmov d, #38hlcall commdmov d, #o1hlcall commdmov d, #38hlcall commdmov d, #ofi1lcall commdmov d,#06hlcall co

40、mmdmov d,#000011oblcall commdretommd:setbeclrrsclrrwclrelcall busyretdtsen: setb esetb rsclr rwclr eretbusy:push accmov d,#offhbusy_1: clr eclr rssetbrwsetbejb d. 7, busy_1pop accretget_1820:clr trosetbdq;acalltnit 1820jb flag1,get 1820 1;retget 1820 1:mov a, #occh ;跳過(guò) rom 匹配acallwrite 1820;mov a, #

41、044h;發(fā)出溫度轉(zhuǎn)換命令acallwrite_1820 ;setbtroacalldelay750;clr troacallinit_1820;準(zhǔn)備讀溫度前先復(fù)位mov a, #occh ;跳過(guò) rom 匹配acallwrite 1820;acallread_1820;將讀出的溫度數(shù)據(jù)保存到內(nèi)存屮acallds 1820;將從ds1820中讀岀來(lái)的溫度數(shù)據(jù)轉(zhuǎn)換為顯示數(shù)據(jù)setbtroret; ;從dsi820中取出來(lái)的溫度數(shù)據(jù)*625ds_ 1820:mov dt2_10,#ll;第 1 位不顯示mov a,t_h8jnb acc. 7, ds_1820_3 ;如果溫度小于0,測(cè)到的數(shù)值需耍取反加1再乘于0.

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論