單片機秒表課程設(shè)計_第1頁
單片機秒表課程設(shè)計_第2頁
單片機秒表課程設(shè)計_第3頁
單片機秒表課程設(shè)計_第4頁
單片機秒表課程設(shè)計_第5頁
已閱讀5頁,還剩30頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、沈 陽 工 程 學(xué) 院課 程 設(shè) 計設(shè)計題目: 電子秒表程序設(shè)計 系 別 自動控制工程系 班級 學(xué)生姓名 學(xué)號 指導(dǎo)教師 職稱 教授 起止日期:2013年 1 月 7日起2013 年 1 月 18日止 沈陽工程學(xué)院課程設(shè)計任務(wù)書課程設(shè)計題目: 電子秒表程序設(shè)計 系 別 自動控制工程系 班級 學(xué)生姓名 學(xué)號 指導(dǎo)教師 呂勇軍 職稱 教授 課程設(shè)計進行地點: f座422 任 務(wù) 下 達 時 間: 13年 1月7日起止日期: 13年1月7日起至13年1月18日止教研室主任 年 月 日批準1.設(shè)計主要內(nèi)容及要求;編寫電子秒表程序。要求:1)具有秒表基本功能。 2)顯示最小數(shù)為0.1秒。 3)能夠進行多

2、路計數(shù)并分別顯示。2.對設(shè)計論文撰寫內(nèi)容、格式、字數(shù)的要求;(1).課程設(shè)計論文是體現(xiàn)和總結(jié)課程設(shè)計成果的載體,一般不應(yīng)少于3000字。(2).學(xué)生應(yīng)撰寫的內(nèi)容為:中文摘要和關(guān)鍵詞、目錄、正文、參考文獻等。課程設(shè)計論文的結(jié)構(gòu)及各部分內(nèi)容要求可參照沈陽工程學(xué)院畢業(yè)設(shè)計(論文)撰寫規(guī)范執(zhí)行。應(yīng)做到文理通順,內(nèi)容正確完整,書寫工整,裝訂整齊。(3).論文要求打印,打印時按沈陽工程學(xué)院畢業(yè)設(shè)計(論文)撰寫規(guī)范的要求進行打印。(4). 課程設(shè)計論文裝訂順序為:封面、任務(wù)書、成績評審意見表、中文摘要和關(guān)鍵詞、目錄、正文、參考文獻。3.時間進度安排;順序階段日期計 劃 完 成 內(nèi) 容備注11月7日教師講解題

3、目,學(xué)生查閱相關(guān)資料21月8日查閱相關(guān)資料、進行方案論證31月9日確定多路計數(shù)和顯示方法41月10、11、14日編寫程序51月15、16日調(diào)試程序61月17日撰寫論文71月18日論文答辯沈 陽 工 程 學(xué) 院 電子秒表 課程設(shè)計成績評定系(部):班級: 學(xué)生姓名: 指 導(dǎo) 教 師 評 審 意 見評價內(nèi)容具 體 要 求權(quán)重評 分加權(quán)分調(diào)研論證能獨立查閱文獻,收集資料;能制定課程設(shè)計方案和日程安排。0.15432工作能力態(tài)度工作態(tài)度認真,遵守紀律,出勤情況是否良好,能夠獨立完成設(shè)計工作, 0.25432工作量按期圓滿完成規(guī)定的設(shè)計任務(wù),工作量飽滿,難度適宜。0.25432說明書的質(zhì)量說明書立論正確

4、,論述充分,結(jié)論嚴謹合理,文字通順,技術(shù)用語準確,符號統(tǒng)一,編號齊全,圖表完備,書寫工整規(guī)范。0.55432指導(dǎo)教師評審成績(加權(quán)分合計乘以12) 分加權(quán)分合計指 導(dǎo) 教 師 簽 名: 年 月 日評 閱 教 師 評 審 意 見評價內(nèi)容具 體 要 求權(quán)重評 分加權(quán)分查閱文獻查閱文獻有一定廣泛性;有綜合歸納資料的能力0.25432工作量工作量飽滿,難度適中。0.55432說明書的質(zhì)量說明書立論正確,論述充分,結(jié)論嚴謹合理,文字通順,技術(shù)用語準確,符號統(tǒng)一,編號齊全,圖表完備,書寫工整規(guī)范。0.35432評閱教師評審成績(加權(quán)分合計乘以8)分加權(quán)分合計評 閱 教 師 簽 名: 年 月 日課 程 設(shè)

5、計 總 評 成 績分 摘 要單片機是一種集成在電路芯片,是采用超大規(guī)模集成電路技術(shù)把具有數(shù)據(jù)處理能力的中央處理器cpu隨機存儲器ram、只讀存儲器rom、多種i/o口和中斷系統(tǒng)、定時器/計時器等功能(可能還包括顯示驅(qū)動電路、脈寬調(diào)制電路、模擬多路轉(zhuǎn)換器、a/d轉(zhuǎn)換器等電路)集成到一塊硅片上構(gòu)成的一個小而完善的計算機系統(tǒng)。這次電子秒表設(shè)計通過對一個基于c8051f020單片機的功能實現(xiàn)電子秒表工作的設(shè)計學(xué)習(xí)。單片機控制秒表是集單片機技術(shù),模擬電子技術(shù),數(shù)字技術(shù)為一體的機電一體化高科技產(chǎn)品,具有功耗低,安全性高,使用方便等優(yōu)點。本次設(shè)計內(nèi)容為以c8051單片機為核心的秒表,利用單片機的定時器/計數(shù)

6、器的定時和計數(shù)的原理,用集成電路芯片、led數(shù)碼管以及按鍵來設(shè)計計時器,將軟件硬件有機的結(jié)合起來,使他擁有正確的計時、暫停、清零并同時可以用數(shù)碼管顯示,將單片機應(yīng)用中的數(shù)據(jù)轉(zhuǎn)換顯示,液晶顯示原理,單片機的定時中斷的理解更加深刻。傳統(tǒng)的秒表可以分為機械停表和電子秒表,本次設(shè)計的秒表為電子秒表,可以進行數(shù)據(jù)的存儲、讀取、顯示的功能,電子秒表在我們?nèi)粘I钪须S處可見,它不僅應(yīng)用在體育計時中,而且還與工業(yè)計時有著重要的聯(lián)系。關(guān)鍵詞 c8051f020單片機,電子秒表,lcd液晶顯示, 目 錄1設(shè)計任務(wù)描述- 1 -2設(shè)計思路- 2 -3思路框圖- 3 -4各部分程序設(shè)計及參數(shù)計算- 4 -4.1定時器

7、程序設(shè)計- 4 -4.2數(shù)據(jù)轉(zhuǎn)換程序設(shè)計- 5 -4.3液晶部分程序設(shè)計- 6 -4.4中斷顯示程序設(shè)計- 9 -4.5 主程序簡介- 13 -5工作過程分析- 14 -6元器件清單- 15 -7主要器件介紹- 16 -7.1 c8051f020單片機- 16 -7.1.1管腳圖- 16 -7.1.2簡介- 16 -總 結(jié)- 18 -致 謝- 19 -參考文獻- 20 -源程序清單- 21 -1設(shè)計任務(wù)描述1.設(shè)計主要內(nèi)容及要求;編寫電子秒表程序。要求:1)具有秒表基本功能。 2)顯示最小數(shù)為0.1秒。 3)能夠進行多路計數(shù)并分別顯示。2.對設(shè)計論文撰寫內(nèi)容、格式、字數(shù)的要求;(1).課程設(shè)計

8、論文是體現(xiàn)和總結(jié)課程設(shè)計成果的載體,一般不應(yīng)少于3000字。(2).學(xué)生應(yīng)撰寫的內(nèi)容為:中文摘要和關(guān)鍵詞、目錄、正文、參考文獻等。課程設(shè)計論文的結(jié)構(gòu)及各部分內(nèi)容要求可參照沈陽工程學(xué)院畢業(yè)設(shè)計(論文)撰寫規(guī)范執(zhí)行。應(yīng)做到文理通順,內(nèi)容正確完整,書寫工整,裝訂整齊。(3).論文要求打印,打印時按沈陽工程學(xué)院畢業(yè)設(shè)計(論文)撰寫規(guī)范的要求進行打印。(4). 課程設(shè)計論文裝訂順序為:封面、任務(wù)書、成績評審意見表、中文摘要和關(guān)鍵詞、目錄、正文、參考文獻。2設(shè)計思路本次設(shè)計內(nèi)容為以c8051單片機為核心的秒表,利用單片機的定時器/計數(shù)器的定時和計數(shù)的原理,用集成電路芯片、led數(shù)碼管以及按鍵來設(shè)計計時器。

9、首先程序運用定時器產(chǎn)生50ms定時功能,50ms循環(huán)定時兩次即可達到100ms(即0.1s)的精度要求。利用毫秒與秒的進位十進制關(guān)系,秒于分鐘六十進制的進位關(guān)系,從而設(shè)計秒表的工作方式。將30h作為0.1秒的存儲單元,31h作為秒的存儲單元,32h作為分鐘的存儲單元,逐次進行顯示。30h,31h,32h中均存入的是十六進制的數(shù),運用除法運算將十六進制數(shù)據(jù)轉(zhuǎn)化成相應(yīng)的ascii碼,分秒的十位別分存在33h和35h中,個位存入34h和36h中,而0.1秒那一位存入37h中。顯示過程中數(shù)據(jù)的采集由外部中斷6來進行完成,當(dāng)按下key3時,程序進入外部中斷6。中斷6執(zhí)行計數(shù)功能,按下key3一次,進行一

10、次計數(shù)功能,并且將記錄的數(shù)據(jù)存入相應(yīng)的單元。此次設(shè)計的電子秒表是利用定時器,外部中斷6,7來進行實現(xiàn)的。外部按鍵控制外部中斷6和外部中斷7的程序。首先按下key3開始記錄數(shù)據(jù),然后第二次按下key3時存儲第一個數(shù)據(jù),依次類推可以存儲五組數(shù)據(jù),當(dāng)?shù)谝淮伟聪耴ey4程序停止計時,第二次按下key4讀取已經(jīng)存儲的第一個數(shù)據(jù),依次類推可以讀取之前存儲的五組數(shù)據(jù)。因為存于30h,31h,32h中的數(shù)為十六進制數(shù),液晶顯示器無法直接顯示其中的數(shù)值,因此需將十六進制數(shù)轉(zhuǎn)化為液晶顯示器識別的ascii碼。即將32h中的十六進制數(shù)放在累加器a中。把10放在寄存器b中,執(zhí)行div ab此時a、b中都是bcd數(shù),而

11、lcd只能識別ascii碼,所以要分別將a和b中的數(shù)加30h轉(zhuǎn)化成ascii碼33h和34h中,再進行顯示。3思路框圖主程序50ms定時器中斷液晶顯示按下key3中斷6存入數(shù)據(jù)中斷7按下key4讀取數(shù)據(jù)4各部分程序設(shè)計及參數(shù)計算4.1定時器程序設(shè)計定時中斷程序是一個進位程序,主要負責(zé)對1ms的加一。1ms位沒有滿十就跳出中斷程序,返回顯示程序。當(dāng)1ms位滿十后就對1ms位清零,向10ms位加一,同時檢測10ms位是否滿十,沒有滿十就跳出中斷程序,返回顯示程序。如果滿十就向100ms位加一,依次類推。定時/計數(shù)器t0工作在方式0下,th0和tl0組成一個16位的二進制數(shù)計數(shù)器。單片機開機或復(fù)位時

12、,它的值為00h,當(dāng)t0啟動后,從第一個輸入脈沖開始計時,每來一個脈沖計數(shù)加一,在計數(shù)一個脈沖時th0和tl0組成的16位計數(shù)器將會從16個1變成16個0,并產(chǎn)生溢出,溢出位將被送到tf0標志位,通過溢出標志產(chǎn)生溢出中斷請求。顯然,t0定時器在方式0下引起一次中斷所允許計數(shù)的最多脈沖個數(shù)為216 個?,F(xiàn)在本設(shè)計要求1ms實現(xiàn)一次中斷,選擇定時器t0工作在方式0。所以需要根據(jù)以上條件計算出t0的初值。電子秒表中定時器采用方式一,定時周期為50ms。計算公式如下:設(shè)t0的初值為x,則: t=216(12*106 *50*10-3 )/12=15536=3cb0即th0=03ch(取x的高8位)tl

13、0=0b0h(取x的低8位)產(chǎn)生50ms秒時間,通過控制循環(huán)次數(shù)兩次使之達到10毫秒的定時功能,再通過相應(yīng)條件進行滿10和滿60計數(shù)。 定時器的程序:t0: clr tf0 /t0中斷標志位清0; mov tl0, #0b0h /賦產(chǎn)生定時時間為50毫秒的初值; mov th0, #03ch djnz r2 lop1 /循環(huán)2次未返回繼續(xù),實現(xiàn)100毫秒定時; mov r2 #02h inc 30h / 100毫秒到30h單元中數(shù)據(jù)加1; mov a, 30h cjne a, #10 lop1 /用于實現(xiàn)1秒的計數(shù),1秒未到返回繼 mov 30h,#00h / 續(xù),1秒到30h單元清零,31h

14、單元加1 inc 31h mov a, 31h cjne a, #60 ,lop1 mov 30h, #00h /給秒數(shù),毫秒,分存的地址單元清零mov 31h, #00h mov 32h, #00hlop1:reti 4.2數(shù)據(jù)轉(zhuǎn)換程序設(shè)計在單片機中液晶顯示部分只能用ascii碼值進行顯示數(shù)據(jù)轉(zhuǎn)換程序如下:液晶顯示計數(shù)的數(shù)值:: mov a, 32h把32h單元中數(shù)送到累加器a中; mov b, #10 把10送到寄存器b中; div ab add a, #30h 運用除法運算,使得寄存器a,b分別存32h單元中數(shù)值的十位和個位,再分別把他們轉(zhuǎn)換成ascii碼值進行顯示,然后把a中數(shù)據(jù)送給3

15、3h單元 mov 33h, a mov a, b add a, #30h mov b, a mov 34h, b mov a, 31h mov b, #10 div ab add a, #30h mov 35h, a mov a, b add a, #30h mov b, a mov 36h, b mov a, 30h mov b, #0a0h div ab mov a, b add a, #30h mov b, a mov 37h, b數(shù)據(jù)轉(zhuǎn)換基本思路:將30h,31h,32h分別作為毫秒,秒,分的十六位數(shù)據(jù)存儲地址,然后運用除法將30h,31h,32h中的十六進制數(shù)高四位和第四位數(shù)據(jù)分離,

16、分別存入累加器a和b中,然后將32h,31h,30h中的數(shù)據(jù)的高低四位分別顯示在33h,34h,35h,36h,37h中,該組地址中完成了30h,31h,32h,中十六進制數(shù)據(jù)到ascii碼值的轉(zhuǎn)換,然后將這些地址中的數(shù)據(jù)顯示在液晶屏幕上。4.3液晶部分程序設(shè)計4.3.1液晶初始化程序: lcall delay mov p7,#38h /功能設(shè)置:兩行顯示,57點陣 mov p6,#01h /寫命令 mov p6,#00h /結(jié)束寫命令 lcall delay mov p7,#0eh /開顯示,開光標,字符不閃爍 mov p6,#01h /寫命令 mov p6,#00h /結(jié)束寫命令 lcal

17、l delay mov p7,#06h /i/d=1,ac自動增1;s=0,整體顯示不移動 mov p6,#01h /寫命令 mov p6,#00h /結(jié)束寫命令 lcall delay mov p7,#01h /清除ddram,置ac=0 mov p6,#01h /寫命令mov p6,#00h /結(jié)束寫命令 lcall delay4.3.2液晶顯示部分程序: mov p7,#01h mov p6,#01h mov p6,#00h lcall delay mov p7,33h mov p6,#05h mov p6,#04h lcall delay mov p7,34h mov p6,#05h

18、mov p6,#04h lcall delay mov p7,#: mov p6,#05h mov p6,#04h lcall delay mov p7,35h mov p6,#05h mov p6,#04h lcall delay mov p7,36h mov p6,#05h mov p6,#04h lcall delay mov p7,#: mov p6,#05h mov p6,#04h lcall delay mov p7,37h mov p6,#05h mov p6,#04h lcall delay mov p7,#0c0h mov p6,#1 mov p6,#0h lcall del

19、ay mov p7,#t mov p6,#05h mov p6,#04hlcall delaylcall delaylcall delaylcall delaylcall delaylcall delaymov a,99hcjne a,#00h,looopmov a,r1add a,#30hmov p7,amov p6,#05hmov p6,#04hlcall delaylcall delaylcall delaylcall delaylcall delaylcall delay注釋 :利用lcd模塊的3條信號線rsr/w和e控制lcd的讀寫操作,rs為寄存器選擇位,rs=1,選擇數(shù)據(jù)寄存器;

20、rs=0,選擇指令寄存器;e為使能信號,下降沿觸發(fā);r/w反為讀/寫信號,r/w反=1,為讀;r/w反=0,為寫;d0-d7是8位數(shù)據(jù)總路線;將p6.0線與e端相連,p6.1線與r/w端相連,p6.2線與rs端相連可利用i/o線p6.2,p6.1和p6.0代替rs,r/w反和e實現(xiàn)讀/寫操作。此部分液晶顯示程序是為了顯示分:秒:毫秒。4.4中斷顯示程序設(shè)計 利用外部中斷6和外部中斷7實現(xiàn)了數(shù)據(jù)的采集和數(shù)據(jù)的顯示工作,當(dāng)執(zhí)行按下key3時候,進入外部中斷6,程序記錄一個數(shù)值,并將該數(shù)值存入相應(yīng)的地址,外部中斷6的執(zhí)行次數(shù)由寄存器r1來顯示,每執(zhí)行一次中斷6,r1的值加1,將此次記錄的數(shù)據(jù)送入相應(yīng)

21、的單元進行存儲。其程序設(shè)計如下:4.41int6程序設(shè)計int6:setb tr0mov 99h,#00h mov a,r6 cjne a,#00h,lop2 inc amov r6,amov r1,#00h ljmp lop7lop2: mov a,r6 cjne a,#01h,lop3 inc a mov r6,a mov 43h,30h mov 44h,31h mov 45h,32h ljmp lop7lop3: mov a,r6 cjne a,#02h,lop4 inc a mov r6,a mov 48h,30h mov 49h,31h mov 50h,32hljmp lop7lop

22、4: mov a,r6 cjne a,#03h,lop5 inc a mov r6,a mov 53h,30h mov 54h,31h mov 55h,32h ljmp lop7lop5: mov a,r6 cjne a,#04h,lop6 inc a mov r6,a mov 58h,30h mov 59h,31h mov 60h,32h ljmp lop7lop6: mov a,r6 cjne a,#05h,lop7 mov 63h,30h mov 64h,31h mov 65h,32h inc a mov r6,aljmp lop12 clr tr0lop7:lcall delay11l

23、call delay11lcall delay11lcall delay11lcall delay11lcall delay11lcall delay11lcall delay11lcall delay11lcall delay11 mov p3if,#00h reti程序注釋: 該段程序中利用外部中斷6實現(xiàn)程序的記錄數(shù)據(jù)功能,首先利用寄存器r6的數(shù)值來選擇它記錄數(shù)據(jù)的存儲單元,如果是第一次按下key3鍵則執(zhí)行秒表開始工作狀態(tài),從零開始計數(shù)。當(dāng)?shù)诙伟聪耴ey3時候,將r7中數(shù)值加1,記錄當(dāng)前數(shù)值,并將數(shù)值存入43h,44h,45h單元中。根據(jù)上述記錄方式,沒三個單元記錄一組數(shù)據(jù),根據(jù)辨析程序

24、,最多可以記錄六組數(shù)據(jù),將其存入43h51h中,并且調(diào)用液晶顯示程序?qū)⑵滹@示,調(diào)用顯示部分由中斷7來完成。4.42int7程序設(shè)計int7: clr tr0 mov 99h,#01 mov a,r1cjne a,#00h,lop8inc amov r1,amov r6,#00ljmp lop14lop8: mov a,r1 cjne a,#01h,lop9 inc a mov r1,a mov 30h,43h mov 31h,44h mov 32h,45h ljmp lop14lop9: mov a,r1 cjne a,#02h,lop10 inc a mov r1,a mov 30h,48h

25、 mov 31h,49h mov 32h,50h ljmp lop14lop10: mov a,r1 cjne a,#03h,lop11 inc a mov r1,a mov 30h,53h mov 31h,54h mov 32h,55h ljmp lop14lop11: mov a,r1 cjne a,#04h,lop12 inc a mov r1,a mov 30h,58h mov 31h,59h mov 32h,60h ljmp lop14lop12: mov a,r1 cjne a,#05h,lop13 inc a mov r1,a mov 30h,63h mov 31h,64h mo

26、v 32h,65h ljmp lop14lop13:mov a,r1 cjne a,#06h,lop14 mov 30h,#00h mov 31h,#00h mov 32h,#00h mov r6,#00h mov r2,#02h mov r1,#00hlop14:lcall delay11 lcall delay11 lcall delay11 lcall delay11 lcall delay11 lcall delay11 lcall delay11 lcall delay11 lcall delay11 lcall delay11 lcall delay11 mov p3if,#00h

27、 retidelay:mov r5,#01hdelay1:mov r4,#25hdelay0:mov r3,#00h djnz r3,$ djnz r4,delay0 djnz r5,delay1 retdelay11:mov r7,#255dly0:mov r0,#255dly1: djnz r0,dly1 djnz r7,dly0ret程序注釋:本段程序?qū)崿F(xiàn)了讀取功能,按下key4時進行數(shù)據(jù)查詢,第一次按下時,記錄秒表當(dāng)前數(shù)值,第二次按下顯示第一個數(shù)值,以此類推即可顯示多組記錄數(shù)據(jù)。4.5 主程序簡介主程序是整個程序的主體。可以對各個中斷程序進行調(diào)用。協(xié)調(diào)各個子程序之間的聯(lián)系。系統(tǒng)(上電)

28、復(fù)位后,進入主程序,首先對系統(tǒng)進行初始化,包括設(shè)置各入口地址、中斷的開啟、對各個數(shù)據(jù)緩存區(qū)清“0”、賦定時器初值。在主程序中還進行了賦寄存區(qū)的初始值、設(shè)置定時器初值以及開啟外部中斷等操作,當(dāng)定時時間到后就轉(zhuǎn)去執(zhí)行定時中斷程序。當(dāng)外部中斷有請求則去執(zhí)行外部中斷服務(wù)程序。并在執(zhí)行完后返回主程序。main: mov wdtcn,#0deh mov wdtcn,#0adh 關(guān)看門狗程序 mov oscxcn,#67h 選擇外部振蕩器,位6-4為110,則選擇外部晶體的振蕩方式lop: mov a,oscxcn jnb acc.7,lop 由于選擇外部晶體的振蕩啟動需要幾毫秒的時 間,所以等待外部振蕩器

29、位7為邏輯1 mov oscicn,#08h mov ckcon,#00h 選擇分頻 mov tmod,#01h 定時器選擇工作方式為方式1 mov tl0,#0b0h mov th0,#3ch 定時器賦50ms初值 mov p3if,#00h 中斷標志位 mov eie2,#30h 外部中斷6,7使能mov p1mdout,#0ffh 選擇p1口為推挽輸出 mov p74out,#0f0h 端口4-7輸出方式為推挽 mov xbr2,#40h 交叉開關(guān)使能5工作過程分析 此次設(shè)計的電子秒表,實現(xiàn)了電子秒表的電子秒表的基本功能:存儲數(shù)據(jù)、提取數(shù)據(jù)、清零功能,以及實現(xiàn)了多路計數(shù)功能。首先,對各個

30、應(yīng)用到的端口和數(shù)據(jù)進行初始化;然后選擇定時器的工作方式(本實驗中選擇的是16位的定時器);之后是計算定時器初值,選擇定時周期;計算公式如下:t=216(12*106 *50*10-3 )/12=15536=3cb0。所以tl0賦值為0b0h,th0賦值為03ch。產(chǎn)生50ms時間,通過控制循環(huán)次數(shù)兩次使之達到100毫秒的定時功能,再通過相應(yīng)條件進行滿10和滿60計數(shù)。外部按鍵控制外部中斷6和外部中斷7的程序。首先按下key3開始記錄數(shù)據(jù),然后第二次按下key3時存儲第一個數(shù)據(jù),依次類推可以存儲五組數(shù)據(jù),當(dāng)?shù)谝淮伟聪耴ey4程序停止計時,第二次按下key4讀取已經(jīng)存儲的第一個數(shù)據(jù),依次類推可以讀

31、取之前存儲的五組數(shù)據(jù)。此次設(shè)計液晶起到了至關(guān)重要的作用,液晶的初始化,然后將中斷七地址中的數(shù)據(jù)用以液晶顯示。達到實驗要求和目的。6元器件清單名稱符號數(shù)量電源插座gn-1071電腦方正電腦1單片機c8051f0201顯示器lcd16021電鍵k4插針-若干電阻r若干電容c若干 表6.1元件清單7主要器件介紹7.1 c8051f020單片機7.1.1管腳圖圖7.1 c8051f020引腳圖7.1.2簡介c8051f020 器件是完全集成的混合信號系統(tǒng)級mcu芯片, 具有64 個數(shù)字i/o 引腳 (c8051f020/2)或32 個數(shù)字i/o 引腳(c8051f021/3)。下面列出了一些主要特性;

32、 1. 高速、流水線結(jié)構(gòu)的8051 兼容的cip-51 內(nèi)核(可達25mips) 2. 全速、非侵入式的在系統(tǒng)調(diào)試接口(片內(nèi)) 3. 真正12 位(c8051f020/1)或10 位(c8051f022/3)、100 ksps 的8 通道adc,帶pga和模擬多路開關(guān) 4. 真正8 位500 ksps 的adc,帶pga 和8 通道模擬多路開關(guān) 5. 兩個12 位dac,具有可編程數(shù)據(jù)更新方式 6. 64k 字節(jié)可在系統(tǒng)編程的flash 存儲器 7. 4352(4096+256)字節(jié)的片內(nèi)ram 8. 可尋址64k 字節(jié)地址空間的外部數(shù)據(jù)存儲器接口 9. 硬件實現(xiàn)的spi、smbus/ i2c

33、 和兩個uart 串行接口 10. 5 個通用的16 位定時器11. 具有5 個捕捉/比較模塊的可編程計數(shù)器/定時器陣列 12. 片內(nèi)看門狗定時器、vdd 監(jiān)視器和溫度傳感器 13 具有片內(nèi)vdd 監(jiān)視器、看門狗定時器和時鐘振蕩器的c8051f020 是真正能獨立工作的片上系統(tǒng)。 c8051f020單片機所有模擬和數(shù)字外設(shè)均可由用戶固件使能/禁止和配置。flash 存儲器還具有在系統(tǒng)重新編程能力,可用于非易失性數(shù)據(jù)存儲,并允許現(xiàn)場更新8051 固件。片內(nèi)jtag 調(diào)試電路允許使用安裝在最終應(yīng)用系統(tǒng)上的產(chǎn)品mcu 進行非侵入式(不占用片內(nèi)資源)、全速、在系統(tǒng)調(diào)試。該調(diào)試系統(tǒng)支持觀察和修改存儲器和

34、寄存器,支持斷點、觀察點、單步及運行和停機命令。在使用jtag 調(diào)試時,所有的模擬和數(shù)字外設(shè)都可全功能運行???結(jié)參考文獻1 51系列單片機設(shè)計實例樓苗然,李光飛編著,北京: 北京航空航天大學(xué)出版社,20032 張俊謨.soc單片機實驗、實踐與應(yīng)用設(shè)計基于c8051f系列.北京: 北京航空航天大學(xué)出版社,20073 8051單片機課程設(shè)計實訓(xùn)教材陳明熒編著,北京:清華大學(xué)大學(xué)出版社,2005.74 肖洪兵.跟我學(xué)用單片機.北京:北京航空航天大學(xué)出版社,20065 soc單片機實驗、實踐于應(yīng)用設(shè)計萬光毅 ,孫九安 ,蔡建平等編著 ,北京:北京航空航天大學(xué)出版社,2006.5源程序清單$inclu

35、de(c8051f020.inc)org 00hljmp mainorg 0bh ljmp t0org 93hljmp int6org 9bhljmp int7org 100hmain: mov wdtcn,#0deh mov wdtcn,#0adh mov oscxcn,#67hlop: mov a,oscxcn jnb acc.7,lop mov oscicn,#08h mov ckcon,#00h mov tmod,#01h mov tl0,#0b0h mov th0,#3ch mov p3if,#00h mov eie2,#30h mov xbr0,#00h mov p1mdout,#

36、0ffh mov p74out,#0f0h mov xbr2,#40h lcall delay mov p7,#38h mov p6,#01h mov p6,#00h lcall delay mov p7,#0eh mov p6,#01h mov p6,#00h lcall delay mov p7,#06h mov p6,#01h mov p6,#00h lcall delay mov p7,#01h mov p6,#01h mov p6,#00h lcall delay mov 30h,#00h mov 31h,#00h mov 32h,#00hmov 99h,#00h mov r6,#0

37、0h mov r2,#02h mov r1,#00h setb et0 setb eaabc: mov a,32h mov b,#10 div ab add a,#30h mov 33h,a mov a,b add a,#30h mov b,a mov 34h,b mov a,31h mov b,#10 div ab add a,#30h mov 35h,a mov a,b add a,#30hmov b,amov 36h,bmov a,30hmov b,#10div ab mov a,b add a,#30h mov b,a mov 37h,b mov p7,#01h mov p6,#01h

38、 mov p6,#00h lcall delay mov p7,33h mov p6,#05h mov p6,#04h lcall delay mov p7,34h mov p6,#05h mov p6,#04h lcall delay mov p7,#: mov p6,#05h mov p6,#04h lcall delay mov p7,35h mov p6,#05h mov p6,#04h lcall delay mov p7,36h mov p6,#05h mov p6,#04h lcall delay mov p7,#: mov p6,#05h mov p6,#04h lcall d

39、elay mov p7,37h mov p6,#05h mov p6,#04h lcall delaymov p7,#0c0hmov p6,#1mov p6,#0h lcall delay mov p7,#t mov p6,#05h mov p6,#04hlcall delaylcall delaylcall delaylcall delaylcall delaylcall delaymov a,99hcjne a,#00h,looopmov a,r1add a,#30hmov p7,a mov p6,#05h mov p6,#04hlcall delaylcall delaylcall de

40、laylcall delaylcall delaylcall delay ajmp looop2looop:mov a,r6add a,#30hmov p7,amov p6,#05hmov p6,#04hlcall delaylcall delaylcall delaylcall delaylcall delaylcall delaylcall delaylcall delaylcall delaylooop2: lcall delay lcall delay mov a,30h cjne a,#00h,ss mov a,31h cjne a,#0ah,ss lcall delay lcall

41、 delay lcall delay lcall delay lcall delay ss: ljmp abct0:clr tf0 mov tl0,#0b0h mov th0,#3ch djnz r2,lop1 mov r2,#02h inc 30h mov a,30h cjne a,#10,lop1 mov 30h,#00h inc 31h mov a,31h cjne a,#60,lop1 mov 31h,#00h inc 32h mov a,32h cjne a,#60,lop1 mov 30h,#00h mov 31h,#00h mov 32h,#00h lop1:retiint6:s

42、etb tr0 mov 99h,#00h mov a,r6 cjne a,#00h,lop2 inc a mov r6,a mov r1,#00 ljmp lop7lop2: mov a,r6 cjne a,#01h,lop3 inc a mov r6,a mov 43h,30h mov 44h,31h mov 45h,32h ljmp lop7lop3: mov a,r6 cjne a,#02h,lop4 inc a mov r6,a mov 48h,30h mov 49h,31h mov 50h,32h ljmp lop7lop4: mov a,r6 cjne a,#03h,lop5 inc a mov r6,a mov 53h,30h mov

溫馨提示

  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論