版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、實(shí)驗(yàn)3、定時(shí)器實(shí)驗(yàn)【實(shí)驗(yàn)?zāi)康摹空莆誏PC1768函數(shù)庫(kù)的使用;掌握LPC1768定時(shí)器的編程;掌握LPC1768脈寬調(diào)制的編程;了解中斷服務(wù)函數(shù)的編寫方法?!緦?shí)驗(yàn)步驟】.用定時(shí)器中斷的實(shí)現(xiàn) 1Hz的方波,在P2.0上的LED進(jìn)行顯示。.用定時(shí)器的匹配功能實(shí)現(xiàn)1路1Hz的PWM在P2.0上的LED進(jìn)行顯示。. 用硬件PW棋現(xiàn)6路1Hz的PWM在P2.0-P2.6 上的LED進(jìn)行顯示。.用定時(shí)器中斷實(shí)現(xiàn)時(shí)分秒時(shí)鐘,在LCD進(jìn)行顯示,并用按鍵對(duì)小時(shí)和分鐘進(jìn)行修改?!緦?shí)驗(yàn)程序】1、定時(shí)器中斷程序*#include LPC17xx.h#include lpc17xx_clkpwr.h#include l
2、pc17xx_timer.h#include lpc17xx_nvic.h#include lpc17xx_gpio.hvoid Timer_init()TIM_TIMERCFG_Type TMR_Cfg;TIM_MATCHCFG_Type TMR_Match;/* definition for led */* On reset, Timer0/1 are enabled (PCTIM0/1 = 1), and Timer2/3 are disabled (PCTIM2/3 = 0).*/* Initialize timer 0, prescale count time of 1000uS *
3、/TMR_Cfg.PrescaleOption = TIM_PRESCALE_USV AL;TMR_Cfg.PrescaleValue = 1000;TIM_Init(LPC_TIM0, TIM_TIMER_MODE, &TMR_Cfg);/* Use channel 0, MR0 */TMR_Match.MatchChannel = 0;/* Enable interrupt when MR0 matches the value in TC register */ TMR_Match.IntOnMatch = ENABLE;/* Enable reset on MR0: TIMER will
4、 reset if MR0 matches it */ TMR_Match.ResetOnMatch = TRUE;/* Dont stop on MR0 if MR0 matches it*/TMR_Match.StopOnMatch = FALSE;/* Do nothing for external output pin if match (see cmsis help, there are another options)*/TMR_Match.ExtMatchOutputType = TIM_EXTMATCH_NOTHING;/* Set Match value, count val
5、ue of 200 (200 * 1000uS = 200000us = 0.2s - 5 Hz) */ TMR_Match.MatchValue = 499;/* Set configuration for Tim_config and Tim_MatchConfig */ TIM_ConfigMatch(LPC_TIM0, &TMR_Match);/* Preemption = 1, sub-priority = 1 */NVIC_SetPriority(TIMER0_IRQn, (0 x013)0 x01);/* Enable interrupt for timer 0 */NVIC_E
6、nableIRQ(TIMER0_IRQn);/* Start timer 0 */TIM_Cmd(LPC_TIM0, ENABLE);void TIMER0_IRQHandler (void)static uint8_t m=0;if(TIM_GetIntStatus(LPC_TIM0,TIM_MR0_INT)=SET)if(m=0)GPIO_SetValue(2,1); m=1;elseGPIO_ClearValue(2,1); m=0;)TIM_ClearIntPending(LPC_TIM0,TIM_MR0_INT);)return;)int main (void)(SystemInit
7、();Timer_init();GPIO_SetDir(0,121,1);GPIO_SetValue(0,1 5 Hz) */ TMR_Match.MatchValue = 99;/* Set configuration for Tim_config and Tim_MatchConfig */ TIM_ConfigMatch(LPC_TIM0, &TMR_Match);TMR_Match.MatchChannel = 1;TMR_Match.ResetOnMatch = FALSE;TMR_Match.IntOnMatch = ENABLE;TMR_Match.MatchValue = 10
8、;TIM_ConfigMatch(LPC_TIM0, &TMR_Match);/* Preemption = 1, sub-priority = 1 */NVIC_SetPriority(TIMER0_IRQn, (0 x013)0 x01);/* Enable interrupt for timer 0 */NVIC_EnableIRQ(TIMER0_IRQn);/* Start timer 0 */TIM_Cmd(LPC_TIM0, ENABLE);void TIMER0_IRQHandler (void)if(TIM_GetIntStatus(LPC_TIM0,TIM_MR0_INT)=
9、SET)GPIO_SetValue(2,1);TIM_ClearIntPending(LPC_TIM0,TIM_MR0_INT);)if(TIM_GetIntStatus(LPC_TIM0,TIM_MR1_INT)=SET)GPIO_ClearValue(2,1);TIM_ClearIntPending(LPC_TIM0,TIM_MR1_INT);)return;)int main (void)SystemInit();Timer_init();GPIO_SetDir(0,121,1);GPIO_SetValue(0,121);GPIO_SetDir(2,0 xff,1);GPIO_SetVa
10、lue(2,1);while(1);)3、硬件PWM#include lpc17xx_pwm.h#include lpc17xx_pinsel.h#include lpc_types.hvoid PWM_Dual(void)uint8_t temp;PWM_TIMERCFG_Type PWMCfgDat;PWM_MATCHCFG_Type PWMMatchCfgDat;PINSEL_CFG_Type PinCfg;/* PWM block section*/* Initialize PWM peripheral, timer mode* PWM prescale value = 1 (abso
11、lute value - tick value)*/PWMCfgDat.PrescaleOption = PWM_TIMER_PRESCALE_TICKV AL;PWMCfgDat.PrescaleValue = 300000;PWM_Init(LPC_PWM1, PWM_MODE_TIMER, (void *) &PWMCfgDat);/* Initialize PWM pin connect*/PinCfg.Portnum = 2;PinCfg.Funcnum = 1;PinCfg.OpenDrain=0;PinCfg.Pinmode = 0;for (temp=0; temp6; tem
12、p+)PinCfg.Pinnum=temp;PINSEL_ConfigPin(&PinCfg);/* Set match value for PWM match channel 0 = 100, update immediately */PWM_MatchUpdate(LPC_PWM1, 0, 100, PWM_MATCH_UPDATE_NOW);/* PWM Timer/Counter will be reset when channel 0 matchingno interrupt when matchno stop when match*/PWMMatchCfgDat.IntOnMatc
13、h = DISABLE;PWMMatchCfgDat.MatchChannel = 0;PWMMatchCfgDat.ResetOnMatch = ENABLE;PWMMatchCfgDat.StopOnMatch = DISABLE;PWM_ConfigMatch(LPC_PWM1, &PWMMatchCfgDat);/* Match value setting*/PWM_MatchUpdate(LPC_PWM1, 1, 10, PWM_MATCH_UPDATE_NOW);PWM_MatchUpdate(LPC_PWM1, 2, 20, PWM_MATCH_UPDATE_NOW);PWM_M
14、atchUpdate(LPC_PWM1, 3, 30, PWM_MATCH_UPDATE_NOW);PWM_MatchUpdate(LPC_PWM1, 4, 40, PWM_MATCH_UPDATE_NOW);PWM_MatchUpdate(LPC_PWM1, 5, 50, PWM_MATCH_UPDATE_NOW);*/PWM_MatchUpdate(LPC_PWM1, 6, 60, PWM_MATCH_UPDATE_NOW);/* Match option settingPWMMatchCfgDat.IntOnMatch = DISABLE;PWMMatchCfgDat.ResetOnMa
15、tch = DISABLE;PWMMatchCfgDat.StopOnMatch = DISABLE;for(temp = 0; temp 6; temp+)PWMMatchCfgDat.MatchChannel = temp+1;PWM_ConfigMatch(LPC_PWM1, &PWMMatchCfgDat);*/* Enable PWM Channel OutputPWM_ChannelCmd(LPC_PWM1, 1, ENABLE);PWM_ChannelCmd(LPC_PWM1, 2, ENABLE);PWM_ChannelCmd(LPC_PWM1, 3, ENABLE);PWM_
16、ChannelCmd(LPC_PWM1, 4, ENABLE);PWM_ChannelCmd(LPC_PWM1, 5, ENABLE);PWM_ChannelCmd(LPC_PWM1, 6, ENABLE);/* Reset and Start counter */PWM_ResetCounter(LPC_PWM1);PWM_CounterCmd(LPC_PWM1, ENABLE);/* Start PWM now */PWM_Cmd(LPC_PWM1, ENABLE);int main (void)int mm,ts;GPIO_SetDir(0,121,1);GPIO_SetValue(0,
17、121);GPIO_SetDir(2,36,1);GPIO_ClearValue(2,36);SystemInit();PWM_Dual();while(1);4、時(shí)鐘LCD#include LPC17xx.h#include lpc17xx_clkpwr.h#include lpc17xx_timer.h#include lpc17xx_nvic.h#include lpc17xx_gpio.h#include string.h#include GLCD.h#define SELECT (125)#define DOWN (126)#define LEFT (127)#define RIGH
18、T (128)#define UP (1 5 Hz) */ TMR_Match.MatchValue = 199;/* Set configuration for Tim_config and Tim_MatchConfig */ TIM_ConfigMatch(LPC_TIM0, &TMR_Match);/* Preemption = 1, sub-priority = 1 */NVIC_SetPriority(TIMER0_IRQn, (0 x01=5)ds=0;if(+miao=60)miao=0;if(+fen=60)fen=0;if(+shi=24) shi=0;return;void GLCD_DispWord(int r,int l,int x,int m)(int str8,i;for(i=0;im;i+)(stri=x%10+0;x=x/10;)for(i=0;im;i+)(GLCD_DisplayChar(r,l+i,strm-1-
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024版企業(yè)試用期間勞動(dòng)協(xié)議模板版B版
- 2024模具制造與銷售培訓(xùn)合作合同3篇
- 2022年中考地理一輪復(fù)習(xí):中國(guó)的疆域
- 2022年食品安全監(jiān)管員業(yè)務(wù)水平考核試題D卷 附答案
- 2024年連鎖門店員工協(xié)議模板版B版
- 2024年花園建設(shè)合同模板3篇
- 2024年露天礦山施工與礦石開采業(yè)務(wù)合作合同版B版
- 勞務(wù)派遣的崗位分類協(xié)議書
- 加盟模式協(xié)議書(2篇)
- 2024未成年人安全教育與社會(huì)實(shí)踐合作合同3篇
- 西方國(guó)家的量刑建議制度及其比較
- 游戲方案模板
- 幼兒園大班數(shù)學(xué)上學(xué)期期末考試-試題測(cè)試
- 地震預(yù)警安裝方案
- 汽車產(chǎn)品定義 培訓(xùn)課件
- NICU患兒常規(guī)監(jiān)測(cè)和護(hù)理要點(diǎn)
- 光伏并網(wǎng)前單位工程驗(yàn)收?qǐng)?bào)告-2023
- 高血壓急癥的緊急處理與護(hù)理
- 數(shù)字工程勘察信息平臺(tái)構(gòu)建
- 噴涂設(shè)備保養(yǎng)和維護(hù)操作規(guī)程
- 中國(guó)特色社會(huì)主義理論與實(shí)踐復(fù)習(xí)資料-研究生
評(píng)論
0/150
提交評(píng)論