原子哥,我现在遇到一个问题,就是实现IAP的时候,可以正常启动ucosii但是ucosiii的时候,就卡在了void start_task(void *p_arg)入口那里了,麻烦帮忙看一下。代码如下:
int main(void)
{
OS_ERR err;
CPU_SR_ALLOC();
SCB->VTOR = FLASH_BASE | 0x4B000;
Stm32_Clock_Init(360,25,2,8);
HAL_Init();
delay_init(180);
uart_init(115200);
LED_Init();
OSInit(&err);
OS_CRITICAL_ENTER();
OSTaskCreate((OS_TCB * )&StartTaskTCB,
(CPU_CHAR * )"start task",
(OS_TASK_PTR )start_task,
(void * )0,
(OS_PRIO )START_TASK_PRIO,
(CPU_STK * )&START_TASK_STK[0],
(CPU_STK_SIZE)START_STK_SIZE/10,
(CPU_STK_SIZE)START_STK_SIZE,
(OS_MSG_QTY )0,
(OS_TICK )0,
(void * )0,
(OS_OPT )OS_OPT_TASK_STK_CHK|OS_OPT_TASK_STK_CLR|OS_OPT_TASK_SAVE_FP,
(OS_ERR * )&err);
OS_CRITICAL_EXIT();
OSStart(&err);
while(1)
{
}
}
void start_task(void *p_arg)
{
OS_ERR err;
CPU_SR_ALLOC();
p_arg = p_arg;
printf("start_task 1
");//打印到这里就没有往下了
CPU_Init();
printf("start_task 2
");//
#if OS_CFG_STAT_TASK_EN > 0u
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
一周热门 更多>