rtt nano 3.1.2 shell不能输入字符

发布于 2019-04-10 18:24:19
今天移植了rtt nano 3.1.2到新唐nuc029上,移植之后shell能正常输出,但是不能输入。每次输入内容,就宕机。追踪后发现,在串口的中断接收处理函数中,没有内存可以存放收到的数据。也就是串口打开函数中,没有申请到内存。进不了申请内存的判断。串口驱动注册应该也是没问题的,如图所示,希望各位支招。

1.png
2.png

查看更多

关注者
0
被浏览
961
6 个回答
bernard
bernard 2019-04-10
或者是SRAM太小了?可以多看看heap相关的,芯片SRAM相关的,程序几块内存空间使用状况的信息
linhuikui
linhuikui 2019-04-11
yangjie 发表于 2019-4-10 20:02
如果是内存占用的问题,推荐把nano3.1.2换成之前的版本,参考一下这个帖子 https://www.rt-thread.org/qa/t ...


谢谢回复,不是分配不到内存,而是没有运行到那里。我的串口驱动传了中断接收标志的,但是串口服务驱动里面这个标志就不在了,运行不到那里了。
linhuikui
linhuikui 2019-04-11
bernard 发表于 2019-4-10 21:33
或者是SRAM太小了?可以多看看heap相关的,芯片SRAM相关的,程序几块内存空间使用状况的信息 ...


谢谢回复,不是内存问题,而是没有运行到串口分配缓冲区那块代码。在串口驱动服务的serial.c中。
linhuikui
linhuikui 2019-04-15
帖子已经沉了,可有人遇到同样的问题呢?
linhuikui
linhuikui 2019-09-25
问题出在没有开启使用设备(DEVICE)那个宏;没开启使用设备的宏,却可以注册设备,这有点不太对。

撰写答案

请登录后再发布答案,点击登录

发布
问题

分享
好友

手机
浏览

扫码手机浏览