杰发科技AC7840/AC7843——standby模式保留ram数据

7840 ram地址分配

7840 standby低功耗下ram数据保留

keil的sct中配置如下

代码调用

cpp 复制代码
uint8 g_standbyTest __attribute__((section(".uinit_ram1fff"), zero_init));
uint8 g_standbyTestv1 __attribute__((section(".uinit_ram1400"), zero_init));

在休眠之前定义

退出休眠后

发现数据保留了

7843 ram地址分配

7843 standby低功耗下ram数据保留

sct链接文件修改

变量定义

cpp 复制代码
uint8 g_standbyTest __attribute__((section(".uinit_ram1fff"), zero_init));
uint8 g_standbyTestv1 __attribute__((section(".uinit_ram2000"), zero_init));
uint8 g_standbyTestBuff[3]  __attribute__ ((section(".uinit_ram1fff"),zero_init));

测试代码

cpp 复制代码
int main(void)
{
    Spm_Reg_SelectLVDThreshold(SPM_LOW);    /* 设置低电压检测阈值: SPM_LOW对应3.3V供电系统, SPM_HIGH对应5V供电系统 */

    Ckgen_Hal_InitClk(&g_clockGenCfg);
    Ckgen_Hal_DistributeClk(&g_clkDistributeCfg);

    OsIf_Init();
    Debug_Init();

    GPIO_KeyInit();
    GPIO_LedInit();
	
    Spm_Hal_Init(&Spm_UserConfig);

    Debug_Printf("GPIO Basic Test-----------------\r\n");
	
		spmWakeupStatus = Spm_Hal_GetStandbyWakeupStatus();
		Debug_Printf("spmWakeupStatus = %x\r\n",spmWakeupStatus);
	
		resetStatus = Rcm_Hal_GetResetStatus();
		Debug_Printf("resetStatus = %x\r\n",resetStatus);
	
	
		Debug_Printf("standbyTest = %d\r\n",g_standbyTest);
        Debug_Printf("standbyTestv1 = %d\r\n",g_standbyTestv1);
		Debug_Printf("g_standbyTestBuff = %d\r\n",g_standbyTestBuff[0]);
	
		g_standbyTest = 100;                         /*standbyTest   赋值后 Standby 唤醒后SRAM中保持为0x64*/
        g_standbyTestv1 = 100;                       
		g_standbyTestBuff[0] = 100;

		OsIf_UDelay(1000000);
		
		Rcm_Hal_ClearResetStatus();
		
		
    while (1)
    {
        LED_Toggle_Task();

        if (FALSE != Get_Key1_Status())
        {
						Spm_Hal_SetPowerMode(SPM_MODE_STANDBY);
            LED1_TOGGLE;
            LED2_TOGGLE;
        }
    }
}
相关推荐
国产芯片设计2 小时前
小家电驱动开发实战:远乐YL1628在电饭煲显示面板的应用与调试
单片机·嵌入式硬件·mcu·51单片机·硬件工程
国产芯片设计3 小时前
DIY实战|0.8寸WiFi自动授时电子钟,国产数码管驱动芯片方案分享
stm32·单片机·mcu·51单片机·硬件工程
嵌入式的飞鱼2 天前
SD NAND vs eMMC:嵌入式存储方案怎么选?
嵌入式硬件·mcu·sd nand
[J] 一坚2 天前
嵌入式高手C
c语言·开发语言·stm32·单片机·mcu·51单片机·iot
EVERSPIN6 天前
基于MCU CH32X035 Type-C PD显示器方案
单片机·mcu·计算机外设
至为芯6 天前
PY32F071至为芯支持32位ARM内核的高主频MCU微控制器
单片机·嵌入式硬件·mcu
EVERSPIN7 天前
MCU单片机FOC汽车水泵方案
单片机·嵌入式硬件·mcu·汽车·mcu单片机
LongRunning8 天前
【BLE】STM32WB55低功耗实测(十)
mcu
LongRunning8 天前
【工具】STM32CubeMX和STM32CubeProgrammer安装问题
mcu
独小乐11 天前
019.ADC转换和子中断|千篇笔记实现嵌入式全栈/裸机篇
linux·c语言·驱动开发·笔记·嵌入式硬件·mcu·arm