добавлена тестовая функция, изменяющая лимит кэша

This commit is contained in:
KLASSENTS 2025-05-29 15:29:16 +07:00
parent 2cb29ab673
commit 36249d16ff

View File

@ -7,9 +7,28 @@
void initVariant() __attribute__((weak));
void initVariant() { }
#include "mcu32_memory_map.h"
#include "mik32_hal_spifi_w25.h"
#define CLIMIT_NEW (2 * 256 * 1024) // Новый предел кэширования
// Объявляем, что эта функция исполняется из RAM
__attribute__((section(".ram_text"))) void updateCacheLimit(void)
{
uint32_t MCMDbackup = SPIFI_CONFIG->MCMD; // Прочитать текущие настройки из регистра MCMD
SPIFI_CONFIG->STAT |= SPIFI_CONFIG_STAT_RESET_M; // Сброс режима MCMD: установить бит RESET
SPIFI_CONFIG->CLIMIT = CLIMIT_NEW; // Установить новое значение CLIMIT
SPIFI_CONFIG->MCMD = MCMDbackup; // Вернуть обратно значение в регистр MCMD
}
extern "C" int main(void) __attribute__((weak));
int main()
{
Serial.begin(9600);
xprintf("old_climit = 0x%08lX\n", SPIFI_CONFIG->CLIMIT);
updateCacheLimit();
xprintf("new_climit = 0x%08lX\n", SPIFI_CONFIG->CLIMIT);
initVariant(); // for freeRTOS
setup();
post_init();
@ -18,6 +37,4 @@ int main()
{
loop();
}
}
}