2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩15頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p>  課程設(shè)計說明書(論文)</p><p>  課程名稱:課程設(shè)計 </p><p>  設(shè)計題目:數(shù)字日歷鐘表的設(shè)計 </p><p>  院 系:電信學(xué)院通信工程 </p><p>  班 級: </p><p>  設(shè) 計 者:

2、 </p><p>  學(xué) 號: </p><p>  指導(dǎo)教師: </p><p>  設(shè)計時間:2013.6.12-3013.6.18 </p><p><b>  課程設(shè)計任務(wù)書</b></p><p>  *注:此任務(wù)書由課程設(shè)

3、計指導(dǎo)教師填寫</p><p><b>  數(shù)字日歷鐘的設(shè)計</b></p><p><b>  一、課程設(shè)計要求</b></p><p>  1. 數(shù)碼管顯示:秒、分、時(可同時顯示,也可輪換顯示)</p><p>  2. 能夠設(shè)置時間,“設(shè)置按鍵”數(shù)量不限,以簡單合理易用為好。</p&g

4、t;<p>  3. 誤差:1秒/天(報告中要論述分析是否滿足要求)</p><p>  4. 設(shè)置校準鍵:當(dāng)數(shù)字鐘顯示在“整點±30秒”范圍時,按動“校準鍵”,數(shù)字鐘即刻被調(diào)整到整點,消除了±30秒的誤差。</p><p>  5. 加上“星期”顯示(可以預(yù)置),并可以對其進行設(shè)置。</p><p><b>  二、方案

5、論證</b></p><p>  2.1單片機芯片的選擇方案和論證</p><p><b>  方案一:</b></p><p>  采用89C51芯片作為硬件核心,其內(nèi)部采用Flash ROM,具有4KB ROM 存儲空間,能于3V的超低壓工作,但</p><p>  運用于電路設(shè)計中時由于不具備ISP在線

6、編程技術(shù),燒入程序時需要專門的C編程器(當(dāng)前可用的實驗燒寫開發(fā)板只支持具有ISP在線編程功能的AT89S**系列的芯片),當(dāng)在對電路進行調(diào)試時,更顯麻煩,并且增加了造價,</p><p><b>  方案二:</b></p><p>  采用89S51芯片作為主控模塊,AT89S51是 MCS-51系列單片機目前運用較多的一種芯片,采用Flash ROM,內(nèi)部具有4K

7、B ROM 存儲空間,能于3V的超低壓工作,而且具備ISP在線編程技術(shù),方便對電路進行調(diào)試.但由于程序的錯誤修改或?qū)Τ绦虻男略龉δ苄枰獰氤绦驎r,對芯片的多次拔插會對芯片造成一定的損壞。針對該問題,可采用易于插拔的芯片插槽,芯片的程序燒寫用專門的實驗板進行燒寫(當(dāng)前可用的實驗燒寫開發(fā)板支持AT89S**系列).AT89S51單片機的功能引腳圖如下圖所示:</p><p>  AT89S51單片機的功能引腳圖<

8、;/p><p>  所以選擇采用AT89S51作為主控制系統(tǒng)。</p><p>  2.3時鐘芯片的選擇方案和論證</p><p><b>  方案一:</b></p><p>  采用DS1302時鐘芯片實現(xiàn)時鐘,DS1302芯片是一種高性能的時鐘芯片,可自動對秒、分、時、日、周、月、年以及閏年補償?shù)哪赀M行計數(shù),精度也較高

9、,工作電壓2.5V~5.5V范圍內(nèi),功耗也較低,但價格比較貴,且目前市場上采購不到</p><p><b>  方案二:</b></p><p>  直接采用單片機定時計數(shù)器提供秒信號,使用程序?qū)崿F(xiàn)時、分、秒計數(shù)。采用此種方案實現(xiàn)雖然有一定的時間誤差,但可減少少芯片的使用,節(jié)約成本,易于實現(xiàn),符合初學(xué)者實驗選用。</p><p><b&g

10、t;  所以采用方案二。</b></p><p>  綜上各方案所述,對此次作品的方案選定: 采用AT89S51作為主控制系統(tǒng); 通過軟件編程采用定時器定時實現(xiàn)秒.分.時計時;LED數(shù)碼管靜態(tài)顯示時間。</p><p><b>  三、原理論述</b></p><p>  單片機控制的數(shù)字鐘的硬件結(jié)構(gòu)與軟件設(shè)計,給出了匯編語言源程序

11、。此數(shù)字鐘是一個將“時”、“分”、“秒”顯示于人的視覺器官的計時裝置。顯示器件選用LED七段數(shù)碼管。在譯碼顯示電路輸出的驅(qū)動下,顯示出清晰、直觀的數(shù)字符號。針對數(shù)字鐘會產(chǎn)生走時誤差的現(xiàn)象,在電路中就設(shè)計有有校準時間功能的電路。使用動態(tài)數(shù)碼顯示的方法,運用獨立式按鍵識別過程,按“時”,“分”,“秒”數(shù)據(jù)送出顯示處理方法。</p><p>  這里采用應(yīng)用廣泛的80C51單片機作為時鐘控制芯片,利用單片機內(nèi)部的定時/

12、計數(shù)器T0 實現(xiàn)軟時鐘的目的。首先將T0設(shè)定工作于定時方式1,對機器周期計數(shù)形成基準時間(50ms),然后使用循環(huán)的程序結(jié)構(gòu)使基準時間計數(shù)20次從而形成秒,秒計60次形成分,分計60形成小時,小時計到24形成一天,天計到7形成一星期,再重新循環(huán)。最后通過數(shù)碼管把它們的內(nèi)容在相應(yīng)的位置顯示出來,達到時、分、秒計時的功能。</p><p><b>  3.1系統(tǒng)原理圖</b></p>

13、<p>  AT89C51的P1口接入三個按鍵,對時、分、秒進行調(diào)整。P0口輸出字段碼,控制要顯示的字符,外接74LS245芯片,驅(qū)動LED顯示。P3口輸出字位碼,去控制要顯示的位,其原理圖如圖3-6所示。</p><p>  圖3-6 電子鐘原理圖</p><p>  當(dāng)接入電源時,數(shù)字電子鐘以秒為單位開始計時。運行狀態(tài)下,按下控制按鍵S-SET,對秒進行調(diào)整;按下M-S

14、ET調(diào)整分鐘;按下H-SET對小時進行調(diào)整。這樣通過三個按鍵,分別對時、分、秒進行調(diào)整,從而實現(xiàn)調(diào)時。</p><p>  3.2 程序設(shè)計流程圖</p><p>  這次的數(shù)字電子鐘設(shè)計用到很多子程序,它們的流程圖如下所示。</p><p>  主程序是先開始,然后啟動定時器,定時器啟動后在進行按鍵檢測,檢測完后,就可以顯示時間。</p><p

15、>  圖4-1 主程序流程圖</p><p>  按鍵處理是先檢測秒按鍵是否按下,秒按鍵如果按下,秒就加1;如果沒有按下,就檢測分按鍵是否按下,分按鍵如果按下,分就加1;如果沒有按下,就檢測時按鍵是否按下,時按鍵如果按下,時就加1;如果沒有按下,就把時間顯示出來。</p><p>  圖4-2 按鍵處理流程圖</p><p>  定時器中斷時是先檢測1秒是否到

16、,1秒如果到,秒單元就加1;如果沒到,就檢測1分鐘是否到,1分鐘如果到,分單元就加1;如果沒到,就檢測1小時是否到,1小時如果到,時單元就加1,如果沒到,就檢測1天是否到,1議案如果到,天單元就加1,如果沒到,就顯示時間。</p><p>  圖4-3 定時器中斷流程圖</p><p>  時間顯示是先秒個位計算顯示,然后是秒十位計算顯示,再是分個位計算顯示,再然后是分十位顯示,再就是時個

17、位計算顯示,然后是時十位顯示,最后是天的顯示。</p><p>  3.3 時鐘程序設(shè)計步驟</p><p> ?。?)選擇工作方式,計算初值;</p><p> ?。?)采用中斷方式進行溢出次數(shù)累計;</p><p>  (3)從秒——分——時的計時是通過累加和數(shù)值比較實現(xiàn)的;</p><p> ?。?)時鐘顯示緩沖

18、區(qū):時鐘時間在方位數(shù)碼管上進行顯示,為此在內(nèi)部</p><p>  RAM中要設(shè)置顯示緩沖區(qū),共6個地址單元。顯示緩沖區(qū)從左到右依次存放時、分、秒數(shù)值;</p><p>  (5)主程序:主要進行定時器/計數(shù)器的初始化編程,然后反復(fù)調(diào)用顯示</p><p>  子程序的方法等待中斷的到來。</p><p>  (6)中斷服務(wù)程序:進行計時操作

19、</p><p> ?。?)加1子程序:用于完成對時、分、秒的加操作,中斷服務(wù)程序在秒、</p><p>  分、時加1時共有三種條調(diào)用加1子程序,包括三項內(nèi)容:合字、加1并進行十進制調(diào)整、分字。</p><p><b>  四、分析運算</b></p><p><b>  4.1 硬件部分</b>

20、</p><p>  采用7SEG-MPX8-CC 八個共陰二極管顯示器來顯示日期和時間。</p><p>  通過設(shè)置功能按鍵來實現(xiàn)調(diào)整日期和整點調(diào)時的功能。</p><p>  電路連接使用PCB,使電路連接簡潔美觀。</p><p><b>  4.2 軟件部分</b></p><p>  

21、“時鐘”基準時間由單片機內(nèi)部的定時中斷T0提供,考慮因素:定時時間是“秒”的整除數(shù),且長短適宜。最長不能超過16位定時器的最長定時時間;最短不能少于中斷服務(wù)程序的執(zhí)行時間?;鶞蕰r間越短,越有利于提高時鐘的運行精確度。基準時間定為0.05秒。</p><p> ?。?)用一個計數(shù)器對定時中斷的次數(shù)進行計數(shù),由基準時間為0.05秒知計數(shù)值為20即可實現(xiàn)“秒”定時,同理進行“分”﹑“時”定時。</p>&

22、lt;p><b>  4.3計算</b></p><p>  該部分主要是對51單片機內(nèi)部定時中斷T0的計時初值進行計算。該單片機使用的晶振為內(nèi)部晶振,因此晶振頻率為fosc=12MHz,機器周期為Tj=12/fosc=12/12×106=1us。由上面分析可知,定時時間T=50ms</p><p>  定時初值為X=216-T/Tj=65536-50

23、000=15536=3CB0H</p><p><b>  五、程序</b></p><p>  簡要說明:實現(xiàn)24小時制電子鐘,8位數(shù)碼管顯示,顯示時分秒顯示格式:23-59-59(小時十位如果為0則不顯示)P0口輸出段選信號,P2口輸出位選信號P1.2為調(diào)時按鈕,P1.1為調(diào)分按鈕;晶振12M</p><p><b>  源

24、程序如下:</b></p><p>  S_SETBITP1.0 ;數(shù)字鐘秒控制位</p><p>  M_SETBITP1.1 ;分鐘控制位</p><p>  H_SETBITP1.2 ;小時控制位</p><p>  D_SET BIT P1.3

25、 ;天控制位</p><p>  SECONDEQU30H</p><p>  MINUTEEQU31H</p><p>  HOUREQU32H</p><p>  DAY EQU 33H</p><p>  TCNTEQU34H</p><p&

26、gt;<b>  ORG00H</b></p><p>  SJMPSTART</p><p><b>  ORG0BH</b></p><p>  LJMPINT_T0</p><p>  START:MOVDPTR,#TABLE</p><p>  MO

27、VHOUR,#0;初始化</p><p>  MOVMINUTE,#0</p><p>  MOVSECOND,#0</p><p>  MOV DAY,#0</p><p>  MOVTCNT,#0</p><p>  MOVTMOD,#01H</p><p&

28、gt;  MOVTH0,#(65536-50000)/256;定時50毫秒</p><p>  MOVTL0,#(65536-50000)MOD 256</p><p>  MOVIE,#82H</p><p><b>  SETBTR0</b></p><p>  ;*****************

29、***********************************</p><p>  ;判斷是否有控制鍵按下,是哪一個鍵按下</p><p>  A1:LCALLDISPLAY</p><p>  JNBS_SET,S1</p><p>  JNBM_SET,S2</p><p>  JNB

30、H_SET,S3</p><p><b>  LJMPA1</b></p><p>  S1:LCALLDELAY;去抖動</p><p>  JBS_SET,A1</p><p>  INCSECOND;秒值加1</p><p>  MOVA,SECOND<

31、;/p><p>  CJNEA,#60,J0;判斷是否加到60秒</p><p>  MOVSECOND,#0</p><p><b>  LJMPK1</b></p><p>  S2:LCALLDELAY</p><p>  JBM_SET,A1</p><p

32、>  K1:INCMINUTE;分鐘值加1</p><p>  MOVA,MINUTE</p><p>  CJNEA,#60,J1;判斷是否加到60分</p><p>  MOVMINUTE,#0</p><p><b>  LJMPK2</b></p><p> 

33、 S3:LCALLDELAY</p><p>  JBH_SET,A1</p><p>  K2:INCHOUR;小時值加1</p><p>  MOVA,HOUR</p><p>  CJNEA,#24,J2;判斷是否加到24小時</p><p>  MOVHOUR,#0</p&g

34、t;<p><b>  LJMP K3</b></p><p>  K3: INC DAY ;天值加1</p><p>  MOVMINUTE,#0</p><p>  MOVSECOND,#0</p><p>  LJMPA1;等待按鍵抬起</p><p

35、>  J0:JBS_SET,A1</p><p>  LCALLDISPLAY</p><p><b>  SJMPJ0</b></p><p>  J1:JBM_SET,A1</p><p>  LCALLDISPLAY</p><p><b>  SJMP

36、J1</b></p><p>  J2:JBH_SET,A1</p><p>  LCALLDISPLAY</p><p>  SJMPJ2;定時器中斷服務(wù)程序,對秒,分鐘和小時的計數(shù)</p><p>  INT_T0:MOVTH0,#(65536-50000)/256</p><p>

37、  MOVTL0,#(65536-50000)MOD 256</p><p><b>  INCTCNT</b></p><p>  MOVA,TCNT</p><p>  CJNEA,#20,RETUNE;計時1秒</p><p>  INCSECOND</p><p>

38、  MOVTCNT,#0</p><p>  MOVA,SECOND</p><p>  CJNEA,#60,RETUNE</p><p>  INCMINUTE</p><p>  MOVSECOND,#0</p><p>  MOVA,MINUTE</p><p>  

39、CJNEA,#60,RETUNE</p><p><b>  INCHOUR</b></p><p>  MOVMINUTE,#0</p><p>  MOVA,HOUR</p><p>  CJNEA,#24,RETUNE</p><p>  MOVHOUR,#0</p

40、><p>  MOVMINUTE,#0</p><p>  MOVSECOND,#0</p><p>  MOVTCNT,#0</p><p>  RETUNE:RETI;</p><p><b>  顯示控制子程序</b></p><p>  DISPLAY:M

41、OVA,SECOND;顯示秒</p><p>  MOVB,#10</p><p><b>  DIVAB</b></p><p><b>  CLRP3.6</b></p><p>  MOVCA,@A+DPTR</p><p><b>  M

42、OVP0,A</b></p><p>  LCALLDELAY</p><p><b>  SETBP3.6</b></p><p><b>  MOVA,B</b></p><p><b>  CLRP3.7</b></p><

43、p>  MOVCA,@A+DPTR</p><p><b>  MOVP0,A</b></p><p>  LCALLDELAY</p><p><b>  SETBP3.7</b></p><p><b>  CLRP3.5</b></p>

44、<p>  MOVP0,#40H;顯示分隔符</p><p>  LCALLDELAY</p><p><b>  SETBP3.5</b></p><p>  MOVA,MINUTE;顯示分鐘</p><p>  MOVB,#10</p><p><b>

45、;  DIVAB</b></p><p><b>  CLRP3.3</b></p><p>  MOVCA,@A+DPTR</p><p><b>  MOVP0,A</b></p><p>  LCALLDELAY</p><p><b&

46、gt;  SETBP3.3</b></p><p><b>  MOVA,B</b></p><p><b>  CLRP3.4</b></p><p>  MOVCA,@A+DPTR</p><p><b>  MOVP0,A</b></p&

47、gt;<p>  LCALLDELAY</p><p><b>  SETBP3.4</b></p><p><b>  CLRP3.2</b></p><p>  MOVP0,#40H;顯示分隔符</p><p>  LCALLDELAY</p>&l

48、t;p><b>  SETBP3.2</b></p><p>  MOVA,HOUR;顯示小時</p><p>  MOVB,#10</p><p><b>  DIVAB</b></p><p><b>  CLRP3.0</b></p>

49、;<p>  MOVCA,@A+DPTR</p><p><b>  MOVP0,A</b></p><p>  LCALLDELAY</p><p><b>  SETBP3.0</b></p><p><b>  MOVA,B</b></p

50、><p><b>  CLRP3.1</b></p><p>  MOVCA,@A+DPTR</p><p><b>  MOVP0,A</b></p><p>  LCALLDELAY</p><p><b>  SETBP3.1</b>&l

51、t;/p><p><b>  RET</b></p><p>  TABLE: DB 3FH,06H,5BH,4FH,66H</p><p>  DB6DH,7DH,07H,7FH,6FH</p><p>  DELAY:MOVR6,#10</p><p>  D1:MOVR7

52、,#250</p><p><b>  DJNZR7,$</b></p><p>  DJNZR6,D1</p><p><b>  RET</b></p><p><b>  END</b></p><p><b>  六、調(diào)試與運行&l

53、t;/b></p><p><b>  6.1 電路仿真</b></p><p>  此設(shè)計的電路在單片機仿真軟件[Proteus.Professional.7.1]中進行仿真,仿真電路如圖5-1所示:</p><p>  圖5-1 電子鐘仿真電路圖</p><p><b>  6.2 調(diào)試和運行<

54、/b></p><p>  在KEIL (單片機匯編) C51軟件中編寫好的程序,將程序放入單片機仿真軟件中,結(jié)合硬件電路進行調(diào)試與運行。</p><p>  通過按鍵對時間進行調(diào)整。如顯示時間為14-30-22,既是14點30分22秒,通過以下調(diào)整則可實現(xiàn)。</p><p>  按動S-SET鍵,將秒調(diào)到22;</p><p>  按

55、動M-SET鍵,將分調(diào)到30;</p><p>  按動H-SET鍵,將時調(diào)到14。</p><p>  則將時間調(diào)到了所要顯示的時間14-30-22,通過此方法可將時間調(diào)整到任何需要顯示的時間。</p><p><b>  七、PCB圖的設(shè)計</b></p><p><b>  總結(jié)</b><

56、;/p><p>  通過這次單片機課程設(shè)計,發(fā)現(xiàn)了自身所學(xué)知識存在許多的不足和問題,同時也學(xué)到了不少東西,提高了動手實踐的能力. </p><p>  在整個設(shè)計過程中,從設(shè)計方案的確定,到具體電路的設(shè)計,最后到總體電路的聯(lián)接構(gòu)建工程量是比較大的,單靠個人能力,很多方面考慮不周,有的地方甚至毫無頭緒,想不出具體方案,因此,絕對不能心急,不明白的地方和其它的同學(xué)共同討論研究,畢竟群策群力辦法要多

57、些。</p><p>  作為初學(xué)者,盡管這次設(shè)計中遇到了許多難題,但也都一一得以解決。比如程序編寫中,由于思路不清晰,開始時遇到了很多的問題,經(jīng)過靜下心來思考,和同學(xué)們的共同討論,理清了思路,反而得心應(yīng)手。</p><p>  雖然此次課程設(shè)計的作品有些簡單,但是通過自己的努力最終把電路成功設(shè)計出來,個人覺得還是很有成就感的,更為重要的是實實在在學(xué)到了不少東西,使自己這方面的知識技能有了

58、很大的進步。因此,我自己覺得這次課程設(shè)計對我而言算得上是一次全新的嘗試,也是一個小小的成功,更是一次很好的鍛煉,讓我有了全方位的提高和進步。</p><p><b>  九、設(shè)計相關(guān)說明</b></p><p><b>  元器件清單:</b></p><p><b>  單片機:80C51</b>&

59、lt;/p><p><b>  按鍵:BUTTON</b></p><p><b>  電阻:RES</b></p><p><b>  電容:CAP</b></p><p>  晶振:CRYSTAL</p><p>  LED數(shù)碼管:7SEG-MPX8-C

60、A-BLUE(CA:共陽,CC:共陰)</p><p><b>  地:GRAND</b></p><p><b>  電源:POWER</b></p><p><b>  十、參考文獻</b></p><p>  [1]《單片機原理與應(yīng)用》 宗成閣 編著</p>

溫馨提示

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

評論

0/150

提交評論