/* SDK drivers */ #include "fsl_common.h" /* ThreadX */ #include "tx_api.h" /* App */ #include "app_thr.h" extern void *__HeapLimit; extern void *_tx_initialize_unused_memory; void _tx_timer_interrupt(void); static TX_THREAD hello_task_handle; void tx_application_define(void *first_unused_memory) { tx_thread_create(&hello_task_handle, "T_HE", hello_task, 0x00, first_unused_memory, 1024, 3, 3, TX_NO_TIME_SLICE, TX_AUTO_START); } void _tx_initialize_low_level(void) { DisableGlobalIRQ(); _tx_initialize_unused_memory = (VOID *)&__HeapLimit; /* enable CPU cycle counter */ DWT->CTRL |= DWT_CTRL_CYCCNTENA_Msk; SysTick_Config(SystemCoreClock / TX_TIMER_TICKS_PER_SECOND); NVIC_SetPriority(MemoryManagement_IRQn, 0); NVIC_SetPriority(BusFault_IRQn, 0); NVIC_SetPriority(UsageFault_IRQn, 0); NVIC_SetPriority(SVCall_IRQn, 0x0ff); NVIC_SetPriority(DebugMonitor_IRQn, 0); NVIC_SetPriority(PendSV_IRQn, 0x0ff); NVIC_SetPriority(SysTick_IRQn, 0x40); } VOID SysTick_Handler(VOID) { _tx_timer_interrupt(); }