msp430設(shè)計(jì)數(shù)字秒表_第1頁
msp430設(shè)計(jì)數(shù)字秒表_第2頁
msp430設(shè)計(jì)數(shù)字秒表_第3頁
msp430設(shè)計(jì)數(shù)字秒表_第4頁
msp430設(shè)計(jì)數(shù)字秒表_第5頁
已閱讀5頁,還剩6頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、“最小系統(tǒng)設(shè)計(jì)實(shí)驗(yàn)答辯”“第七組” “萬事屋” “隊(duì)員:范昊洋 周云浩 姚冠” “數(shù)字秒表系統(tǒng)設(shè)計(jì)”整體簡述1思考過程2作品技術(shù)實(shí)現(xiàn)展示3作品完整度展示4團(tuán)隊(duì)協(xié)作展示5錄目目整體簡述: 設(shè)計(jì)設(shè)計(jì)作品作品 本次試驗(yàn)制作的是一個(gè)數(shù)字秒表。根據(jù)題目要求,設(shè)計(jì)一個(gè)有暫停,清零功能的數(shù)字秒表設(shè)備。 如右圖即為硬件系統(tǒng)框圖整體簡述: 設(shè)計(jì)設(shè)計(jì)作品作品 采取的技術(shù)路線:在主函數(shù)中,對硬件進(jìn)行初始化操作,然后循環(huán)檢測按鍵輸入和顯示當(dāng)前計(jì)數(shù)值的操作。設(shè)置定時(shí)器的頻率為1Hz,每次中斷計(jì)數(shù)值自加一,以實(shí)現(xiàn)要求。程序分析 設(shè)計(jì)目的:檢測按鍵情況,并進(jìn)行相應(yīng)操作。 1.當(dāng)清零按鍵按下后,延時(shí)消抖,數(shù)據(jù)清零,然后清空當(dāng)

2、前屏幕上的顯示值。 2.當(dāng)暫停按鍵按下時(shí),改變模式(當(dāng)其為0時(shí)讓它變?yōu)?,是1時(shí)讓它變?yōu)?)。按鍵部分程序分析:void keyscan()if(!(P2IN&BIT1)=1) delay(10); num = 0; LCD_CLS(); if(!(P1IN&BIT1)=1) delay(10); if(mode)mode = 0; else mode = 1; 程序分析 設(shè)計(jì)目的:檢測按鍵情況,顯示當(dāng)前計(jì)數(shù)值,并讓LED燈做出相應(yīng)反應(yīng) 大部分語句是為了實(shí)現(xiàn)當(dāng)顯示數(shù)據(jù)長度不同時(shí)顯示不同的長度。主程序循環(huán)部分程序分析:while(1) keyscan(); if(num10) L

3、CD_ShowNum(0,0,num,1,16); else if(num9) LCD_ShowNum(0,0,num,2,16); else if(num99) LCD_ShowNum(0,0,num,3,16); else if(num999) LCD_ShowNum(0,0,num,4,16); else LCD_ShowNum(0,0,num,5,16); /控制顯示位數(shù) led(num); 程序分析 設(shè)計(jì)目的:設(shè)置定時(shí)器和定時(shí)器中斷 設(shè)置部分: 1.TACCR0是TA0定時(shí)器的重裝載值,當(dāng)計(jì)數(shù)器值達(dá)到該值的時(shí)候溢出產(chǎn)生中斷。 2.TA0CCTL0寄存器管理中斷使能 3.TA0CTL控

4、制寄存器的掛在時(shí)鐘線路,預(yù)分頻,計(jì)數(shù)模式,自動(dòng)清除中斷標(biāo)志等。 定時(shí)器中斷部分: 每秒讓計(jì)數(shù)值自加一。定時(shí)器部分程序分析:void timer_a_ioset(void) TA0CCR0 = 32768; / 定義中斷計(jì)數(shù)周期1s,時(shí)鐘頻率為32.768MHZ,32768 / 32768 = 1s TA0CCTL0 = CCIE; / TA0CCR0捕獲/比較中斷寄存器中斷使能 TA0CTL|=TASSEL_1+MC_1 +TACLR +ID_0;#pragma vector = TIMER0_A0_VECTOR _interrupt void Timer_A0(void) / 定時(shí)器中斷觸發(fā)

5、,P3輸出口異或,電平翻轉(zhuǎn) if(mode = 0) num = num +1; 程序分析#define MC_0 (0*0 x10u) /* Timer A mode control: 0 - Stop */#define MC_1 (1*0 x10u) /* Timer A mode control: 1 - Up to CCR0 */#define MC_2 (2*0 x10u) /* Timer A mode control: 2 - Continuous up */#define MC_3 (3*0 x10u) /* Timer A mode control: 3 - Up/Down

6、 */#define ID_0 (0*0 x40u) /* Timer A input divider: 0 - /1 */#define ID_1 (1*0 x40u) /* Timer A input divider: 1 - /2 */#define ID_2 (2*0 x40u) /* Timer A input divider: 2 - /4 */#define ID_3 (3*0 x40u) /* Timer A input divider: 3 - /8 */#define TASSEL_0 (0*0 x100u) /* Timer A clock source select:

7、0 - TACLK */#define TASSEL_1 (1*0 x100u) /* Timer A clock source select: 1 - ACLK */#define TASSEL_2 (2*0 x100u) /* Timer A clock source select: 2 - SMCLK */#define TASSEL_3 (3*0 x100u) /* Timer A clock source select: 3 - INCLK */#define TACLR (0 x0004u) /* Timer A counter clear */#define TAIE (0 x0002u) /* Timer A counter interrupt enable */#define TAIFG (0 x0001u) /* Timer A counter interrupt flag */以下展示部分庫文件中的設(shè)置: 從左側(cè)可看出,我們選擇的設(shè)置TASSEL_1+MC_1 +TACLR +ID_0操作為:時(shí)鐘掛載ACLK,定時(shí)器計(jì)數(shù)器自動(dòng)清除,

溫馨提示

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

評論

0/150

提交評論