学前班
最后登录1970-1-1
在线时间 小时
注册时间2015-8-20
|
ucosII 移植到 stm32f103zet6,运行多任务但只有主任务led1亮,而且是一直亮。我是跟着野火教程 《ucosII移植与深入实战指南》
贴主要代码
void Task_Start(void *p_arg)
{
(void)p_arg;
OSTaskCreate(Task_LED2,(void *)0,&task_led2_stk[TASK_LED2_STK_SIZE-1],TASK_LED2_PRIO);
OSTaskCreate(Task_LED3,(void *)0,&task_led3_stk[TASK_LED3_STK_SIZE-1],TASK_LED3_PRIO);
while (1)
{
LED1(ON);
Delay(0x0FFF);
LED1(OFF);
Delay(0x0FFF);
}
}
void Task_LED2(void *p_arg)
{
(void)p_arg;
while (1)
{
LED2(ON);
Delay(0x0FFF);
LED2(OFF);
Delay(0x0FFF);
}
}
void Task_LED3(void *p_arg)
{
(void)p_arg;
while (1)
{
LED3(ON);
Delay(0x0FFF);
LED3(OFF);
Delay(0x0FFF);
}
}
是怎么回事吗?问题出在哪里了?
我有点怀疑是不是 定时器没起作用。
void BSP_Init(void)
{
SystemInit();
SysTick_init();
LED_GPIO_Config();
}
void SysTick_init(void)
{
//SysTick_Config(SystemCoreClock/OS_TICKS_PER_SEC);
SysTick_Config(SystemCoreClock/OS_CFG_TICK_RATE_HZ);
/* 配置1ms 中断一次,即os的频率为1000hz */
if (SysTick_Config(SystemCoreClock/OS_CFG_TICK_RATE_HZ))
{
/* Capture error */
while (1);
}
}
有哪个好心人帮忙看下吗?谢谢了。
|
|