版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、<p> 《接口及控制技術(shù)》課程設(shè)計(jì)報告</p><p> 課程設(shè)計(jì)題目: 秒表 </p><p> 姓 名: </p><p> 專業(yè)班級: </p><p> 指導(dǎo)教師:
2、 </p><p> 成 績: </p><p> 時 間: 2010-12-10 </p><p><b> 一、設(shè)計(jì)要求</b></p><p> 用AT89C51設(shè)計(jì)一個2位的LED數(shù)碼顯示作為“秒表”:顯示時間
3、為00—99秒,每秒自動加1,另設(shè)計(jì)一個“開始”鍵和一個“復(fù)位”鍵。</p><p><b> 二、實(shí)驗(yàn)原理</b></p><p> 題目難點(diǎn)在于通過對鍵盤的掃描對時鐘的走時/停止進(jìn)行控制,項(xiàng)目采用定時器T0作為計(jì)時器,每10ms發(fā)生一次中斷,每100次中斷加1s。在此期間,如“開始”按鍵按下,程序方將TR0置為1,從而開啟中斷,時鐘開始走時;如“復(fù)位”按鍵按下
4、,程序?qū)R0置為0,同時將存儲時間的變量清零,從而中斷停止,并實(shí)現(xiàn)復(fù)位。</p><p> 本題目采用專用數(shù)碼管顯示控制芯片MAX7219。MAX7219是美國MAXIM公司生產(chǎn)的串行輸入/輸出共陰極顯示驅(qū)動器,該芯片最多可驅(qū)動8位7段數(shù)字LED顯示器或個LED和條形圖顯示器。其引腳圖及引腳功能參見有關(guān)參考資料。</p><p><b> 三、實(shí)驗(yàn)?zāi)康?lt;/b>&
5、lt;/p><p> 1、 通過本次課程設(shè)計(jì)加深對單片機(jī)課程的全面認(rèn)識復(fù)習(xí)和掌握,對單片機(jī)課程的應(yīng)用進(jìn)一步的了解。</p><p> 2、 掌握定時器、外部中斷的設(shè)置和編程原理。</p><p> 3、 通過此次課程設(shè)計(jì)能夠?qū)纹瑱C(jī)軟硬件結(jié)合起來,對程序進(jìn)行編輯,校驗(yàn)。</p><p><b> 四、意義</b>&l
6、t;/p><p> 該實(shí)驗(yàn)通過單片機(jī)的定時器/計(jì)數(shù)器定時和計(jì)數(shù)原理,設(shè)計(jì)簡單的計(jì)時器系統(tǒng),擁有正確的計(jì)時、暫停、清零功能,并同時可以用數(shù)碼管顯示,在現(xiàn)實(shí)生活中應(yīng)用廣泛,具有現(xiàn)實(shí)意義。</p><p><b> 五、實(shí)驗(yàn)內(nèi)容</b></p><p> 用AT89C51設(shè)計(jì)一個2位LED數(shù)碼顯示“秒表”,顯示時間為00~99秒,每秒自動加一。另設(shè)
7、計(jì)一個“開始”K1按鍵和一個“復(fù)位”K2按鍵。按鍵K1同時具有“暫停”功能。</p><p> 按鍵說明:按“開始”K1按鍵,開始計(jì)數(shù),數(shù)碼管顯示從00開始每秒自動加一;再次按K1按鍵,系統(tǒng)暫停計(jì)數(shù),數(shù)碼管顯示當(dāng)時的計(jì)數(shù);按“復(fù)位”按鍵,系統(tǒng)清零,數(shù)碼管顯示00。</p><p><b> 六、電路原理仿真圖</b></p><p> 將
8、硬件連線按上圖所示連接,該實(shí)驗(yàn)要求進(jìn)行計(jì)時并在數(shù)碼管上顯示時間,則可利用DVCC系列單片機(jī)微機(jī)仿真實(shí)驗(yàn)系統(tǒng)中的芯片AT89C51中的P1.0管腳做為外部中斷0的入口地址,并實(shí)現(xiàn)“開始”按鍵的功能;將P3.3做為外部中斷1的入口地址,并實(shí)現(xiàn)“清零”按鍵的功能.;定時器T0作為每秒加1的定時器。其中“開始”K1按鍵按下一次(由上向下?lián)埽r開始計(jì)時,當(dāng)再次按下K1按鍵時,計(jì)時器計(jì)數(shù)暫停;“清零”K2按鍵按下一次時數(shù)碼管清零,此時若再撥“開始”
9、按鍵則又可重新開始計(jì)時。</p><p><b> 七、程序框</b></p><p> 1、 主程序流程圖 2、 加一子程序流程圖</p><p> 3、 INT0中斷子程序 </p><p> 4、數(shù)碼顯
10、示流程圖 5、 定時器T0子程序</p><p><b> 八、實(shí)驗(yàn)程序</b></p><p> ?。?*****************************************************************</p><p> ; 設(shè)計(jì)選題:秒表系統(tǒng)設(shè)計(jì)
11、</p><p> ; 描述: 8位LED數(shù)碼顯示"秒表",顯示時間為00~99秒,每秒自動加1,</p><p> ; 一個"開始、暫停"鍵,一個"復(fù)位"鍵。</p><p> ; 調(diào)用子程序:暫停鍵子程序,計(jì)時鍵子程序,清0鍵子程序,</p><p>
12、 ; 顯示子程序,定時子程序</p><p> ?。凰锰厥饧拇嫫鳎杭拇嫫鰽,寄存器C</p><p> ??;所用中斷:外部中斷INT0,定時器T0</p><p> ??;***************************************************************************</p>
13、<p><b> 程序仿真模擬</b></p><p><b> 程序:</b></p><p> dspbuf equ 30h</p><p> msec equ 40h</p><p> sec equ 41h</p>
14、<p> min equ 42h</p><p> weibit 7fh</p><p> org 0000h</p><p> ajmp main</p><p> org 0003h</p><p> clr ex0</p>
15、<p><b> reti</b></p><p> org 000bh</p><p> mov th0,#high(65536-5000)</p><p> mov tl0,#low(65536-5000)</p><p> ajmp toint</p>
16、<p> org 0013h</p><p> ljmpdoint1</p><p> org 001bh</p><p> clr et1</p><p><b> reti</b></p><p> org 0023h</p&g
17、t;<p> clr es</p><p><b> reti</b></p><p><b> main:</b></p><p> acall toinit;處置 </p><p><b> clr wei</b></p>
18、<p> tiao1: mov sec,#0</p><p> mov msec,#0</p><p> setb et0 ;開啟定時中斷</p><p> setb ex1</p><p> setb ea ;定時器初始化
19、結(jié)束,下面循環(huán)顯示即可</p><p><b> mainloop:</b></p><p> jbc 7fh,tiao1</p><p> acall readkey</p><p> acall chaizi</p><p> acall display</
20、p><p> acall anykey</p><p> ajmp mainloop</p><p><b> chaizi:</b></p><p> mov r0, #dspbuf</p><p> mov a, msec</p><p>
21、 acall hextobcd</p><p> mov r0, #dspbuf+2</p><p> mov a, sec</p><p> acall hextobcd1</p><p><b> ret</b></p><p><b> hex
22、tobcd:</b></p><p><b> mov b,#10</b></p><p><b> div ab</b></p><p><b> mov @r0,b</b></p><p><b> inc r0</b></p
23、><p><b> mov @r0,a</b></p><p><b> ret</b></p><p> hextobcd1:</p><p><b> mov b,#10</b></p><p><b> div ab</b&g
24、t;</p><p><b> mov43h,a</b></p><p><b> mov a,b</b></p><p> adda,#10 </p><p><b> mov @r0,a</b></p><p><b> mo
25、va,43h</b></p><p><b> inc r0</b></p><p><b> mov @r0,a</b></p><p><b> ret</b></p><p><b> display:</b></p>
26、;<p> mov r0,#dspbuf</p><p> mov r2,#11111110b</p><p><b> dspnext:</b></p><p> mov dptr,#zim0</p><p> mov a,@r0 </p><p> movc a,@a
27、+dptr</p><p><b> mov p2,r2</b></p><p><b> ;CPL A</b></p><p><b> mov p0,a</b></p><p> acall delay</p><p><b>
28、mov a,r2</b></p><p><b> rl a</b></p><p><b> mov r2,a</b></p><p><b> inc r0</b></p><p> jb acc.4,dspnext</p><p&g
29、t;<b> ret</b></p><p><b> delay:</b></p><p><b> mov r7,#1</b></p><p> l1: mov r6,#1</p><p> l0: mov r5,#250</p><
30、;p><b> djnz r5,$</b></p><p> djnz r6,l0</p><p> djnz r7,l1</p><p><b> ret</b></p><p> toinit: </p><p> mov tmod,#000000
31、01b</p><p> mov th0,#high(65536-5000)</p><p> mov tl0,#low(65536-5000)</p><p><b> ret</b></p><p><b> toint: </b></p><p><b
32、> inc msec </b></p><p> mov a,msec</p><p> cjne a,#80,tointexit;未加滿80退出</p><p> mov msec,#00h</p><p><b> inc sec</b></p><p><b
33、> mov a,sec</b></p><p> cjne a,#100,tointexit;秒沒到100退出</p><p> mov sec,#00h</p><p> tointexit:</p><p><b> reti</b></p><p><b&g
34、t; anykey: </b></p><p> mov p1,#0ffh</p><p><b> mov a,p1</b></p><p><b> cpl a</b></p><p><b> ret </b></p><p>
35、;<b> readkey:</b></p><p> acall anykey</p><p> jz readkeyexit</p><p> acall display</p><p> acall anykey</p><p> jz readkeyexit</p>
36、<p> jnb p1.0,gn1</p><p> readkeyexit:ret </p><p> gn1: cpl tr0 </p><p><b> exit1:</b></p><p> w2: acall chaizi<
37、;/p><p> acall display </p><p> jnb p1.0,w2</p><p><b> ret</b></p><p> gn2: clr tr0</p><p> gn3: setb tr0</p><p><b>
38、exit2:</b></p><p> w3: acall chaizi</p><p> acall display</p><p> jnb p0.2,w3</p><p><b> ret</b></p><p> doint1:setb wei</p>
39、<p><b> reti</b></p><p> zim0:db 3fh,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh,0bfh,86h,0dbh,0cfh,0e6h,0edh,0fdh,87h,0ffh,0efh</p><p><b> end</b></p><p>
40、 九、課程設(shè)計(jì)心得體會</p><p> 認(rèn)真審題,看懂題目的要求!選擇適當(dāng)?shù)恼n題,不益太簡單或者太難。做到既能把課題完成又能鍛煉自己的能力!</p><p> 根據(jù)課題要求,復(fù)習(xí)相關(guān)的知識,查詢相關(guān)的資料。</p><p> 根據(jù)實(shí)驗(yàn)條件,找到適合的方案,找到需要的元器件及工具,準(zhǔn)備實(shí)驗(yàn)。</p><p> 根據(jù)課程設(shè)計(jì)的要求和自
41、己所要增加的功能寫好程序流程圖,在程序流程圖的基礎(chǔ)上,根據(jù)芯片的功能寫出相應(yīng)的程序。然后再進(jìn)行程序調(diào)試和相應(yīng)的修改,以達(dá)到能夠?qū)崿F(xiàn)所要求的功能的目的。</p><p> 還要根據(jù)實(shí)驗(yàn)的實(shí)際情況,添加些額外程序來使系統(tǒng)更加的穩(wěn)定,如開關(guān)的消震蕩(采用延遲)。</p><p> 程序要盡量做到由各個子程序組成,在有些程序后面最好加注釋,這樣在程序出錯的檢查過程中可以更容易查找的到,也更簡潔
42、,更明白易懂。</p><p> 該實(shí)驗(yàn)的程序可以參考DVCC系列單片機(jī)微機(jī)仿真實(shí)驗(yàn)系統(tǒng)實(shí)驗(yàn)指導(dǎo)書中的串并轉(zhuǎn)換實(shí)驗(yàn),也可自己根據(jù)自己熟悉的方法來編程。</p><p> 在設(shè)計(jì)控制開關(guān)時,注意2個中斷的打開和關(guān)閉的先后順序,否則就會出錯。</p><p> 這次的單片機(jī)課程設(shè)計(jì)重點(diǎn)是理論與實(shí)際的相結(jié)合。不再只讀書了。</p><p>
43、 該設(shè)計(jì)從頭到尾都要自己參與,熟悉了對整個設(shè)計(jì)的過程,更系統(tǒng)的鍛煉了自己。</p><p><b> 十、參考文獻(xiàn)</b></p><p> 1、DVCC系列單片機(jī)微機(jī)仿真實(shí)驗(yàn)系統(tǒng)實(shí)驗(yàn)指導(dǎo)書</p><p> 2、蘇家健等編的《單片機(jī)原理及應(yīng)用技術(shù)》 高等教育出版社 2004年11月</p><p> 3、張義
溫馨提示
- 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 單片機(jī)秒表課程設(shè)計(jì)
- 單片機(jī)秒表課程設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)---秒表
- 單片機(jī)秒表課程設(shè)計(jì)
- 秒表(單片機(jī)課程設(shè)計(jì))
- 單片機(jī)秒表單片機(jī)課程設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)---秒表設(shè)計(jì)
- 單片機(jī)數(shù)字秒表課程設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)-數(shù)字秒表
- 單片機(jī)課程設(shè)計(jì)-數(shù)字秒表
- 基于單片機(jī)的秒表設(shè)計(jì)單片機(jī)課程設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)報告---單片機(jī)秒表系統(tǒng)設(shè)計(jì)
- 單片機(jī)秒表課程設(shè)計(jì)報告
- 單片機(jī)課程設(shè)計(jì)--電子秒表
- 單片機(jī)簡易秒表課程設(shè)計(jì)
- 單片機(jī)秒表的課程設(shè)計(jì)
- 單片機(jī)秒表系統(tǒng)課程設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)——電子秒表
- 單片機(jī)秒表設(shè)計(jì)課程設(shè)計(jì)報告
- 單片機(jī)課程設(shè)計(jì)報告-秒表設(shè)計(jì)
評論
0/150
提交評論