瑞萨RA MCU众测宝典 SysTick之RA0E1定时器点灯

描述

RA MCU众测宝典” SysTick专题来啦!在上个的环境搭建专题中,我们已经筑牢了开发基础,而这次,我们要聚焦一个让程序“有节奏”运行的关键角色——SysTick定时器。瑞萨嵌入式小百科将和大家一起,基于【RA-Eco-RA0E1-32PIN-V1.0】开发板,一步步实现用 SysTick定时器点灯,感受时间控制在嵌入式开发中的奇妙作用。

开启宝典

#Systick定时器 就是系统一个简单的24位的倒计数定时器。

mcu

点击可查看大图

开发板软件mdk5调试时可显示运行时寄存器的状态:

mcu

点击可查看大图

打开RASC,先选好安装目录,以及工程名称选择好芯片。

mcu

点击可查看大图

以及编译工具一路next就可以创建,修改pin引脚,时钟和引脚图:

mcu

点击可查看大图

工程最后在Summary中,可以看到工程生成选项,点击以后就可以mdk工程打开MDK工程。

mcu

点击可查看大图

创建了就完成了MDK工程的创建。

mcu

点击可查看大图

打开MDK工程在,在hal_entry.c中 /* TODO: add your own code here */ 加入自己代码。

左右滑动查看完整内容

 

while(1)
{
    R_IOPORT_PinWrite(&g_ioport_ctrl, BSP_IO_PORT_01_PIN_03, 0);
    R_IOPORT_PinWrite(&g_ioport_ctrl, BSP_IO_PORT_01_PIN_12, 0);
    Systick1();


    R_IOPORT_PinWrite(&g_ioport_ctrl, BSP_IO_PORT_01_PIN_03, 1);
    R_IOPORT_PinWrite(&g_ioport_ctrl, BSP_IO_PORT_01_PIN_12, 0);
    Systick1();


    R_IOPORT_PinWrite(&g_ioport_ctrl, BSP_IO_PORT_01_PIN_03, 1);
    R_IOPORT_PinWrite(&g_ioport_ctrl, BSP_IO_PORT_01_PIN_12, 1);
    Systick1();
}

 

在void hal_entry(void)程序前加入Systick1()

左右滑动查看完整内容

 

voidSystick1()
{
    SysTick ->CTRL = 0;
    SysTick-> LOAD =0xFFFFFF; //???? 255~(256 ???)
    SysTick -> VAL =0; //??????????
    SysTick ->CTRL= 5; //?? SysTick ???????????
    while((SysTick->CTRL&0x00010000)==0); //????????
    SysTick->CTRL = 0;
}

 

编译完成。

左右滑动查看完整内容

 

Program Size: Code=1736 RO-data=232 RW-data=0 ZI-data=1652  
FromELF: creating hex file...
After Build - User command #1: cmd /c "start "Renesas" /w cmd /c ""E:lst
a0e1-20240827154516123FSP_Projectnew
asc_launcher.bat""E:lst
a0e1-20240827154516123FSP_Projectnew
asc_version.txt" -nosplash --launcher.suppressErrors --gensmartbundle --compiler ARMv6 --devicefamily ra "E:lst
a0e1-20240827154516123FSP_Projectnewconfiguration.xml""E:lst
a0e1-20240827154516123FSP_ProjectnewObjectsFSP_Project.axf"2> "%TEMP%
asc_stderr.out"""
".ObjectsFSP_Project.axf" - 0 Error(s), 44 Warning(s).
Build Time Elapsed:  00:00:29```

 


* 烧录达到预期状态。*

以上就是【RA-Eco-RA0E1-32PIN-V1.0】开发板在Systick方面的评测内容。

从工程创建时的引脚与时钟配置,到代码中通过 SysTick精准控制LED的亮灭状态,每一个步骤都展现了定时器在嵌入式开发中的价值。

 

如果你在实操中对代码逻辑或配置细节有不同见解,欢迎在评论区留言交流。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分