新手上路
- 积分
- 27
- 金钱
- 27
- 注册时间
- 2017-1-24
- 在线时间
- 4 小时
|
1、xTaskCreate这个函数我看了各个参数,但是它的执行机理到底是怎样的呢?附上一段复制的代码(问题在下)
void vTaskFunction( void *pvParameters )
{
char *pcTaskName;
volatile unsigned long ul;
pcTaskName = ( char * ) pvParameters;
for( ;; )
{
printf("%s/n",pcTaskName );
}
}
static const char *pcTextForTask1 = "Task 1 is running\r\n" ;
static const char *pcTextForTask2 = "Task 2 is running\r\n";
int main( void )
{
uart_init(115200);
xTaskCreate( vTaskFunction, "Task 1", 1000, (void*)pcTextForTask1, 1, NULL );
xTaskCreate( vTaskFunction, "Task 2", 1000, (void*)pcTextForTask2, 1, NULL );
vTaskStartScheduler();
for( ;; );
}
我想请问为什么在主函数的2个xTaskCreate中间加上一个vTaskDelay( 250 / portTICK_RATE_MS ) 延时打印出来的就只有task2了?
2、delay函数是不是不能用?因为我一用就发现程序卡在这一步执行不下去了。打印也出不来数。
3、这里TASK句尾的\t\n为什么打印出来老是有个\n 如果只用\n无法换行。
真的对不起,可能问题比较低级,但是确实新人不太懂这方面网上资料也没有提及,实在没有办法,请大神救救,谢谢!
|
|