OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4251|回复: 1

RT-Thread nano使用FinSH,有些命令会丢包?

[复制链接]

17

主题

53

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
264
金钱
264
注册时间
2019-3-26
在线时间
105 小时
发表于 2020-11-14 18:49:13 | 显示全部楼层 |阅读模式
10金钱
当我发送list_sem时,回复正常
list_sem
semaphore        v   suspend thread
---------------- --- --------------
shrx             000 0
shell_rx         001 0
msh >
msh >


当我发送list_thread时,回复的是list_theadlist_thrad,总是少了一位:
list_thead
list_thead: command not found.
msh >
msh >
msh >


list_thrad
list_thrad: command not found.
msh >
msh >
msh >


这是我的代码,请大佬看一下找找原因:
串口中断代码:
void USART6_IRQHandler(void)                       
{
        rt_interrupt_enter();
        if((__HAL_UART_GET_FLAG(&UART6_Handler,UART_FLAG_RXNE)!=RESET) &&
                ((__HAL_UART_GET_IT_SOURCE(&UART6_Handler,UART_IT_RXNE)!=RESET)))
        {
                __HAL_UART_CLEAR_FLAG(&UART6_Handler,UART_FLAG_RXNE);
                rt_sem_release(&shell_rx_sem);//释放信号量
        }
        rt_interrupt_leave();
}

Finsh字符接收代码:
char rt_hw_console_getchar(void)
{
        int ch = -1;
        rt_sem_take(&shell_rx_sem,RT_WAITING_FOREVER);//等待信号量
        ch = UART6_Handler.Instance->DR & 0xff;
        return ch;
}

FinSH优先级是5

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165475
金钱
165475
注册时间
2010-12-1
在线时间
2115 小时
发表于 2020-11-15 01:27:36 | 显示全部楼层
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-4-29 23:28

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表