首页资源分类嵌入式系统 > LPC4357学习笔记-TIMER

LPC4357学习笔记-TIMER

已有 445117个资源

下载专区

文档信息举报收藏

标    签:LPC4357TIMER

分    享:

文档简介

LPC4357学习笔记-UART3

文档预览

LPC4357学习笔记-UART3 作者:BLUEFLAME 20140404 见手册UM10503-Rev. 1.8 — 28 January 2014 P1102 寄存器如下 IR-------------中断寄存器 TCR------------定时器控制寄存器 TC-------------定时器计数器 PR-------------预分频寄存器 PC-------------预分频计数器 MCR------------匹配控制寄存器 MR0------------匹配寄存器0 MR1------------匹配寄存器1 MR2------------匹配寄存器2 MR3------------匹配寄存器3 CCR------------捕获控制寄存器 CR0------------捕获寄存器0 CR1------------捕获寄存器1 CR2------------捕获寄存器2 CR3------------捕获寄存器3 EMR------------外部匹配寄存器 CTCR-----------计数控制寄存器 //----------------------------------------------------------------------------// //1使能时钟 Chip_TIMER_Init(LPC_TIMER1); void Chip_TIMER_Init(LPC_TIMER_T *pTMR) Chip_Clock_Enable(Chip_TIMER_GetClockIndex(pTMR)); void Chip_Clock_Enable(CHIP_CCU_CLK_T clk) { /* Start peripheral clock running */ if (clk >= CLK_CCU2_START) { LPC_CCU2->CLKCCU[clk - CLK_CCU2_START].CFG |= 1; } else { LPC_CCU1->CLKCCU[clk].CFG |= 1; } } //2复位TIM0 Chip_RGU_TriggerReset(RGU_TIMER1_RST); void Chip_RGU_TriggerReset(CHIP_RGU_RST_T ResetNumber) //3获取定时器0的时钟频率 LPC_CGU_Type timerFreq = Chip_Clock_GetRate(CLK_MX_TIMER1); uint32_t Chip_Clock_GetRate(CHIP_CCU_CLK_T clk) baseclk = Chip_Clock_FindBaseClock(clk);//获取基本时钟该外设时钟 rate = Chip_Clock_GetBaseClocktHz(baseclk);//获取基本时钟速率 //4复位计数器 void Chip_TIMER_Reset(LPC_TIMER_T *pTMR) { uint32_t reg; /* Disable timer, set terminal count to non-0 */ reg = pTMR->TCR; pTMR->TCR = 0; pTMR->TC = 1; /* Reset timer counter */ pTMR->TCR = TIMER_RESET; /* Wait for terminal count to clear */ while (pTMR->TC != 0) {} /* Restore timer state */ pTMR->TCR = reg; } //5设定定时周期 Chip_TIMER_SetMatch(LPC_TIMER1, 1, (timerFreq / TICKRATE_HZ)); //6 Chip_TIMER_ResetOnMatchEnable(LPC_TIMER1, 1);

Top_arrow
回到顶部
EEWORLD下载中心所有资源均来自网友分享,如有侵权,请发送举报邮件到客服邮箱bbs_service@eeworld.com.cn 或通过站内短信息或QQ:273568022联系管理员 高进,我们会尽快处理。