NXP MCU 技术论坛
直播中

王越建

7年用户 1464经验值
私信 关注
[问答]

PIT中断处理程序未在KL26Z上触发是怎么回事?

我有一个 FRDM-KL26Z 板,我试图使用 PIT 来获得中断,但它失败了。
我正在做的事情:
- 声明应该打印一行文本的 PIT 处理程序
void PIT_IRQHandler(void)
{
        PRINTF(\"PIT_IRQHandler \\r\\n\");
}- 设置坑
    unsigned int *sim_scgc6 = (unsigned int *) 0x4004803C;
    *sim_scgc6 |= 1U << 23; // enable clock gate PIT

    unsigned int *pit_mcr = (unsigned int *) 0x40037000;
    *pit_mcr &= ~(1U << 1); // enable PIT
    *pit_mcr &= ~(1U << 0); // timer continues in debug mode

    unsigned int *pit_ldval0 = (unsigned int *) 0x40037100;
    // *pit_ldval0 = 0x0003E7FF; // setup timer 1 for 256000 cycles
    *pit_ldval0 = 0xF;

    unsigned int *pit_tctrl0 = (unsigned int *) 0x40037108;
    *pit_tctrl0 |= 1U << 1; // enable interrupt
    *pit_tctrl0 |= 1U; // start timer- 然后进入无限循环
我没有从 PIT 处理程序获取线路。
我附上了完整的代码。这是我想念的东西吗?在调试模式下,我看到计时器发生变化并且设置了 TIF 标志,但未执行处理程序。

                                       

更多回帖

发帖
×
20
完善资料,
赚取积分