青奧倒計時顯示屏畢業設計_第1頁
青奧倒計時顯示屏畢業設計_第2頁
青奧倒計時顯示屏畢業設計_第3頁
青奧倒計時顯示屏畢業設計_第4頁
青奧倒計時顯示屏畢業設計_第5頁
已閱讀5頁,還剩16頁未讀, 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、摘要本設計主要介紹了一種基于stc89c52單片機微處理芯片與ds1302時鐘芯片和8*8的點陣顯示屏外加ds18b20溫度傳感器組成青奧倒計時電路軟硬件,本設計的硬件主要由單片機最小系統,ds1302時鐘模塊,點陣顯示屏和ds18b20溫度傳感器四個組成,采用的是c語言進行編程,可以精確的顯示年,月,日,十,分,秒,倒計時時間和溫度信息關鍵詞:stc89c52 ; 點陣顯示屏;ds1302;ds18b20;abstractthis design mainly introduces the hardware and software of the youth olympic ganmes co

2、untdowm which is made up of the stc89c52 mcu ,ds1302 clock chip and 16*16 dot matrix display and ds18b20 temperature sensor . the hardware design of this system is made up mcu ,ds1302 clock module ,dot matrix display and ds18b20 temperature sensor , the program adopts c language and it can accuratel

3、y shows the information of the year ,month , day , hour ,minute , second ,countdowm time and temperature .key words: stc89c52 ; dot matrix display screen ; ds1302 ; ds18b20目 錄1引言11.1倒計時牌研究背景及意義12硬件電路設計12.1單片機最小系統22.1.1單片機型號stc89c52簡介22.1.2stc89c52各引腳介紹32.2復位電路設計42.3晶振電路設計42.4ds1302時鐘模塊52.574hc138譯碼器

4、62.6溫度傳感器ds18b2062.774hc595模塊簡介62.8按鍵電路設計72.9點陣顯示模塊設計和驅動73青奧倒計時牌系統軟件程序設計93.1主程序流程圖和主程序103.2延時程序設計103.3溫度傳感器流程圖和程序設計113.4led點陣顯示程序設計133.5利用proteus仿真結果144系統調試155總結176參考文獻187致謝191 引言1.1 倒計時牌研究背景及意義隨著社會科技的不斷發展,人們生活節奏不斷加快。為了提高工作效率,提醒大家注意某些重大事情的開始或者結束(例如 “高考”、“奧運會”等),以便合理的安排事情,倒計時時鐘發揮了越來越大的作用,同時人們對倒計時時鐘的要

5、求不僅計時要準確,而且要求它具有成本低、功能全、可靠性好等特點。倒計時牌研究的成功代表著數字科技領域的入門,它的出現可以衍生更高端應用的開發,例如定時自動報警器、籃球計時器、搶答器等等,因此倒計時牌的研究和擴展是單片機的重要的課題!本次設計就是利用單片機技術開發的青奧倒計時牌,本倒計時牌使用的是點陣顯示屏進行顯示工作的,該系統操作比較簡單、體積比較小,可以增強人們的時間觀念,對一些重要的時間能夠給予人們提醒和警覺,對隨時提醒人們注意把握時間具有重要的作用。加上溫度效果的顯示更加具有實用價值,其性能能夠滿足大部分的需要,可以使我們的開發設計更簡便,因此單片機是我們生活中不可缺少的元件,使我們各個

6、領域都得到了方便。2 硬件電路設計本次設計的硬件電路系統是由單片機最小系統、ds1302時鐘模塊、電源模塊、晶振模塊、復位模塊、74hc138譯碼器、16個點陣模塊、ds18b20溫度傳感器、74hc595移位寄存器等部分組成,每個部分之間互相協作,構成一個統一的整體,實現倒計時溫度顯示功能。系統框圖如圖1所示:74hc138模塊點陣顯示模塊stc89c52ds18b20模塊電源模塊74hc595模塊晶振模塊ds1302模塊復位模塊。圖1:硬件系統框圖2.1 單片機最小系統 單片機最小系統,它也叫做最小應用系統,是一種用最少的元件組成的可工作的單片機系統,對于51系列單片機來說,最小系統一般包

7、括:單片機、晶振電路、復位電路。本設計使用的是stc89c52單片機。 2.1.1 單片機型號stc89c52簡介stc89c52是一款高性能的cmos 8位的單片機,低電壓,具有8k的刻反復擦寫的flash存儲器,與標準mcs-51指令系統和8052產品的引腳互相兼容,在單片機芯片上,擁有一個8位的中央處理器(cpu)和系統可編寫的flash儲存單元,由于將多功能8位cpu和閃爍存儲器組合在單個芯片中,能夠進行1000次的寫或者擦循環,數據可以保存十年。它是一種高效微控制器,從而使得stc89c52為眾多嵌入式控制應用提供有效的解決方案,因此stc89c52單片機在電子行業上廣泛的應用。圖

8、2:stc89c52管腳圖2.1.2 stc89c52各引腳介紹stc89c52具有以下標準功能:可以兼容,mcs51指令系統,8k flashrom可以反復的重擦寫,有三級的加密程序存儲器,具有3個16位定時/計數器,具有低功空閑和掉電模式等性能。stc89c52管腳圖如圖2。p0口:p0口作為輸出口,每位能驅動8個ttl 邏輯電平,對其寫“1”時,引腳作高阻抗輸入。當訪問外部程序或者數據存儲器的時候,p0端口也被作為低8位地址或者數據復用,在這個情況下,p0具有內部上拉電阻。p1口:p1口是一個雙向i/o口,p1的輸出緩沖級可驅動4個邏輯電平。對跑口寫“1”時,由于內部上拉電阻的原因,將會

9、輸出電流。另外,p1.0和p1.1還可以分別作為定時器或者計數器。p2 口:它是具有內部上拉電阻的8位雙向的i/o口,對p2口寫“1”時,通過內部上拉電阻把端口拉高,此時可以作為輸入端口使用,當作為輸入端口使用的時候,被外部拉低的引腳由于內部電阻的原因,會產生輸出電流ip3口:p3口作為一般的i/o接口以外,它還有更重要的第二個功能,它的p3.0: rxd(串行輸出),p3.1 :txd (串行輸出),p3.2 :int0(外部中斷0 ) p3.3:int1(外部中斷1)p3.4:t0(定時器0外部輸入)p3.5:t1(定時器1外部輸入) p3.6:wr(外部數據存儲器寫選通) p3.7:rd

10、(外部數據存儲器讀選通)。ale/:地址鎖存器控制是當訪問外部程序存儲器的時候,鎖存低8位地址的輸出秒沖。在flash編程時候,(prog)引腳也使用作編程輸入脈沖。:程序存儲允許()輸出是外部程序存儲器的讀選通信號,當stc89c52從外部程序存儲器執行外部代碼時,在每個機器周期被激活兩次,而在訪問外部數據存儲器,將跳過兩次信號。/vpp:外部訪問允許,欲使cpu僅訪問外部程序存儲器,端口必須保持低電平(接地)。如果端為高電平,cpu則要執行內部程序存儲器的指令。xtal1:振蕩器反向放大器和內部時鐘發生電路的輸入端。xtal2:振蕩器反向放大器的輸出端。2.2 復位電路設計復位電路的功能是

11、讓單片機從程序起始處重新執行的電路,在復位電路中設計中有上電復位和手動復位兩種模式。復位電路如圖3所示。上電復位工作原理如下:外部電源通過電容c3充電加至rest腳一個短暫的高電平信號,此時信號隨著vcc對電容c3的充電過程逐漸回落,即rest引腳上的高電平持續時間取決于電容c3的充電時間。因此為保證系統能可靠地復位,rest引腳上的高電平必須持續足夠長的時間。手動復位工作原理是在當按下復位按鈕,電容中的電荷被放完后,按照上電復位原理進行復位。圖3:復位電路設計圖2.3 晶振電路設計在本次設計中,單片機使用內部時鐘振蕩方式。晶振電路的作用是產生單片機正常工作時所需要的時鐘信號,電路由兩個22p

12、f的瓷片電容和一個12mhz的晶振組成,并接入到單片機的xtal1和xtal2引腳處,使單片機工作于內部振蕩模式。電路中的兩個電容c1和c10的作用使電路快速起振,提高電路的運行速度。電路晶振電路如圖4所示。圖4:晶振電路設計圖2.4 ds1302時鐘模塊 ds1302時鐘模塊與單片機能進行簡單的使用同步串行的方式進行通信,支持雙電源供電,可以使用外部電源和備用電源,備用電源能夠使時鐘芯片繼續工作,占用引腳少,僅需要用三個接口: 復位,i/o數據線,sclk串行時鐘。stc89c52的p2.2與ds1302的i/o數據線接口相連,p2.1用來輸入ds1302 sclk串行時鐘,p2.3控制ds

13、1302 的復位輸入端,ds1302電路設 計圖如圖5所示。圖5:ds1302電路設計圖ds1302實時時鐘電路可以提供年、月、日、時、分、秒等信息,當某個月小于30天的時候可以自動的調整,并且還具有閏年補償功能;用于高速數據暫存的31x8ram ;2.5v時耗電小于300na;它還具有寬范圍的工作電壓2.05.5v;工業溫度范圍是可以選的,再者它的連線比較簡單,占用的io接口也比較的少,由于這些原因,此次畢業設計所使用的時鐘芯片是ds1302,它能夠更準確的計時。 2.5 74hc138譯碼器74hc138譯碼器也稱做解碼器,譯碼過程實際上是一種翻譯過程,即編碼的逆過程,74hc138引腳兼

14、容低功耗肖特基ttl系列。74hc138譯碼器可接受3位二進制加權地址輸入,并當使能時,能提供8個互斥的低有效輸出,74hc138特有3個使能輸入端:兩個低有效和一個高有效。除非e1和e2置低且e3置高,如果不是,那么74hc138將保持所有輸出為高,利用這種復合使能特性。2.6 溫度傳感器ds18b20ds18b20是一種改進版的智能溫度傳感器,它與傳統的熱敏電阻相比,ds18b20他可以直接讀出被測的溫度,根據實際要求通過簡單的編程實現9到12位的數字值讀數方式并且ds18b20的系統結構更加的簡單,可靠性也很高,只需要一條數據線進行數據傳輸,它在測溫度,傳輸距離和分辨率等方面上比上一代的

15、ds1820有了很大的改進,讓用戶使用更加的方便,效果令人滿意!ds18b20電路設計圖如圖6所示。圖6:ds18b20電路設計圖2.7 74hc595模塊簡介74hc595 是一種漏極開路輸出的移位寄存器,它是可控的三態輸出端,也可以串行輸出控制下一個級聯芯片,它是74系列芯片的一種,它主要的特點是功耗小、速度快、操作簡單,可以很方便的用于對單片機接口進行驅動led的操作。本次設計中,使用74hc595來進行對led的串行驅動,所有的led分為2個一組,直接與74hc595輸出端連接,通過串行控制輸出信號對led進行顯示驅動,最后通過74hc595的級聯操作,這樣的驅動方式比較簡單,電路設計

16、完成之后只要級聯就可以完成。74hc595是帶鎖存功能的三態輸出的8位串行輸入和并行輸出的移位寄存器。由于它自帶鎖存器,所以其數據在移位寄存器中的移位與鎖存器的輸出是獨立的,當數據移位時,可以保持鎖存器輸出的數據不改變,等所有8位數據全部串行輸入完成移位操作后,一次性將數據打入鎖存器中,從而實現并行輸出的同步改變。2.8 按鍵電路設計按鍵電路是用來對系統顯示的時鐘進行復位,模式的選擇,時間的加和減。模式選擇中可以對時間進行設置,倒計時時間進行設置,可以選著手動模式和自動模式。按鍵電路如圖7所示。按鍵電路工作原理如下:當按鍵沒有按下去時,與按鍵連接的單片機接口均為高電平;當按鍵按下去時,單片機該

17、接口端為低電平。在系統工作時,單片機不斷掃描按鍵電路,當檢測到相應端口輸入為低電平時,進行時間按鍵功能的選擇加、減、時鐘的復位和模式選擇。圖7:按鍵電路設計圖2.9 點陣顯示模塊設計和驅動在本次設計中使用了16個8*8 led陣列,從結構上可以知道,每個led模塊它每一列共用一根列線,每一行也是共用一根行線,當相應的行接高電平,列接低電平時,對應的發光二極管被點亮,在顯示過程中,多采用掃描方式,利用人的視覺暫停效應,只要刷新速率不小于25幀每秒,就不會有閃爍的感覺。 圖8:led點陣模塊內部顯示圖我們把行列全部直接在單片機的io口,然后通過分析到的掃描代碼送到總線,我們就可以得顯示的數據,但是

18、我們直接將led點陣的行列端口全部接到89c51單片機上,每個led點陣需要16個io口,本設計使用了16個led點陣顯示的,那就需要16*16個io口,這樣就會照成io口資源的耗盡,系統就會無法擴充,因此,我們在實際應用只是將led點陣的列線接到74hc595移位寄存器上,列驅動圖如圖9.1,至于行掃描信號則是由譯碼器74hc138來選擇控制,行驅動如圖9.2,這樣行和列的控制只使用了單片機上的6個io口,節約了很多io資源。圖9.1列驅動設計圖:9.2行驅動設計圖:3 青奧倒計時牌系統軟件程序設計青奧倒計時牌系統程序由單片機、按鍵程序、顯示程序、左移程序等部分組成。通過c語言編程,軟硬件結

19、合,構成一個青奧倒計時牌系統的整體。系統工作時,首先系統初始化,點陣屏初始化,串口的初始化,然后顯示左移的滾動字幕驗證系統顯示正常,同時時鐘、溫度、倒計時初始化開始計算,接著通過按鈕設置設置時間和模式,模式中可以選著手動或自動模式顯示,自動模式下,顯示時間(年,月,日,時,分、秒),溫度,剩余天數,重復的循環。led點陣顯示程序流程圖如圖10所示。圖10:led點陣顯示程序流程圖3.1 主程序流程圖和主程序本設計的程序部分比較多,主要是通過時鐘芯片對時間的計算和溫度傳感器對溫度的轉換,然后通過595串行輸出,通過led點陣顯示。在主函數中完成這些操作。/*主函數*/void main() wh

20、ile(1) /重復(無限)循環顯示 du1302(); /讀取 秒 分 時 日 月 星期 年read_temp();/讀取溫度 show_word(); /待機顯示按三秒間隔分別顯示年、月日、星期、時分秒。 3.2 延時程序設計延時程序在led電子顯示屏中的主要功能有:延時存在的目的是等一段時間,讓這列顯示的內容在人的眼內產生“視覺暫留”現象。void delayms(void)uchar tempcyc;for(tempcyc=110;tempcyc1;tempcyc-);3.3 溫度傳感器流程圖和程序設計開始 初始化讀取數據寫數據數據轉換輸出結束void delay_18b20(unsi

21、gned int i)/延時1微秒 while(i-);void ds1820rst()/*ds1820復位*/unsigned char x=0;dq = 1; /dq復位delay_18b20(4); /延時dq = 0; /dq拉低delay_18b20(100); /精確延時大于480usdq = 1; /拉高delay_18b20(40); uchar ds1820rd()/*讀數據*/ unsigned char i=0;unsigned char dat = 0;for (i=8;i0;i-) dq = 0; /給脈沖信號dat=1;dq = 1; /給脈沖信號if(dq)dat

22、|=0x80;delay_18b20(10);return(dat);void ds1820wr(uchar wdata)/*寫數據*/unsigned char i=0;for (i=8; i0; i-) dq = 0;dq = wdata&0x01;delay_18b20(10);dq = 1;wdata=1;read_temp()/*讀取溫度值并轉換*/uchar a,b; ds1820rst(); ds1820wr(0xcc);/*跳過讀序列號*/ds1820wr(0x44);/*啟動溫度轉換*/ ds1820rst(); ds1820wr(0xcc);/*跳過讀序列號*/ ds182

23、0wr(0xbe);/*讀取溫度*/ a=ds1820rd();b=ds1820rd();tvalue=b*16+a/16;return(tvalue);3.4 led點陣顯示程序設計led點陣顯示主要通過595驅動其顯示,通過三秒轉換,分別顯示年、月日、星期、時分秒、溫度、距離青奧漢字、剩余天數、if(id=0)&(f=0)|(id=1)/f為三秒轉換顯示 send_data(&timer00); /不顯示if(flicker=1)&(id=1) /閃爍標志為1時不亮,為零時亮 show_pass(); /不顯示一個字show_pass();elsesend_data(&timer2h);

24、/20年 send_data(&timer0h);send_data(&timeryear/16h); /年值 send_data(&timeryear%16h);send_data(&hanzih*2+641); /年字符 send_data(&hanzih*2+640);send_data(&timer0); /不顯示3.5 利用proteus仿真結果利用proteus仿真結果如圖10,led點陣輪流顯示設定的年,月,日,時,分,秒,距離青奧天數,溫度。圖10:proteus仿真圖4 系統調試(一) 靜態調試在系統進行加電之前,首先用萬用表依據硬件電路原理圖仔細檢查連線的正確性,尤其電源的

25、走線、防止電源間的短路或極性錯誤及開路,并重要檢查系統總線是否存在相互之間的短路或與其他信號線的短路。(二) 通電調試接通電源,查看顯示單元的內容是否正常,再按下有關按鍵,是否能夠達到預期目標。如果不能,通過仿真單步運行,查看每一步的運行結果,并對預期現象對程序進行調整。(三) 實物效果圖 通過整個調試,實物效果跟所預期的效果是一樣的。本次設計完成預期的目標。如圖11.1 11.2 和11.3圖11.1圖11.2如圖11.35 總結本次設計的青奧倒計時牌分為硬件電路設計和軟件程序設計兩大模塊。硬件電路設計包括控制系統硬件電路設計和顯示系統硬件電路設計,控制系統硬件電路設計以stc89c52為控

26、制核心,外圍電路包括電源模塊、程序下載模塊、按鍵模塊、晶振電路、溫度模塊、點陣電路模塊等組成部分;顯示系統硬件電路又分為接口電路、列驅動電路、行驅動電路、點陣屏電路等組成部分。軟件程序設計包括按鍵程序、led指示燈程序、靜止顯示程序、左移程序等組成部分??刂葡到y通過排線控制顯示系統顯示漢字等信息,并能使顯示系統上的漢字等信息靜態顯示、左移顯示。本次設計的青奧倒計時按照上述設計思路,能夠實現實時時間,實時溫度,距離青奧開幕的時間的交替顯示。6 參考文獻1 侯向榮,馬永森. 利用單片機串口實現多個led的顯示j. 儀器儀表用戶. 2006(03) 2 眭碧霞. 用單片機串行口實現動態掃描led顯示j. 電子工程師. 2006

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論