課程設(shè)計數(shù)字萬歷(顯示溫度星期)_第1頁
課程設(shè)計數(shù)字萬歷(顯示溫度星期)_第2頁
課程設(shè)計數(shù)字萬歷(顯示溫度星期)_第3頁
課程設(shè)計數(shù)字萬歷(顯示溫度星期)_第4頁
課程設(shè)計數(shù)字萬歷(顯示溫度星期)_第5頁
已閱讀5頁,還剩12頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、信息與電子工程學(xué)院課程設(shè)計報告課 程:設(shè)計題目:專 業(yè):班 級:成 員:姓名學(xué)號成績指導(dǎo)老師:答辯日期:目錄一、課程設(shè)計概述31、課程設(shè)計背景32、課程設(shè)計內(nèi)容3二、方案的選擇及確定32.1設(shè)計思路32.2設(shè)計方案32.3 方案比較論證4三、系統(tǒng)硬件設(shè)計43.1總體硬件設(shè)計43.2 單片機主控制模塊的設(shè)計53.3 時鐘電路模塊的設(shè)計53.4 溫度采集模塊設(shè)計63.5 功能按鈕設(shè)計63.6 16*2 LCD1602液晶顯示電路設(shè)計73.7總體電路圖7四、系統(tǒng)軟件設(shè)計84.1 系統(tǒng)模塊的功能分劃分84.2 總體程序流程框圖94.3 時鐘調(diào)整時間的流程圖94.4 修改鍵“UP”的功能流程圖104.5

2、溫度轉(zhuǎn)換流程圖11五、系統(tǒng)調(diào)試過程13六、遇到的問題及解決方法/總結(jié)13七、參考文獻13八、附錄131、儀器與設(shè)備132、元器件清單143、原理圖144、PCB圖155、實物圖156、操作說明書16一、課程設(shè)計概述1、課程設(shè)計背景隨著計算機技術(shù)的和控制系統(tǒng)的廣泛應(yīng)用,以及設(shè)備向小型化、智能化發(fā)展,單片機作為高新技術(shù)之一,以其體積小、功能強、價格低、使用靈活等優(yōu)勢,顯示出了很強的生命力。進入21世紀以來,開發(fā)推出單片機的公司很多,各種高性能單片機芯片市場異?;钴S,新技術(shù)的不斷采用,更加使單片機的種類、性能以及應(yīng)用領(lǐng)域不斷擴大和提高。因其功耗低、超高型、低成本、功能完整,在國內(nèi)越來越受到用戶的重視

3、和廣泛使用。2、課程設(shè)計內(nèi)容要求設(shè)計的單片機作息時間控制鐘完成以下功能:實時顯示當(dāng)前溫度;實時顯示當(dāng)前時間;實時顯示當(dāng)前日期;能修改當(dāng)前時鐘二、方案的選擇及確定2.1設(shè)計思路用STC89C52RC處理產(chǎn)生內(nèi)部時鐘數(shù)據(jù)或者讀取外部時鐘數(shù)據(jù)和采集外部傳感器的信息進行處理,并暫時寄存在其內(nèi)部的儲存器中,再通過單片機調(diào)用內(nèi)部RAM的數(shù)據(jù)并送到LCD或者LED數(shù)碼管上顯示出來。2.2設(shè)計方案方案1:單片機一般的工作頻率在12MHz左右,而且內(nèi)部還有定時、計數(shù)器,可以產(chǎn)生精確的1S定時,由次可以用定時中斷的方式產(chǎn)生精確的1S時間,秒位不斷的加1,再設(shè)計分、時、星期、日、月、年之間的進制,使產(chǎn)生進位。本方案

4、只需要單片機最小系統(tǒng)加上顯示電路,再設(shè)計簡單的程序算法就可以實現(xiàn)。對于測溫電路,可以使用熱敏電阻之類的器件利用其感溫效應(yīng),在將隨被測溫度變化的電壓或電流采集過來,進行A/D轉(zhuǎn)換后,就可以用單片機進行數(shù)據(jù)的處理。在顯示電路上,采用數(shù)碼管就可以將年月日星期時分秒和室內(nèi)溫度顯示出來方案2:萬年歷時鐘采用單片機控制DS1302實時時鐘芯片,能達到走時準(zhǔn)確且掉電不丟失數(shù)據(jù)的。DS1302 與單片機之間能簡單地采用同步串行的方式進行通信僅需用到三個口線1 RES( 復(fù)位)2 I/O (數(shù)據(jù)線)3 SCLK(串行時鐘)。溫度計要靈敏反映室溫的變化這樣可采用單片機與數(shù)字式溫度傳感器DS18B20通訊,采集溫度

5、數(shù)字信號進行處理。DS18B20通過一個單線接口發(fā)送或接受信息,因此在單片機與DS18B20之間僅需一條連接(加上地線)。在顯示電路上,采用16*2的LCD顯示。2.3 方案比較論證對于方案1,單片機雖然可以產(chǎn)生精確的秒信號,但是單片機在處理閏年上會比較麻煩,加之一旦單片機斷電后,所有的時間都要重新調(diào)整。對于測溫電路,采用熱敏電阻的輸出電壓-溫度特性,要加上A/D轉(zhuǎn)換,溫度傳感信息才能被單片機所接受,這種設(shè)計需要用到A/D轉(zhuǎn)換電路,感溫電路比較麻煩。在顯示電路上,采用LED數(shù)碼的話要用到單片機的許多I/O口,甚至I/O不夠用,還需要接上其它芯片大量擴展I/O口,這是一個弊處。對于方案2:單片機

6、不用去產(chǎn)生時鐘的數(shù)據(jù),時鐘的數(shù)據(jù)由DS1302獨立產(chǎn)生,并寄存在其內(nèi)部的寄存器上,單片機可以通過三總線與它通訊,不僅可以對它進行讀取實時時鐘數(shù)據(jù),還可以對它進行編程,設(shè)置它的工作模式。單片機只是處理從DS1302讀出來的數(shù)據(jù)并送顯示,大大減少了單片機的負擔(dān)。而且DS1302可以通過后備電池繼續(xù)工作,內(nèi)部的時鐘還在走,下次啟動后不用去調(diào)整時鐘,方便使用。基于同樣的原理,DS18B20也是一個獨立的傳感器,只要單片機配置它的工作狀態(tài)后它就可以獨立工作,內(nèi)部已經(jīng)把模擬信號轉(zhuǎn)換成數(shù)字信號,并把數(shù)字信號儲存在其內(nèi)部的寄存中。同樣,單片機通過單總線與它通訊,可以處理912位的溫度數(shù)字數(shù)據(jù)。在顯示電路上,采

7、用16*2 LCD液晶顯示器,能容納年月日星期時分秒溫度等信息的顯示。LCD顯示器只需占用11個I/O口就可以工作了,不用其它擴展芯片,總體上使電路簡單化。三、系統(tǒng)硬件設(shè)計3.1總體硬件設(shè)計本方案由STC89C52單片機核心控制模塊、液晶顯示模塊、溫度檢測模塊、按鍵模塊、時鐘模塊、晶振模塊、響鈴模塊7個部分組成組成。硬件總框圖如圖3-1所示。STC89C52RC單片機按鍵模塊液晶顯示模塊響鈴模塊時鐘模塊晶振模塊溫度檢測模塊圖3-1. 硬件總框圖3.2 單片機主控制模塊的設(shè)計STC89C52RC單片機為40引腳雙列直插芯片, MCS-51單片機共有4個8位的I/O口(P0、P1、P2、P3),每

8、一條I/O線都能獨立地作輸出或輸入。單片機的最小系統(tǒng)如下圖所示,18引腳和19引腳接時鐘電路,XTAL1接外部晶振和微調(diào)電容的一端,在片內(nèi)它是振蕩器倒相放大器的輸入,XTAL2接外部晶振和微調(diào)電容的另一端,在片內(nèi)它是振蕩器倒相放大器的輸出.第9引腳為復(fù)位輸入端,接上電容,電阻及開關(guān)后夠上電復(fù)位電路,20引腳為接地端,40引腳為電源端. 如圖3.2所示:圖3.2 單片機最小系統(tǒng)3.3 時鐘電路模塊的設(shè)計圖3.3是 DS1302與單片機的連接,其中Vcc1為后備電源,Vcc2為主電源。在主電源關(guān)閉的情況下,也能保持時鐘的連續(xù)運行。DS1302由Vcc1或Vcc2兩者中的較大者供電。當(dāng)Vcc2大于V

9、cc1+0.2V時,Vcc2給DS1302供電。當(dāng)Vcc2小于Vcc1時,DS1302由Vcc1供電。X1和X2是振蕩源,外接32.768KHz晶振。RST是復(fù)位/片選線,通過把RST輸入驅(qū)動置高電平來啟動所有的數(shù)據(jù)傳送。RST輸入有兩種功能:首先,RST接通控制邏輯,允許地址/命令序列送入移位寄存器;其次,RST提供終止單字節(jié)或多字節(jié)數(shù)據(jù)的傳送手段。當(dāng)RST為高電平時,所有的數(shù)據(jù)傳送被初始化,允許對DS1302進行操作。如果在傳送過程中RSTS置為低電平,則會終止此次數(shù)據(jù)傳送,I/O引腳變?yōu)楦咦钁B(tài)。上電動行時,在Vcc大于等于2.5V之前,RST必須保持低電平。中有在SCLK 為低電平時,才

10、能將RST置為高電平,I/O為串行數(shù)據(jù)輸入端(雙向)。SCLK始終是輸入端圖3.3 時鐘芯片與單片機的連接3.4 溫度采集模塊設(shè)計如圖3.4所示,采用數(shù)字式溫度傳感器DS18B20,它是數(shù)字式溫度傳感器,具有測量精度高,電路連接簡單特點,此類傳感器僅需要一條數(shù)據(jù)線進行數(shù)據(jù)傳輸,使用2.4與DS18B20的I/O口連接加一個上拉電阻,Vcc接電源,GND接地。圖3.4 溫度傳感器與單片機的連接3.5 功能按鈕設(shè)計當(dāng)按鈕被按下時,該按鈕對應(yīng)的I/O口被拉為低電平,松開時按鈕對應(yīng)的I/O口由內(nèi)部的上拉電阻將該I/O拉為高電平,如圖3.5所示:圖3.5 功能按鍵電路3.6 16*2 LCD1602液晶

11、顯示電路設(shè)計根據(jù)其讀寫的時序模擬總線的方式與單片機進行數(shù)據(jù)的通訊,首先將數(shù)據(jù)從I/O口讀入或送出,再選擇R/W 和RS的電平進行不同的操作,在使能端E下降沿時觸發(fā)數(shù)據(jù)的讀入或送出。注意P0口要接上拉電阻,如圖3.6所示:圖3.6 LCD液晶顯示屏與單片機的連接3.7總體電路圖本設(shè)計的具在溫度指示的數(shù)字萬年歷的總體電路圖如圖3.7所示:圖3.7 總體電路圖四、系統(tǒng)軟件設(shè)計4.1 系統(tǒng)模塊的功能分劃分萬年歷程序設(shè)計總體上分為四個大模塊,分別是DS1302時鐘程序模塊、DS18B20測溫模塊、LCD顯示模塊、鍵盤功能模塊。aDS1302時鐘程序模塊包括設(shè)置DS1302初始時間、從DS1302 讀時間

12、子程序、寫1302一字節(jié)子程序、讀1302一字節(jié)、關(guān)閉寫保護、開啟寫保護、關(guān)閉時鐘、延時子100MS程序。b. DS18B20測溫模塊包括DS18B20的初始化子程序、DS18B20數(shù)據(jù)處理子程序、讀出溫度值的子程序、DS18B20復(fù)位子程序、寫DS18B20的1位字節(jié)子程序、讀DS18B20的1個字節(jié)子程序。c. LCD顯示模塊包括LCD初始化子程序、寫入控制命令的子程序、判斷LCD顯示器是否忙的子程序、向LCD中的DDRAM中寫數(shù)據(jù)、查詢LCD字符表、調(diào)整模式的顯示子程序、正常模式LCD顯示子程序。d. 鍵盤功能模塊包括模式選擇按鍵SET子程序、調(diào)整模式選擇子程序、OUT鍵掃描子程序、UP

13、按鍵掃描子程序、DOWN按鍵掃描子程序。4.2 總體程序流程框圖本設(shè)計中,實現(xiàn)功能的總體程序流程框圖如下圖4.1所示:圖4.1 總體程序流程框圖4.3 時鐘調(diào)整時間的流程圖時鐘調(diào)整時間的流程圖4.2所示:圖4.2時鐘調(diào)整時間的流程4.4 修改鍵“UP”的功能流程圖修改鍵“UP”的功能流程圖如圖4.3所示:4.5溫度轉(zhuǎn)換流程圖初始化DS18B20開始應(yīng)答脈沖發(fā)起Skip Rom命令發(fā)起Convert命令延時1S等待溫度轉(zhuǎn)換完成初始化DS18B20應(yīng)答脈沖發(fā)起Read Seratchpad命令讀取第1、2字節(jié)即為溫度數(shù)據(jù)NOYESYESNO單片機實現(xiàn)對溫度傳感器DS18B20的溫度轉(zhuǎn)換讀取溫度數(shù)值

14、流程圖如下圖4.4所示:圖4.4溫度轉(zhuǎn)換讀取溫度數(shù)值流程圖五、系統(tǒng)調(diào)試過程首先把各個模塊的程序編好,再到Protues 7.1中畫好并連接電路圖進行程序仿真。各個部分的功能后再把它們綜合到一個主程序中去,再把它用Keil uVision3軟件把程序生成hex格式最后到Protues 7.1中仿真。在綜合到一起的時候,出現(xiàn)了RAM分配錯誤的問題,因為原先是一個模塊子程序在運行,RAM的分配只要不要跟子程序中的分配不沖突就可以了,但是在綜合各個模塊子程序的時候就會出現(xiàn)RAM分配沖突的問題。最好是在設(shè)計程序之前先把RAM的空間分配好。六、遇到的問題及解決方法/總結(jié)本次設(shè)計是我們遇到過的較大的設(shè)計,所

15、以遇到的問題也比較的多,尤其是以前沒有接觸過如此復(fù)雜的硬件電路以及軟件編程,在軟、硬件設(shè)計和調(diào)試中遇到了不少的困難,在同學(xué)的幫助才逐一克服了難題,學(xué)習(xí)到了不少的專業(yè)知識。在整個設(shè)計過程之前,我們已經(jīng)在網(wǎng)上找了相關(guān)方面的資料,萬事開始難,一開始不知道從哪里下手。后來慢慢學(xué)會分析系統(tǒng),將系統(tǒng)模塊化,各個模塊可以在軟件或者硬件上實現(xiàn)。在確保各個模塊的硬件電路和與之相搭配的程序能夠正常工作后在把它們組成一個系統(tǒng)。由于我們的理論知識水平有限,實踐能力和設(shè)計經(jīng)驗不足,在設(shè)計的過程中難免還存在一些問題甚至是錯誤。在今后的日子里,我會進一步加強自己的動手能力,豐富自己的知識面,并在以后工作崗位中發(fā)揮我所長,為

16、社會作出貢獻。七、參考文獻1 唐亞平、李移倫.單片機原理實訓(xùn)與學(xué)習(xí)指導(dǎo)M,長沙:中南大學(xué)出版社,20062 劉軍.單片機原理與接口技術(shù)M,華東理工大學(xué)出版社,20063 謝自美.電子線路設(shè)計、實驗、測試M,武漢:華中理工大學(xué)出版社,2000八、附錄1、儀器與設(shè)備儀器(設(shè)備)名稱規(guī)格型號單位數(shù)量單片機開發(fā)板STC89C52塊1USB轉(zhuǎn)串口線STC89C52根1USBA-A線USB2.0根1筆記本電腦Asus臺12、元器件清單器件型號數(shù)量單片機STC89C52RC1片1602液晶QC1602A1個蜂鳴器1個12M晶振TXC 11.0YBF2個按鈕4個開關(guān)1個溫度檢測器DS18B201個時鐘芯片DS

17、13021個電容10uf/30pf/22pf1個/2個/2個電阻10K/1K/20K5個/2個/1個滑動變阻器10K/2個/二極管2N54012個LED燈1個排阻9A103G1排杜邦導(dǎo)線16根直流電源1個PCB板1塊數(shù)據(jù)傳輸線1根3、原理圖4、PCB圖5、實物圖6、操作說明書6-1功能說明1. 具有時鐘功能;2. 具有溫度顯示功能;3. 具有萬年歷功能;4. 具有實時調(diào)整時間功能。6-2按鍵說明本數(shù)字鐘有三個按鍵(如下圖)S6號鍵為“時間設(shè)置/確定”鍵;S10號鍵為“+”鍵;S14號鍵為“-”鍵;6-3時間設(shè)置說明1. 第一次按下“時間設(shè)置/確定”鍵,“秒”位開始閃爍,此時按“+”“-”鍵可調(diào)節(jié)秒;2. 第二次按下“時間設(shè)置/確定”鍵,“分”位開

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論