gitee代码:
https://gitee.com/xuwenqiang_1989/rt-thread-nano
简介
其他部分参考前期博客。
本期给移植好的rt-thread nano工程,启用FINSH。
1.将rt-thread\components\finsh添加进工程
添加文件进工程
包含finsh头文件
2.配置rtconfig.h
在rtconfig.h中添加 #define RT_USING_FINSH 启用FINSH。
将最大优先级设置为32(因为FINSH默认优先级是21)
3.修改board.c
在board.c中添加 char rt_hw_console_getchar(void) 函数处理FINSH的输入的回调。
char rt_hw_console_getchar(void)
{
int ch = -1;
if (__HAL_UART_GET_FLAG(&RT_UARTDEBUG, UART_FLAG_RXNE) != RESET)
{
ch = RT_UARTDEBUG.Instance->RDR & 0xff;
__HAL_UART_CLEAR_FLAG(&RT_UARTDEBUG, UART_FLAG_RXNE);
}
else
{
if (__HAL_UART_GET_FLAG(&RT_UARTDEBUG, UART_FLAG_ORE) != RESET)
{
__HAL_UART_CLEAR_OREFLAG(&RT_UARTDEBUG);
}
rt_thread_mdelay(10);
}
return ch;
}
4.用putty查看
安装putty,自行百度。
打开putty,设置好串口号、通信速率。
工程下载编译
出现msh>,说明finsh启用成功
输入help查看命令.