一、通过MSH_CMD_EXPORT命令可以直接通过msh执行函数,并且可以传参。示例如下:
void led2_ctrl(int argc, char**argv)
{
rt_pin_mode(GET_PIN(D, 13), PIN_MODE_OUTPUT);
if (argc < 2)
{
rt_kprintf("Please input'cmd <open|close>'\n");
return;
}
if (!rt_strcmp(argv[1], "open"))
{
rt_pin_write(GET_PIN(D, 13), PIN_LOW);
}
else if (!rt_strcmp(argv[1], "close"))
{
rt_pin_write(GET_PIN(D, 13), PIN_HIGH);
}
}
MSH_CMD_EXPORT(led2_ctrl , led sample : led2_ctrl<open|close>);
以上通过输入指令:led2_ctrl open来打开led,通过输入指令:led2_ctrl close来关闭led。如果用串口助手操作,记得加换行。
本文详细介绍了如何使用MSH_CMD_EXPORT命令在msh中直接执行函数并传递参数。通过示例展示了如何创建一个控制LED状态的函数led2_ctrl,该函数能够接收open或close参数来分别开启或关闭LED。
7364

被折叠的 条评论
为什么被折叠?



