This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

sd_softdevice_enable not return

case 1: i use rtthread RTOS, main() disable global irq,on os scheduler enable global irq. but i on task init stack, sd_softdevice_enable not return,system always reset. case 2: i removed disable gloval irq line, is normal init statck. What is the problem?

code below:

int main(void)
{
	/* disable interrupt first */
	// rt_hw_interrupt_disable();

	/* startup RT-Thread RTOS */
	rtthread_startup();

	return 0;
}

rt_hw_context_switch_to    PROC
    EXPORT rt_hw_context_switch_to
    ; set to thread
    LDR     r1, =rt_interrupt_to_thread
    STR     r0, [r1]

   ......

    ; enable interrupts at processor level
    CPSIE   I
Parents Reply Children
No Data
Related