stm32f405 ucoslll 跳转后可以进入主程序,但是卡死在OSTaskCreate函数里,任务无法运行。 void JumpToApp(void) { uint32_t i=0; USART_Cmd(UART4, DISABLE); __set_PRIMASK(1); /* 禁止全局中断 */ /* 关闭滴答定时器,复位到默认值 */ SysTick->CTRL = 0; SysTick->LOAD = 0; SysTick->VAL = 0; /* 关闭所有中断,清除所有中断挂起标志 */ for (i = 0; i < 8; i++) { NVIC->ICER[i] = 0xFFFFFFFF; NVIC->ICPR[i] = 0xFFFFFFFF; } __set_PRIMASK(0); /* 使能全局中断 */ SCB->VTOR=FLASH_BASE|0x30000; ApplicationAddress = APP_ADDRESS; //printf("JumpToApp = 0x%x\r\n",(*(vu32*)ApplicationAddress)); //printf("JumpToApp = 0x%x\r\n",((*(vu32*)ApplicationAddress) & 0x2FFE0000 )); if (((*(vu32*)ApplicationAddress) & 0x2FFE0000 ) == 0x20000000) { /* Jump to user application */ m_JumpAddress = *(vu32*) (ApplicationAddress + 4); JumpToApplication = (FunVoidType) m_JumpAddress; //printf("m_JumpAddress = 0x%x\r\n",m_JumpAddress); /* Initialize user application's Stack Pointer */ __set_MSP(*(vu32*) ApplicationAddress); JumpToApplication(); } } 我用的是uart4打印串口日志,所以先禁止USART_Cmd(UART4, DISABLE),测试程序没有其他什么中断设置。但是调用JumpToApp函数后可以进入main函数,但是卡死在OSTaskCreate函数里。请问有谁知道还需要怎么配置? |
您好,关于stm32 pcrop的功能
Arduino中可以使用STM32F1或者STM32F4系列芯片的内置看门狗吗
stm32f4定时器从强制输出转为pwm模式的延迟问题
RTC设置24小时制,在中午12点59到13点的时候会变成1点
FATFS到f_mount()卡死,求助,用的野火文件
stm32 DMA串口接收到数组,数组元素顺序错乱怎么办?
我使用STM32CUDELID 进行开发STM32F407VGT6 创建工程发现没有图形配置文件是怎么回事呢?
STM32F405使用LL库建立SPI通讯报溢出是什么原因?
FreeRTOS出现Hardfault报错
问问朋友们有STM32F401RC的数据手册吗
0x8030000地址是需要跳转到执行地方入口