Where electronics enthusiasts find answers.
am_hal_pwrctrl_memory_deepsleep_powerdown(AM_HAL_PWRCTRL_MEM_FLASH_512K); //Turn off everything but lower 512k?
int foo;
int bar __attribute__((section("non_persistent")))
am_hal_pwrctrl_memory_deepsleep_powerdown(AM_HAL_PWRCTRL_MEM_FLASH_512K); //Turn off everything but lower 512k
am_hal_pwrctrl_memory_deepsleep_powerdown(AM_HAL_PWRCTRL_MEM_SRAM_64K_DTCM); //Turn off everything but lower 64k
// Power down Flash, SRAM, cache
am_hal_pwrctrl_memory_deepsleep_powerdown(AM_HAL_PWRCTRL_MEM_ALL); // Powerdown all memory during deepsleep
am_hal_pwrctrl_memory_deepsleep_retain(AM_HAL_PWRCTRL_MEM_FLASH_512K); // Retain lower 512K of CACHE
am_hal_pwrctrl_memory_deepsleep_retain(AM_HAL_PWRCTRL_MEM_SRAM_64K_DTCM); // Retain lower 64K of SRAM
//Power up SRAM, turn on entire Flash
am_hal_pwrctrl_memory_deepsleep_powerdown(AM_HAL_PWRCTRL_MEM_MAX);
am_hal_pwrctrl_memory_deepsleep_powerdown(AM_HAL_PWRCTRL_MEM_ALL); // Powerdown all memory during deepsleep
am_hal_pwrctrl_memory_deepsleep_retain(AM_HAL_PWRCTRL_MEM_FLASH_512K); // Retain lower 512K of CACHE
am_hal_pwrctrl_memory_deepsleep_retain(AM_HAL_PWRCTRL_MEM_SRAM_64K_DTCM); // Retain lower 64K of SRAM
//Power up SRAM, turn on entire Flash
am_hal_pwrctrl_memory_deepsleep_powerdown(AM_HAL_PWRCTRL_MEM_MAX);
//Power down Flash, SRAM, cache
am_hal_pwrctrl_memory_deepsleep_powerdown(AM_HAL_PWRCTRL_MEM_ALL); // enable powerdown of all memory during deepsleep
am_hal_pwrctrl_memory_deepsleep_retain(AM_HAL_PWRCTRL_MEM_SRAM_32K_DTCM); // disable powerdown of the first 32K memory during deepsleep
am_hal_pwrctrl_memory_deepsleep_powerdown(AM_HAL_PWRCTRL_MEM_ALL); // Power down all memory during deepsleep
am_hal_pwrctrl_memory_deepsleep_retain(AM_HAL_PWRCTRL_MEM_SRAM_64K_DTCM); // Retain lower 64K of SRAM
// v1.2.1 wake-up function
void wakeUp()
{
// Return to using the main clock
am_hal_stimer_config(AM_HAL_STIMER_CFG_CLEAR | AM_HAL_STIMER_CFG_FREEZE);
am_hal_stimer_config(AM_HAL_STIMER_HFRC_3MHZ);
ap3_adc_setup(); // Enable ADC
Wire.begin(); // Enable I2C
Wire.setClock(400000); // Set I2C clock speed to 400 kHz
SPI.begin(); // Enable SPI
Serial.begin(115200); // Open Serial port
}
am_hal_pwrctrl_memory_deepsleep_powerdown(AM_HAL_PWRCTRL_MEM_ALL);
am_hal_pwrctrl_memory_deepsleep_retain(AM_HAL_PWRCTRL_MEM_SRAM_384K);
.heap 0x10021214 0x0 load address 0x0002c594
0x10021214 __end__ = .
0x10021214 PROVIDE (end = .)
*(.heap*)
0x10021214 __HeapLimit = .
***********************************************************************************************
*** ***
*** LINK SUMMARY ***
*** ***
***********************************************************************************************
Memory breakdown:
67 690 bytes read-only code
6 046 bytes read-only data
150 701 bytes read-write data
Region summary:
Name Range Size Used Unused Alignment Loss
---------- ----------------- ---------- ------------------ ------------------ ------------------
FLASH 00010000-0007ffff 458 752 73 740 16.07% 385 000 83.92% 12 0.00%
RAM 10000000-1005ffff 393 216 150 701 38.33% 242 515 61.67% 0 0.00%
0x10000000 __RAM1_segment_start__ ---- Gb [ Linker created ]
0x10000000 __RAM1_segment_used_start__
---- Gb [ Linker created ]
0x10000000 __RAM_segment_start__ ---- Gb [ Linker created ]
0x10000000 __RAM_segment_used_start__
---- Gb [ Linker created ]
0x100048B0 __heap_start__ ---- Gb [ Linker created ]
0x100248B0 __heap_end__ ---- Gb [ Linker created ]
0x10060000 __RAM1_segment_end__ ---- Gb [ Linker created ]
0x10060000 __RAM1_segment_used_end__ ---- Gb [ Linker created ]
0x10060000 __RAM_segment_end__ ---- Gb [ Linker created ]
0x10060000 __RAM_segment_used_end__ ---- Gb [ Linker created ]
0x10060000 __stack_end__ ---- Gb [ Linker created ]
.heap 0x000000001001857c 0x0 load address 0x00000000000137e4
0x000000001001857c __end__ = .
0x000000001001857c PROVIDE (end = .)
*(.heap*)
0x000000001001857c __HeapLimit = .
am_hal_pwrctrl_memory_deepsleep_retain(AM_HAL_PWRCTRL_MEM_SRAM_160K);
Adafruit_ST7735* lcd;
…
fprintf(lcd, “Hello, world!”);
You can post new topics in this forum
You can reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum