K210定时器中断

2021-07-124849
AI 快速预览详细 收起
本文讨论了在使用Maix Bit板子进行K210定时器点灯实验时遇到的问题。通过修改中断回调函数中的标志变量i的条件,解决了500ms中断间隔下LED不亮的问题,成功实现了2秒间隔的亮灭效果。文章详细解析了定时器配置、中断回调函数的设置以及硬件初始化步骤,帮助读者快速定位问题并修复。

今天用maix bit板子试了一下定时器点灯,芯片是K210,下面是定时器配置和中断回调函数,

K210定时器中断图1

500ms发生一次中断,然后在回调函数里定义一个i作为标志,也就是间隔1秒亮灭,但是最后烧录发现LED等不亮,但是我把if语句里的条件改成4和8,LED就可以间隔两秒亮灭了,这是为什么?只是改了数字,为什么一个可以一个不可以?问一下可能会是哪里出问题了呢


(下面是main函数里相关的初始化)

hardware_init();      /* 设置IO口电压 */    io_set_power();    /* 设置系统时钟和DVP时钟 */    sysctl_pll_set_freq(SYSCTL_PLL0, 800000000UL);    sysctl_pll_set_freq(SYSCTL_PLL1, 300000000UL);    sysctl_pll_set_freq(SYSCTL_PLL2, 45158400UL);    uarths_init();    //系统中断初始化,    plic_init();    //&&:dvp中断配置        // dvp_cam_init();    // dvp_cam_set_irq();    //初始化定时器    init_time();    //使能全局中断*/    sysctl_enable_irq();


创作许可协议

本项目采用 None(不开放任何权利,保留所有权利) 进行许可。

评论(1)
又菜又要玩
又菜又要玩
作者
我刚刚也试过把中断间隔时间改一下,发现当间隔为1秒时,if条件写成2和4是可以的,但是当间隔为500ms时就不行
- 没有更多了 -