#define osThreadDef(name, thread, priority, instances, stacksz)
const osThreadDef_t os_thread_def_##name = { #name, (thread), (priority), (instances), (stacksz) }
所以
osThreadDef(Display, DisLCD_Task,osPriorityNormal, 0, 128);
//相当于
const osThreadDef_t os_thread_def_Display = { "Display", (DisLCD_Task), (osPriorityNormal), (0), (128) }
相当于定义了一个 os_thread_def_Display常量,并且赋值。
宏定义中,##的作用就是把2个宏参数连接为1个数,或实现字符串的连接
#的作用就是将#后面的宏参数进行字符串的操作,也就是将#后面的参数两边加上一对双引号使其成为字符串
osThreadDef_t 是一个结构体定义
以上相于当定义了一个结构体变量os_thread_def_Display
DisplayLCDHandle = osThreadCreate(osThread(Display), NULL);
参数osThread(Display)也是一个宏定义
相当于
DisplayLCDHandle = osThreadCreate(os_thread_def_Display, NULL);
其中优先级还要经过计算才得到
-
本文发布于:2024-01-31 06:17:03,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170665302626137.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |