Toggle navigation
首页
问答
文章
积分商城
专家
专区
更多专区...
文档中心
返回主站
搜索
提问
会员
中心
登录
注册
msh
使用shell组件时,必须连接串口其他线程才能运行,否则只运行main线程
发布于 2021-07-16 22:59:12 浏览:1105
订阅该版
使用shell组件时,必须连接串口的tx其他线程才能运行,否则只运行main线程 如果把RT_USING_FINSH关了其他线程也能运行 并且在只接串口的rx时xshell一直会收到msh>,只有当串口的tx接到板子上以后才能正常运行我自己建的线程 去掉shell组件的时候其他线程可以运行,或者随便碰一下串口,让串口收到点东西就能运行了 ![1b9b8db3899a7d3151dde169ca54400b.png](https://oss-club.rt-thread.org/uploads/20210716/1b9b8db3899a7d3151dde169ca54400b.png)
查看更多
123
认证专家
2021-07-17
这家伙很懒,什么也没写!
一定要配置成上拉模式,因为没人知道你的硬件板子的抗干扰能力有多强。 你用的哪个BSP?目前官方版本的都默认配置的是PULL_UP; 另外你这种情况应该是触发了串口的异常帧中断。可以看一下串口的CCR寄存器确定一下,大概率是这个情况。 解决办法也很简单,上面也说了,就是配置上拉。 再给你一段代码做个测试看下效果: ```c static void uart_isr(struct rt_serial_device *serial) { struct stm32_uart *uart; RT_ASSERT(serial != RT_NULL); uart = rt_container_of(serial, struct stm32_uart, serial); /* 增加以下四个判断做测试看看效果 */ if (__HAL_UART_GET_FLAG(&(uart->handle), UART_FLAG_ORE) != RESET) { LOG_E("(%s) serial device Overrun error!", serial->parent.parent.name); __HAL_UART_CLEAR_OREFLAG(&uart->handle); } if (__HAL_UART_GET_FLAG(&(uart->handle), UART_FLAG_NE) != RESET) { LOG_E("(%s) serial device Noise error!", serial->parent.parent.name); __HAL_UART_CLEAR_NEFLAG(&uart->handle); } if (__HAL_UART_GET_FLAG(&(uart->handle), UART_FLAG_FE) != RESET) { LOG_E("(%s) serial device Framing error!", serial->parent.parent.name); __HAL_UART_CLEAR_FEFLAG(&uart->handle); } if (__HAL_UART_GET_FLAG(&(uart->handle), UART_FLAG_PE) != RESET) { LOG_E("(%s) serial device Parity error!", serial->parent.parent.name); __HAL_UART_CLEAR_PEFLAG(&uart->handle); } ... ... ```
4
个回答
默认排序
按发布时间排序
出出啊
2021-07-16
恃人不如自恃,人之为己者不如己之自为也
只接rx的时候有数据,而且是输出缓存里的内容。这是有硬件干扰吧。如果怀疑finsh,可以关掉finsh,然后自己弄个线程读写串口设备
第九个下弦月
2021-07-17
这家伙很懒,什么也没写!
串口IO初始化悬空,导致不接TTL时数据异常
zhkag
2021-07-17
这家伙很懒,什么也没写!
串口IO初始化不让他浮空让他上拉或下拉试试,我没试过,就提个建议而已。
撰写答案
登录
注册新账号
关注者
0
被浏览
1.1k
关于作者
第九个下弦月
这家伙很懒,什么也没写!
提问
10
回答
5
被采纳
0
关注TA
发私信
相关问题
1
初次使用rtt nano,使用msh卡壳了,能更换到usb口实现交互吗?
2
U8G2_SH1107_128X128_SPI_msh运行hard fault
3
使用msh输出日志耗时较多,有没有优化建议?
4
RTT nano msh 历史命令不起作用
5
排列msh命令列表的顺序
6
为什么不在RTT里面加一个清屏的命令呀~
7
MSH导不出命令,在官方的cmd.c下写程序是可以导出的
8
使用finsh组件时,为什么运行一次自己定义的命令后,shell就无法输入了?
9
msh终端输入出现问题
10
挂载SD卡后MSH没法输入指令
推荐文章
1
RT-Thread应用项目汇总
2
玩转RT-Thread系列教程
3
国产MCU移植系列教程汇总,欢迎查看!
4
机器人操作系统 (ROS2) 和 RT-Thread 通信
5
五分钟玩转RT-Thread新社区
6
【技术三千问】之《玩转ART-Pi》,看这篇就够了!干货汇总
7
关于STM32H7开发板上使用SDIO接口驱动SD卡挂载文件系统的问题总结
8
STM32的“GPU”——DMA2D实例详解
9
RT-Thread隐藏的宝藏之completion
10
【ART-PI】RT-Thread 开启RTC 与 Alarm组件
最新文章
1
RTT 源码分析笔记——互斥量篇
2
[E/app.filesystem] SD card mount to '/sdcard' failed!
3
单片机也能聊天?RT-Thread上跑通大语言模型
4
【RT-Thread】【ci】【scons】将ci.attachconfig.yml和scons结合使用
5
Rt-thread中OTA下载后,bootloader不搬程序
热门标签
RT-Thread Studio
串口
Env
LWIP
SPI
AT
Bootloader
Hardfault
CAN总线
FinSH
ART-Pi
DMA
USB
文件系统
RT-Thread
SCons
RT-Thread Nano
线程
MQTT
STM32
RTC
FAL
rt-smart
I2C_IIC
ESP8266
UART
WIZnet_W5500
ota在线升级
cubemx
PWM
flash
freemodbus
BSP
packages_软件包
潘多拉开发板_Pandora
定时器
ADC
flashDB
GD32
socket
编译报错
中断
Debug
rt_mq_消息队列_msg_queue
keil_MDK
SFUD
msh
ulog
C++_cpp
MicroPython
本月问答贡献
三世执戟
5
个答案
1
次被采纳
KunYi
4
个答案
1
次被采纳
RTT_逍遥
3
个答案
1
次被采纳
xiaorui
1
个答案
1
次被采纳
JonasWen
1
个答案
1
次被采纳
本月文章贡献
出出啊
1
篇文章
3
次点赞
小小李sunny
1
篇文章
1
次点赞
张世争
1
篇文章
3
次点赞
crystal266
2
篇文章
2
次点赞
whj467467222
2
篇文章
2
次点赞
回到
顶部
发布
问题
分享
好友
手机
浏览
扫码手机浏览
投诉
建议
回到
底部