jundao721 发表于 2026-7-20 15:50:52

【瑞萨RA-eco-RA6M4评测】3.定时器中断

了解了中断添加方式,外设里必须先学习定时器,后面的很多项目都要用到。先简单的从普通定时器定时中断开始。
在FSP Configuration 中的Pin 中只需要定义LED 的Pin 即可,如图1所示:

图1
然后在Stacks中添加定时器timer, 属性中配置timer 为周期型,如图2所示:

图2

可以看到Period 中配置为90KHz, 因为clock 中,PCLKD为90MHz,配置为1ms中断一次。然后点击Generate Project Content ,生成应用code。


在主程序中添加中断和初始化程序,如下所示:
void time0_callback(timer_callback_args_t *p_args)

{

       /* TODO: add your own code here */

       if (TIMER_EVENT_CYCLE_END == p_args->event)

       {

      count++;

      if(count>1000)

      {

            count=0;

            if(flag)

            R_IOPORT_PinWrite(&g_ioport_ctrl, BSP_IO_PORT_04_PIN_04, BSP_IO_LEVEL_HIGH);

            else

            R_IOPORT_PinWrite(&g_ioport_ctrl, BSP_IO_PORT_04_PIN_04, BSP_IO_LEVEL_LOW);



            flag= ~flag;

      }

       }


}
右键build project, 生成需要的elf 文件,然后debug。最终效果如图3所示:

图3


满足初始预期。

页: [1]
查看完整版本: 【瑞萨RA-eco-RA6M4评测】3.定时器中断

Baidu
map