智能车制作
标题:
各位帮我看下这段Coldfire MCF52255的通用定时器GPT模块的计时程序有什么问题啊
[打印本页]
作者:
啊变变变
时间:
2013-11-27 20:13
标题:
各位帮我看下这段Coldfire MCF52255的通用定时器GPT模块的计时程序有什么问题啊
void GPT_Init(GPTSet setinfo)
{
//1、禁止GPT
DisableGPT;
//2、设置GPT时钟
MCF_GPT_GPTSCR2 |= MCF_GPT_GPTSCR2_PR(setinfo.PR);
//3、设置GPT中断级别并清GPT溢出中断屏蔽标志
MCF_INTC0_ICR41 = MCF_INTC_ICR_IL(setinfo.IL)
| MCF_INTC_ICR_IP(setinfo.IP);
MCF_INTC0_IMRH &= ~MCF_INTC_IMRH_INT_MASK41;
MCF_INTC0_IMRL &= ~MCF_INTC_IMRL_MASKALL;
//4、清GPT计数器
MCF_GPT_GPTCNT = 0x0000;
}
void GPT_init(void)
{
GPTSet setinfo =
{
3,
3,
3,
};
GPT_Init(setinfo);
}
__declspec(interrupt) void GPTTO_Interrupt(void)
{
DisableInterrupts; //关总中断
TimeOverCount++;
if (TimeOverCount >= 7)
{
secend++; //秒加1
TimeOverCount = 0;
}
MCF_GPT_GPTFLG2 |= MCF_GPT_GPTFLG2_TOF; //清GPT溢出中断标志
EnableInterrupts; //开总中断
}
复制代码
作者:
啊变变变
时间:
2013-11-27 20:18
中断向量也配置了,怎么就进不去中断呢?
作者:
啊变变变
时间:
2013-11-27 20:31
问题已经解决,没有对MCF_GPT_GPTSCR2操作使其允许计时器溢出中断 只要在初始化中加上MCF_GPT_GPTSCR2 |= 0x80 即可
作者:
ww2811
时间:
2014-7-5 23:20
GPTCNT寄存器可以手动清零么?
欢迎光临 智能车制作 (http://dns.znczz.com/)
Powered by Discuz! X3.2