|
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函数里。请问有谁知道还需要怎么配置? |
STM32F429 跑起来了
寻求 资源互换
stm32 f411偶发性无法启动大神求助
在擦除flash时 同时挂起中断 是否会造成卡死以及相关的卡死机制
STM32F407VET6,使用cubeIDE下载跑不起来
FLASH擦除轮询等待时CPU真的会轮询吗
STM32F417 RTC读取亚秒寄存器
STM32F405ZGT6 批次22+ 问下这颗料,60度烘烤12小时后,出现鼓包,是怎么回事? 原厂有标准的烘烤温度范围 跟时长范围吗?
非官方开发板第一次下载成功,之后就各种失败
STM32H5F/E 相比 STM32F4 系列最大的优势是什么?
微信公众号
手机版
0x8030000地址是需要跳转到执行地方入口