0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

投稿 | 基于IAR仿真RA低功耗

RA生态工作室 2022-11-04 10:39 次阅读

RA MCU 生态工作室致力于构建一个完善的 RA 生态,这将会是一个好玩有趣的开放社区,也提供各种RA相关问题的解决方法。

1.概述

为实现RA进入Deep software standby mode 后能保持Jlink仿真连接,唤醒DS(Deep software standby mode)后芯片复位也能保持Jlink仿真。本文档是基于RA4M2芯片做测试实现。(理论上RA所有芯片都通用)

2.配置说明

根据芯片手册文档说明是支持DeepSoftware Standby mode仿真的,需要做一些配置,并且Jlink也需要配置打开Low Power Debug,Jlink仿真的Low Power Debug默认是关闭的,需要做一些配置。

下图为芯片手册说明(详细的配置寄存器请自行看手册):

50ba60e6-0f69-11ed-9ade-dac502259ad0.png

下图为Jlink文档上边的Low Power Debugging说明(我们是属于文档中介绍的第4种模式):

50dabd1e-0f69-11ed-9ade-dac502259ad0.png

根据Jlink文档中的介绍相关配置相关的说明如下图所示(文档链接:https://wiki.segger.com/Generic_IDE#Low_power_debugging

51018df4-0f69-11ed-9ade-dac502259ad0.png

由上总结需要通过IAR链接配置Jlink script file 跟Jlink setting file。

3.代码

Jlink script file 内容如下图所示(需要自行新建.JLinkScript 文件放IAR工程目录下边):

510c0ff4-0f69-11ed-9ade-dac502259ad0.png

源码:

void clear_DBIRQ( void )
{
JLINK_CORESIGHT_WriteDP( 2, ( 1 << 24 ) | ( 0 << 4 ) ); // Select AP[1], bank 0
JLINK_CORESIGHT_WriteAP( 0, ( 0 ) | ( 2 << 0 ) | ( 1 << 31 ) ); // AP-access size. Fixed to 2: 32-bit  // Enable software access to the Debug APB bus.
JLINK_CORESIGHT_WriteAP(1, 0x80000410); //MCUCTRL register
JLINK_CORESIGHT_WriteAP( 3, 0x00000000 ); //Clear DBIRQ bit
JLINK_MEM_WriteU16( 0x4001E3FE, 0xA502 ); // PRCR register. Enable access to SYOCDCR register
JLINK_MEM_WriteU8( 0x4001E40E, 0x80 );  // SYOCDR register, set DBGEN bit
JLINK_MEM_WriteU8(0x4001E407, 0x00);    // SYOCDR register, set DBGEN bit
JLINK_MEM_WriteU16( 0x4001E3FE, 0xA500 ); // PRCR register. Disable access to SYOCDCR register
}
void InitTarget( void )
{
clear_DBIRQ();
}
void SetupTarget( void )
{
clear_DBIRQ();
}
int InitEMU(void) {
JLINK_ExecCommand("EnableLowPowerHandlingMode");
return 0;


Jlink setting file文件配置如下图所示(文件所在目录为IAR工程下边的settings\工程名_Debug.jlink)

5136868a-0f69-11ed-9ade-dac502259ad0.png

源码:


[BREAKPOINTS]
ForceImpTypeAny = 0
ShowInfoWin = 1
EnableFlashBP = 2
BPDuringExecution = 0
[CFI]
CFISize = 0x00
CFIAddr = 0x00
[CPU]
MonModeVTableAddr = 0xFFFFFFFF
MonModeDebug = 0
MaxNumAPs = 0
LowPowerHandlingMode = 1
OverrideMemMap = 0
AllowSimulation = 1
ScriptFile=""
[FLASH]
EraseType = 0x00
CacheExcludeSize = 0x00
CacheExcludeAddr = 0x00
MinNumBytesFlashDL = 0
SkipProgOnCRCMatch = 1
VerifyDownload = 1
AllowCaching = 1
EnableFlashDL = 2
Override = 0
Device="ARM7"
[GENERAL]
WorkRAMSize = 0x3000
WorkRAMAddr = 0x2000D000
RAMUsageLimit = 0x00
[SWO]
SWOLogFile=""
[MEM]
RdOverrideOrMask = 0x00
RdOverrideAndMask = 0xFFFFFFFF
RdOverrideAddr = 0xFFFFFFFF
WrOverrideOrMask = 0x00
WrOverrideAndMask = 0xFFFFFFFF
WrOverrideAddr = 0xFFFFFFFF

IAR 需要增加调用.JLinkScript文件命令,如下图所示(命令:--jlink_script_file=$PROJ_DIR$/DS_MODE_debug.JLinkScript):

5183dab6-0f69-11ed-9ade-dac502259ad0.png

配置好后就可以仿真低功耗了。注意:仿真状态下的功耗并无参考价值,如需实际需脱机测试。

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

    关注

    146

    文章

    16980

    浏览量

    350216
收藏 人收藏

    评论

    相关推荐

    RA-Eco-RA2E1-48PIN-V1.0开发板试用】开发板介绍和环境搭建

    为主控芯片,拥有丰富的外设,集成度高功能非常强大,具有优越的性能和低功耗RA2E1 产品群是 RA 系列的入门级单芯片微控制器,基于48 MHz Arm® Cortex®-M23 内核,具有高**达
    发表于 11-09 17:16

    RA-Eco-RA2E1-48PIN-V1.0开发板试用】开发板介绍&amp;环境搭建

    为主控芯片,拥有丰富的外设,集成度高功能非常强大,具有优越的性能和低功耗RA2E1 产品群是 RA 系列的入门级单芯片微控制器,基于48 MHz Arm® Cortex®-M23 内核,具有高**达
    发表于 11-09 17:09

    RA-Eco-RA2E1-48PIN-V1.0开发板试用】RA-Eco-RA2E1-48PIN-V1.0开发板基于Keil MDK环境搭建

    RA-Eco-RA2E1-48PIN-V1.0开发板简介。 以瑞萨R7FA2E1A72DFL为主控芯片,拥有丰富的外设,集成度高功能非常强大,具有优越的性能和低功耗RA2E1 产品群是
    发表于 11-04 22:58

    RA-Eco-RA2E1-48PIN-V1.0开发板试用】带你认识RA-Eco-RA2E1-48PIN-V1.0开发板

    ,方便用户下载与调试,全引脚引出方便用户进行拓展。 以R7FA2L1AB2DFL为主控芯片,拥有丰富的外设,集成度高功能非常强大,具有优越的性能和低功耗RA2L148MHz ARMⓇ Cortex
    发表于 11-04 22:53

    RA-Eco-RA0E1-32PIN-V1.0开发板试用】初步认识RA-Eco-RA0E1-32PIN-V1.0这块开发板

    RA0 系列中的入门级简易 MCU,具有出色的成本效益和超低功耗。 它使用 Arm Cortex®-M23 内核,内置高达 64kB 的闪存,具有 1.6V 到 5.5V 的宽电源电压范围,可提供高达
    发表于 09-27 11:30

    RA0E1 MCU低功耗演示例程

    RA0E1产品组是RA0系列中的入门级简易MCU,具有出色的成本效益和超低功耗。其工作电流仅为84.3μA/MHz,待机电流低至200nA。为了更好地展现低功耗的特点,我们准备了
    的头像 发表于 07-26 15:13 501次阅读
    <b class='flag-5'>RA</b>0E1 MCU<b class='flag-5'>低功耗</b>演示例程

    IAR中生成库文件并被应用工程调用的参考流程(上)

    通常来说,针对RA的开发,瑞萨对于第三方IDE的支持(如IAR EW for ARM)均通过RASC(Renesas RA Smart Configurator)实现。
    的头像 发表于 05-22 14:36 1965次阅读
    在<b class='flag-5'>IAR</b>中生成库文件并被应用工程调用的参考流程(上)

    IAR仿真时崩溃了怎么解决?

    发现IAR有个BUG,程序中定义一个unsigned char型的变量,如果在代码中给变量赋某些值(比如0xEC,0xE0),在IAR仿真环境下查看该变量时会导致IAR奔溃退出。不查看
    发表于 04-22 07:57

    RA UART实现SW Standby Mode唤醒流程

    RA系列能够实现休眠模式下的超低功耗,以RA2E1为例,在常温下的休眠功耗只有约0.25uA(典型值)。
    的头像 发表于 04-15 14:03 768次阅读
    <b class='flag-5'>RA</b> UART实现SW Standby Mode唤醒流程

    瑞萨电子RA产品家族新增RA0E1 MCU产品组

    瑞萨电子RA产品家族新增RA0E1 MCU产品组。RA0E1系列是一款低功耗、低成本微控制器,结合了32MHz Arm® Cortex®-M23内核和优化的外设功能。
    的头像 发表于 04-11 15:17 853次阅读
    瑞萨电子<b class='flag-5'>RA</b>产品家族新增<b class='flag-5'>RA</b>0E1 MCU产品组

    瑞萨RA MCU家族推出集成Arm® Cortex®-M23内核的全新RA0系列

    瑞萨RA MCU家族推出全新的RA0系列,RA0E1产品组是入门级简易MCU,具有出色的成本效益和超低功耗
    的头像 发表于 04-10 14:32 1216次阅读
    瑞萨<b class='flag-5'>RA</b> MCU家族推出集成Arm® Cortex®-M23内核的全新<b class='flag-5'>RA</b>0系列

    详解RA2E3 MCU的低功耗工作模式

    本文将为您详细介绍RA2E3 MCU的省电功能如何降低应用中不必要的功耗
    的头像 发表于 02-22 09:29 1109次阅读
    详解<b class='flag-5'>RA</b>2E3 MCU的<b class='flag-5'>低功耗</b>工作模式

    低功耗蓝牙技术的特点 低功耗蓝牙如何实现低功耗

    低功耗蓝牙技术是一种优化的蓝牙技术,专为满足低功耗需求而设计。它通过采用一系列节能措施和技术,实现了更低的功耗消耗,延长了设备的续航时间。
    的头像 发表于 02-07 16:49 1887次阅读

    X态传播在低功耗验证中的作用

    随着科技的发展和智能化设备的普及,我们对于高效能、低功耗的半导体设备需求愈加强烈,对低功耗仿真的需求成指数级增长。X态传播分析是低功耗仿真
    的头像 发表于 01-24 09:34 674次阅读
    X态传播在<b class='flag-5'>低功耗</b>验证中的作用

    基于RA6M5开发板的低功耗电子时钟设计

    本项目是基于启明RA6M5开发板搭载2.4寸液晶屏的电子时钟,该电子时钟有两个模式——正常模式和低功耗模式,可以通过开发板的按键改变时钟模式。
    的头像 发表于 12-25 12:26 861次阅读
    基于<b class='flag-5'>RA</b>6M5开发板的<b class='flag-5'>低功耗</b>电子时钟设计