WeAct_V1_Artery_AT32F403A/APP/main.c

56 lines
1.1 KiB
C

#include <at32f403a_407_clock.h>
#include <SystemDelayInterface.h>
#include <stdio.h>
#include "cmsis_os.h"
#include "CmsisRtosThreadUtils.h"
#include "delay_sec.h"
#define EXTEND_SRAM 0xFE
extern void MAIN_INIT();
extern void MAIN_START();
/**
* @brief to extend sram size
* @param none
* @retval none
*/
void extend_sram(void) {
/* check if ram has been set to expectant size, if not, change eopb0 */
if (((USD->eopb0) & 0xFF) != EXTEND_SRAM) {
flash_unlock();
/* erase user system data bytes */
flash_user_system_data_erase();
/* change sram size */
flash_user_system_data_program((uint32_t) &USD->eopb0, EXTEND_SRAM);
/* system reset */
nvic_system_reset();
}
}
_Noreturn void stop() {
while (1) {
asm("nop");
}
}
#define STOP stop();
void vApplicationStackOverflowHook(TaskHandle_t xTask, signed char *pcTaskName) {
STOP
}
int main(void) {
system_clock_config();
delay_init();
osKernelInitialize();
SystemDelayMs(100);
MAIN_INIT();
MAIN_START();
osKernelStart();
while (1);
}