中级会员
- 积分
- 379
- 威望
- 203
- 贡献
- 112
- 兑换币
- 119
- 注册时间
- 2013-10-14
- 在线时间
- 32 小时
|
//-------------------------------------------------------------------------*
//函数名MA脉冲计数初始化 *
//功 能: 脉冲计数 *
//参 数:无 *
//返 回:无 *
//-------------------------------------------------------------------------*
void DMA_count(void)
{
//设置TC口 0 1 为DMA定时功能
MCF_GPIO_PTCPAR|=MCF_GPIO_PTCPAR_DTIN0_DTIN0|MCF_GPIO_PTCPAR_DTIN1_DTIN1;
//设置DTM模式寄存器
MCF_DTIM_DTMR(0)|=MCF_DTIM_DTMR_CE_NONE //不进行捕捉
|MCF_DTIM_DTMR_CLK_DTIN //外部时钟源
|MCF_DTIM_DTMR_FRR;//触发事件之后计数值清零
MCF_DTIM_DTMR(1)|=MCF_DTIM_DTMR_CE_NONE //不进行捕捉
|MCF_DTIM_DTMR_CLK_DTIN //外部时钟源
|MCF_DTIM_DTMR_FRR;//触发事件之后计数值清零
MCF_DTIM_DTRR(0)=0xFFFFFFFF;//计数器基准值,32位,可以计到0xFFFFFFFF
MCF_DTIM_DTRR(1)=0xFFFFFFFF;//计数器基准值,32位,可以计到0xFFFFFFFF
MCF_DTIM0_DTCN=0x00;//清零计数器
MCF_DTIM1_DTCN=0x00;//清零计数器
MCF_DTIM_DTMR(0) |= MCF_DTIM_DTMR_RST;
MCF_DTIM_DTMR(1) |= MCF_DTIM_DTMR_RST;
}
//-------------------------------------------------------------------------*
//函数名:获取DMA脉冲计数 计数值 0 *
//功 能: *
//参 数:无 *
//返 回:计数值 *
//-------------------------------------------------------------------------*
uint32 GET_count0(void)
{
uint32 count0;
count0=(uint32)MCF_DTIM0_DTCN;
MCF_DTIM0_DTCN=0x00;
return count0;
}
//-------------------------------------------------------------------------*
//函数名:获取DMA脉冲计数 计数值 0 *
//功 能: *
//参 数:无 *
//返 回:计数值 *
//-------------------------------------------------------------------------*
uint32 GET_count1(void)
{
uint32 count1;
count1=(uint32)MCF_DTIM1_DTCN;
MCF_DTIM1_DTCN=0x00;
return count1;
}
帮你们一次吧...这个真心查手册就可以搞定的 |
|