《單片機(jī)原理及應(yīng)用》課程設(shè)計電子萬年歷_第1頁
《單片機(jī)原理及應(yīng)用》課程設(shè)計電子萬年歷_第2頁
《單片機(jī)原理及應(yīng)用》課程設(shè)計電子萬年歷_第3頁
《單片機(jī)原理及應(yīng)用》課程設(shè)計電子萬年歷_第4頁
《單片機(jī)原理及應(yīng)用》課程設(shè)計電子萬年歷_第5頁
已閱讀5頁,還剩14頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、單片機(jī)原理及應(yīng)用單片機(jī)原理及應(yīng)用課程設(shè)計課程設(shè)計 題題 目:目: 電子萬年歷電子萬年歷 專專 業(yè):業(yè):電子信息工程技術(shù)電子信息工程技術(shù) 班班 級:級: 姓姓 名:名: 學(xué)學(xué) 號:號: 指導(dǎo)老師:指導(dǎo)老師: 日日 期:期: 成成 績:績: 目錄目錄 摘要摘要 1 1 概述概述 1.11.1 單片機(jī)原理及應(yīng)用簡介單片機(jī)原理及應(yīng)用簡介 1.21.2 設(shè)計目的設(shè)計目的 1.31.3 設(shè)計要求設(shè)計要求 2 2 系統(tǒng)總體方案及硬件設(shè)計系統(tǒng)總體方案及硬件設(shè)計 2.12.1 系統(tǒng)總體方案系統(tǒng)總體方案 2.22.2 硬件電路的總體框圖設(shè)計硬件電路的總體框圖設(shè)計 2.32.3 硬件電路原理圖設(shè)計硬件電路原理圖設(shè)計

2、 3 3 軟件設(shè)計軟件設(shè)計 3.13.1 主程序流程圖設(shè)計主程序流程圖設(shè)計 3.23.2 顯示模塊流程圖顯示模塊流程圖 4 4 課程設(shè)計體會課程設(shè)計體會 5 5 參考文獻(xiàn)參考文獻(xiàn) 6 6 附圖附圖 摘要:本設(shè)計是電子萬年歷。具備三個功能:能顯示:年、月、日、時、分、秒及星期信息,并具有 可調(diào)整日期和時間功能。 我選用的是單片機(jī) at89c51 來實現(xiàn)電子萬年歷的功能。該電子萬年歷能夠成功實現(xiàn)時鐘運行,調(diào)整,顯示 年月日時分秒及星期,溫度等信息。 該電子萬年歷使用 12mhz 晶振與單片機(jī) at89c51 相連接,通過軟件編程的方法實現(xiàn)了以 24 小時為一個周期, 同時顯示小時、分鐘和秒的要求。

3、利用單片機(jī)定時器及計數(shù)器產(chǎn)生定時效果通過編程形成數(shù)字鐘效果,再利用 數(shù)碼管動態(tài)掃描顯示單片機(jī)內(nèi)部處理的數(shù)據(jù)。同時通過端口讀入當(dāng)前外部控制狀態(tài)來改變程序的不同狀態(tài),實 現(xiàn)不同功能。 電子萬年歷設(shè)計與制作可采用數(shù)字電路實現(xiàn),也可以采用單片機(jī)來完成。若用數(shù)字電路完成,所設(shè)計的電路 相當(dāng)復(fù)雜,大概需要十幾片數(shù)字集成塊,其功能也主要依賴于數(shù)字電路的各功能模塊的組合來實現(xiàn),焊接的過程 比較復(fù)雜,成本也非常高。若用單片機(jī)來設(shè)計制作完成,由于其功能的實現(xiàn)主要通過軟件編程來完成,這樣一來 就降低了硬件電路的復(fù)雜性,從而使得其成本降低,更適合我們大學(xué)生自主研發(fā)。所以在該設(shè)計與制作中我選用 了單片機(jī) at89c51

4、。另外, 單片機(jī) at89c51 的指令系統(tǒng)和引腳與 at89c51 完全兼容,片內(nèi)有 128b 的 ram、32 條 i/o 口線、2 個 16 位定時計數(shù)器、5 個中斷源、一個全雙工串行口等。 因此,采用單片機(jī) at89c51 原理制作的電子萬年歷,不僅僅在原理上能夠成功實現(xiàn)計時等功能,也更經(jīng) 濟(jì),更適用,更符合我們實際生活的需要,對我們大學(xué)生來說也更加有用。 1 1 概述概述 1.1 單片機(jī)原理及應(yīng)用簡介 隨著國內(nèi)超大規(guī)模集成電路的出現(xiàn),微處理器及其外圍芯片有了迅速的發(fā)展。集成技術(shù)的最新發(fā)展之一是 將 cpu 和外圍芯片,如程序存儲器、數(shù)據(jù)存儲器、并行、串行 i/o 口、定時/計數(shù)器、中

5、斷控制器及其他控制 部件集成在一個芯片之中,制成單片計算機(jī)(single-chip microcomputer) 。而近年來推出的一些高檔單片機(jī) 還包括有許多特殊功能單元,如 a/d、d/a 轉(zhuǎn)換器、調(diào)制解調(diào)器、通信控制器、鎖相環(huán)、dma、浮點運算單元等。 因此,只要外加一些擴(kuò)展電路及必要的通道接口就可以構(gòu)成各種計算機(jī)應(yīng)用系統(tǒng),如工業(yè)控制系統(tǒng)、數(shù)據(jù)采集 系統(tǒng)、自動測試系統(tǒng)、萬年歷電子表等。 單片機(jī)的出現(xiàn),并在各個技術(shù)領(lǐng)域中得到如此迅猛的發(fā)展,與單片機(jī)構(gòu)成計算機(jī)應(yīng)用系統(tǒng)所形成的下述特 點有關(guān): 1、單片機(jī)構(gòu)成的應(yīng)用系統(tǒng)有較大的可靠性。這些可靠性的獲得除了依靠單片機(jī)芯片本身的高可靠性以及 應(yīng)用有最

6、少的聯(lián)接外,還可以方便地采用軟、硬件技術(shù)。 2、系統(tǒng)擴(kuò)展、系統(tǒng)配置較典型、規(guī)范,容易構(gòu)成各種規(guī)模的應(yīng)用系統(tǒng),應(yīng)用系統(tǒng)有較高的軟、硬件利用 系數(shù)。 3、由于構(gòu)成的應(yīng)用系統(tǒng)是一個計算機(jī)系統(tǒng),相當(dāng)多的測、控功能由軟件實現(xiàn),故具有柔性特征,不須改 變硬件系統(tǒng)就能適當(dāng)?shù)馗淖兿到y(tǒng)功能。 4、有優(yōu)異的性能、價格比。 可以說,對于廣大的電子應(yīng)用專業(yè)技術(shù)人員,目前國和內(nèi)國外面臨的單片機(jī)應(yīng)用技術(shù),如同 60年代面臨晶體管技術(shù),70 年代面臨數(shù)字集成電路一樣。單片機(jī)和可編程門陣列相結(jié)合,構(gòu)成新一代電子應(yīng) 用技術(shù)是不可能回避的一項新型的工程應(yīng)用技術(shù)。 單片機(jī)是微型計算機(jī)的一個重要分枝,單片機(jī)是把中央處理器、隨機(jī)存儲器

7、、只讀存儲器、定時器/計數(shù) 器、并行接口接口、串行接口、a/d 轉(zhuǎn)換器等主要計算機(jī)部件,集中在一塊集成電路芯片上。雖然只是一個芯 片,但從功能上它就相當(dāng)于一臺完整的微機(jī)。隨著科學(xué)技術(shù)的迅猛發(fā)展,單片計集成度高、體積小、運算速度 快、功耗低、運行可靠、價格低廉等諸多優(yōu)點,越來越顯現(xiàn)出來。目前可以說單片機(jī)已經(jīng)滲透到我們的生活的 各個領(lǐng)域,在工業(yè)方面:像過程控制、數(shù)據(jù)采集,機(jī)電一體化、智能化儀器儀表,特別在軍事武器控制方面尤 為突出。在日常生活方面,我們使用彩電、洗衣機(jī)、電冰箱,錄放機(jī)、vcd、照相機(jī)、手機(jī)、高級定時鬧鐘以 及公共汽車上的報站器等等可以說舉不勝舉。 1.21.2 設(shè)計目的設(shè)計目的 1

8、、熟悉 mcs-51 定時/計數(shù)器、中斷的應(yīng)用。 2、熟悉時鐘時、分、秒計時方法,掌握編程技巧。 3、掌握鍵盤的基本工作原理,鍵的識別,鍵抖動和重鍵問題的解決,鍵盤工作方式和鍵盤程序的編程。 4、掌握七段碼 led 顯示器的結(jié)構(gòu),七段碼 led 顯示器的工作方式和顯示程序的編程。 5、掌握串行通信程序的編寫。 1.3.設(shè)計要求設(shè)計要求 1、設(shè)計實現(xiàn)電子萬年歷的硬件原理圖。 2、用 t0 定時器,產(chǎn)生時鐘信號,設(shè)計定時中斷程序。3、通過按鍵切換,分別顯示時、分、秒,設(shè)計顯示程 序。 4、可用鍵盤進(jìn)行校對時間,設(shè)計鍵盤程序。5、當(dāng)前時間可通過串口在其他單片機(jī)系統(tǒng)上顯示。 at89c51 的引腳圖及

9、部分引腳功能 rst:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時,要保持 rst 腳兩個機(jī)器周期的高電平時間。 ale/prog:當(dāng)訪問外部存儲器時,地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。 /psen:外部程序存儲器的選通信號。在由外部程序存儲器取指期間,每個機(jī)器周期兩次/psen 有效。 /ea/vpp:當(dāng)/ea 保持低電平時,則在此期間外部程序存儲器(0000 h- ffffh),不管是否有內(nèi) 部程序存儲器。 xtal1:反向振蕩放大器的輸入及內(nèi)部時鐘工作電路的輸入。 xtal2:來自反向振蕩器的輸出。 口管腳備選功能 p1.0p1.78 位雙向口 p2.0p2.78 位雙向口 p3.0p3.7

10、8 位雙向口 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外部數(shù)據(jù)存儲器寫選通 p3.7 /rd外部數(shù)據(jù)存儲器讀選通 2 系統(tǒng)總體方案及硬件設(shè)計系統(tǒng)總體方案及硬件設(shè)計 2.1 系統(tǒng)總體方案系統(tǒng)總體方案 我選用的是單片機(jī)(at89c51)來實現(xiàn)電子萬年歷的功能。共具備兩個功能: (1)顯示年月日及分秒信息 (2)具有可調(diào)整日期和時間功能。 1 微處理器 在設(shè)計過程中我使用 12mhz 晶振與單片機(jī) at89c51 相連接,通過軟件

11、編程的方法實現(xiàn)了以 24 小時為一個周期同時顯示小時,分鐘和秒的要求,該定時鬧鐘設(shè)有九個按鍵,使之具備了校時、 定時功能。利用單片機(jī)定時器及計數(shù)器產(chǎn)生定時效果通過編程形成數(shù)字鐘效果,再利用數(shù)碼管動 態(tài)掃描顯示單片機(jī)內(nèi)部處理的數(shù)據(jù)。同時通過端口讀入當(dāng)前外部控制狀態(tài)來改變程序的不同狀態(tài), 實現(xiàn)不同功能。 2.2 硬件電路的總體框圖設(shè)計硬件電路的總體框圖設(shè)計 該設(shè)計的硬件電路的總體框圖如圖所示 2.3 硬件電路原理圖設(shè)計硬件電路原理圖設(shè)計 該萬年歷是以單片機(jī)該萬年歷是以單片機(jī) 89s52 為核心來完成的。為核心來完成的。 在硬件電路中采用 p0 口作為 6 位液晶顯示電路的驅(qū)動接口,這是由于 p0

12、口輸出驅(qū)動電路工作處 于開漏狀態(tài),它的驅(qū)動能力強(qiáng),故只需外接上拉電阻便可以把 led 數(shù)碼管點亮。因為共陰的 led 數(shù) 碼管它的驅(qū)動電流是分開的,在單片機(jī)進(jìn)行動態(tài)掃描的時候不會影響彼此的電流,故該電路中的 8 位 led 數(shù)碼管均用共陽陰極的數(shù)碼管。8 位 led 數(shù)碼管的位選線分別由相應(yīng)的 p2. 0p2. 5 控 制,而將其相應(yīng)的段選線并聯(lián)在一起,由一個 8 位的 i/o 口控制,即 p0 口。p3 口與八個校時按鍵 相連,以成功實現(xiàn)萬年歷校時的功能。主控制原理圖: 3.軟件設(shè)計軟件設(shè)計 程序框圖:程序框圖: 開始 初始化 按鍵掃描 有鍵按下 按鍵處理,確定模式 時間顯示模式 根據(jù)按鍵狀

13、態(tài)顯示相應(yīng)時間段 時間修改模式 根據(jù)按鍵狀態(tài)修改時間 no no yes yes 圖圖 1 主程序主程序 流程框圖流程框圖 開始 裝入計數(shù)初值(50ms 中斷) 計數(shù)標(biāo)志 num+ num=20? num=0 時間加 1 秒 結(jié)束 圖圖 2 定時中斷流程框圖定時中斷流程框圖 no yes 開始 清零按鍵狀態(tài)位 按鍵為低電平? 延時,去抖動 按鍵為低電平? 按鍵為低高平? 有按鍵,置按鍵狀態(tài) yes yes 結(jié)束 圖圖 3 按鍵掃描流程框圖按鍵掃描流程框圖 no no yes 清零按鍵狀態(tài) 程序中使用到了 t0,t1 和串口中斷,p0,p2 口為 led 的輸出數(shù)據(jù)口,p32,p33,p34 分

14、別為時分 秒轉(zhuǎn)換,時間校驗和時間停止位 (一):主機(jī)程序:(一):主機(jī)程序: org 0000h ljmp main org 000bh ljmp time org 0023h ljmp chuanxing org 0030h main: setb p3.2 setb p3.3 setb p3.7 setb p3.5 mov pcon,#00h mov scon,#01010000b mov tmod,#21h mov tl0,#0b0h mov th0,#3ch mov th1,#0cch ;產(chǎn)生 600 波特率 mov tl1,#0cch mov r5, #20 ;20 次以達(dá)到 1s 的

15、計時 mov r4,#3 ;切換標(biāo)志位 mov r6,#0ffh ;恢復(fù)暫停標(biāo)志 mov r7,#1 mov r3,#0ffh ;暫停標(biāo)志 mov 50h,#0 ;存放時分秒的數(shù)據(jù)空間地址 mov 51h,#0 mov 52h,#0 mov 53h,#0 mov 54h,#0 mov 55h,#0 mov 60h,#0ffh;串性發(fā)送標(biāo)志 mov 61h,#0ffh mov 62h,#0ffh mov 70h,#0 ;存放串行接受的數(shù) mov 71h,#0 ;接受從機(jī)發(fā)送的切換標(biāo)志 setb ea setb es setb et0 setb tr0 setb tr1 start: call k

16、ey mov a,70h cjne a,#0f1h,qiehuan;是否為串性標(biāo)接受到的切換志 mov 70h,#0 mov 71h,#1 ljmp xianshi qiehuan: cjne a,#0f2h,qiehuan1 mov 70h,#0 mov 71h,#2 ljmp xianshi qiehuan1: cjne a,#0f3h,qiehuan2 mov 70h,#0 mov 71h,#3 ljmp xianshi qiehuan2: mov a,r0 jnz xianshi mov a,70h cjne a,#0f6h,qiehuan3;是否為串性接受到的恢復(fù)暫停標(biāo)志 mov r

17、6,#0 ljmp stop qiehuan3: mov a,r3 jz stop1 mov a,70h cjne a,#0f7h,xianshi mov 70h,#0 mov r6,#0ffh sjmp xianshi stop1: ljmp stop ;51h, 50h miao ;53h,52h fen ;55h,54h shi xianshi: ;顯示子程序 mov dptr,#segtab ;顯示秒 mov a,71h cjne a,#1,bingxing1 sjmp bingxing2 bingxing1: cjne r4,#3 ,fen bingxing2: mov a,51h

18、movc a,a+dptr mov p0,a mov a,50h movc a,a+dptr mov p2,a mov a,60h ;串行發(fā)送秒 jnz biaozhi clr ti mov a,50h mov sbuf,a call t10ms jb ti ,$ mov a,51h mov sbuf,a jb ti,$ mov 60h,#0ffh ;call t10ms biaozhi: ljmp start fen: ;顯示分 mov a,71h cjne a,#2,bingxing3 sjmp bingxing4 bingxing3: cjne r4,#2 ,shi bingxing4:

19、 mov a,53h movc a,a+dptr mov p0,a mov a,52h movc a,a+dptr mov p2,a mov a,61h ;串行發(fā)送分 jnz biaozhi1 clr ti mov a,52h mov sbuf,a jb ti ,$ call t10ms mov a,53h mov sbuf,a jb ti,$ mov 60h,#0ffh ;call t10ms biaozhi1: ;call t10ms ljmp start shi: ;顯示時 mov a,71h cjne a,#3,bingxing5 sjmp bingxing6 bingxing5: c

20、jne r4,#1,shi1 bingxing6: mov a,55h movc a,a+dptr mov p0,a mov a,54h movc a,a+dptr mov p2,a mov a,62h ;串行發(fā)送時? jnz biaozhi2 clr ti mov a,54h mov sbuf,a jb ti ,$ call t10ms mov a,55h mov sbuf,a jb ti,$ mov 60h,#0ffh ;call t10ms biaozhi2: ;call t10ms shi1: ljmp start stop: ;暫停子程序 mov a,r6 jz xianshi1 l

21、jmp start xianshi1: mov a,70h cjne a,#0f4h,aa mov 70h,#0 ljmp num1 aa: mov a,r1 jnz num1 mov a,70h cjne a,#0f5h,bb mov 70h,#0 ljmp num2 bb: mov a,r2 jnz num2 ljmp start num1: ;高位累加 cjne r4,#3,fen1 ;秒 inc 51h mov a,51h cjne a,#6 ,qingling0 mov 51h,#0 qingling0: ljmp xianshi fen1: ;分 cjne r4,#2,shi11

22、inc 53h mov a,53h cjne a,#6 ,qingling1 mov 53h,#0 qingling1: ljmp xianshi ;時 shi11: cjne r4,#1,qingling2 inc 55h mov a,55h cjne a,#6 ,qingling2 mov 55h,#0 qingling2: ljmp xianshi num2: ;低位累加 cjne r4,#3,fen2 ;秒 inc 50h mov a,50h cjne a,#10,qingling3 mov 50h,#0 qingling3: ljmp xianshi fen2: cjne r4,#2

23、,shil2 ;分 inc 52h mov a,52h cjne a,#10 ,qingling4 mov 52h,#0 qingling4: ljmp xianshi ;時 shil2: cjne r4,#1,qingling5 inc 54h mov a,54h cjne a,#10 ,qingling5 mov 54h,#0 qingling5: ljmp xianshi time: ;中斷子程序 mov a,r6 jnz fanhui11 reti fanhui11: djnz r5,next mov r5,#20 inc 50h mov a,60h cpl a mov 60h,a m

24、ov a,50h cjne a,#10,next inc 51h mov 50h,#0 mov a,51h cjne a,#6,next inc 52h mov a,61h cpl a mov 61h,a mov 51h,#0 mov a,52h cjne a,#10,next inc 53h mov 52h,#0 mov a,53h cjne a,#6,next inc 54h mov a,62h cpl a mov 62h,a mov 53h,#0 mov a,54h cjne a,#10,next inc 55h mov 54h,#0 mov a,55h cjne a,#6,next m

25、ov 55h,#0 ;重裝初值 next: ljmp fanhui1 key ;鍵盤掃描子程序 p3.2 切換 p3.3 十位加 p3.5 暫停 p3.7 個位加 mov r0,#0 mov r1,#0 mov r2,#0 jb p3.2, rel1 call t10ms jnb p3.2,fanhui ;第一個鍵按下子程序 mov r0,#1 mov p1,#0feh dec r4 mov a,r4 jnz rel5 mov r4,#3 rel5: ljmp t10ms rel1: ;第二個鍵按下子程序 jb p3.3,rel2 call t10ms jnb p3.3 ,fanhui mov

26、 r1,#1 ljmp fanhui ;第三個鍵按下子程序 rel2: jb p3.7,rel3 call t10ms jnb p3.7 ,fanhui mov r2,#1 ljmp fanhui ;第四個鍵按下子程序 rel3: jb p3.5,fanhui call t10ms jnb p3.5 ,fanhui mov a,r3 cpl a mov r3,a mov a,r6 cpl a mov r6,a ljmp fanhui t10ms: ;十毫秒延時程序 push 50h push 51h mov 50h,#0ffh loop1: mov 51h,#0ffh nop loop2: nop djnz 51h,loop2 djnz 50h,loop1 pop 51h pop 50h fanhui: ret fanhui1: mov tl0,#0b0h mov th0,#3ch reti ;查表段 seg

溫馨提示

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

評論

0/150

提交評論