常见问题

优质
小牛编辑
136浏览
2023-12-01

如何添加文件到工程

可以直接通过复制粘贴往RT-Thread Studio工程里添加文件,甚至可以直接可以往工程里复制粘贴整个文件夹,也可以通过右键新建向导选择新建文件夹,新建C源码文件或H头文件,如果添加文件后构建提示文件找不到,请到工程构建配置里将添加的文件添加Include包含头文件路径

如何让源码显示行号

在源码编辑窗口的左边栏上右键,选择显示行号,即可显示行号,如下图所示:

showline

串口出现丢失字符怎么办

排除程序的原因外,串口线的质量,波特率是否设置过高都是需要考虑的因素,可以尝试换个串口线,或者将波特率调低点试试。

删除工程的时候删不掉怎么办

由于工程里可能有 git 文件被 git 程序占用造成工程有时删除部分后失败,提示占用问题,可以试试删除工程先前先关闭工程,等待一会后再删除,或者删除失败后,通过重启菜单重启一下 RT-Thread Studio 就可以正常删除了,重新启动菜单入口(菜单栏文件菜单内)和关闭项目(项目上右键菜单内)入口如下图所示:

restartpro

用户是否可以修改 rt-thread 及 packages 目录下的文件及配置

不可以。rt-thread 及 packages 目录下的文件统一使用 RT-Thread Setting 文件来管理和配置,当需要这两个目录下的相关文件参与编译时,应该在 RT-Thread Setting 文件中来打开相关功能。

例如用户想让当前 rt-thread 目录下的 dfs 参与编译,如下图所示

build-dfs

用户不能直接修改文件属性让 dfs 文件参与编译,而是通过 RT-Thread Setting 文件打开 DFS 的配置,保存配置后 dfs 的配置后,Studio 会自动将 dfs 文件添加到构建文件中,如下图所示

open-dfs

Studio 编译结果中 text,data,bss,dec 和 hex 的各个含义是什么

Studio 的编译结果如下图所示

build-data

  • text:代码段,用来存放代码及一些只读常量,一般是只读的区域

  • data:数据段,用来存放全局初始化变量,以及全局或局部静态变量

  • bss:BSS 段,用来存放所有未初始化的数据,用 0 来初始化

  • dec:是 decimal 即十进制的缩写,是 text,data 和 bss 的算术和 本例中:51344 + 372 + 2808 = 54524

  • hex:是 hexadecimal 即十六进制的缩写,本例中:十进制数 54524 对应的十六进制就是 d4fc

  • filename:编译生成的目标文件名,本例中即为:rtthread.elf

编译生成的目标文件占用内存的计算方法

程序占用的 FLASH 大小 = text 段的大小 + data 段的大小

程序占用的 RAM 大小 = data 段的大小 + bss 段的大小

ST-LINK烧写端口被占用怎么办

当弹出错误对话框提示“TCP Port 61234 not available”时, 打开调试配置修改 ST-LINK端口号即可, 如下图所示:

stlinkport

打开RT-thread settings窗口,为什么看不到图标界面

1.选择非Nano版本源码

新建工程选择RT-Thread非Nano版本源码即可, Nano是纯净版,没有组件概念

2.切换到项目资源管理器视图

如果选择了非Nano版本源码,还看不到RT-thread settings,看看视图是否是项目资源管理器视图。如果不是,可以选择窗口,点击显示视图,选择项目资源管理器即可,如下图所示:

RT-Thread Studio 升级失败

总共分两种情况:

  • 如果更新失败提示信息里有 “org.eclipse.equinox.internal.p2.engine.phases.CheckTrust” RT-Thread Studio 升级前请先关闭翻墙工具,或尝试删除安装目录下的“artifacts.xml”文件重启再试

  • 如果更新失败提示信息里有 “No Repository found”或发生下图所示错误,请手动探测更新。在更新页面内,取消勾选 “Group items by category”和“Contact all update sites during install to find required software” 并勾选"Eclipse Platform Launcher Executables",然后尝试安装studio更新,若安装过程中出错,关闭后重试一次即可 。

upadte_error1

upadte_error2

upadte_error3

如何打开关闭的项目

右键菜单,打开项目即可,如下图所示:

openproject

创建工程失败 装载 python DLL 出错 怎么办

  • 问题描述: Error loading Python DLL xxx/MEI85262/python36.dll. LoadLibrary:找不到指定程序

python36.png

  • 解决方法:请手动安装 Visual C++ Redistributable, 点我下载

项目资源管理器如何 显示/隐藏 被排除构建的资源

RT-Thread Studio 从 V 1.1.4 版本开始支持显示/隐藏被排除构建的资源,如下图所示,这些被排除构建的资源显示为灰色,并且资源图标上有斜杠标志,被排除构建的资源将不会在启动编译时参与编译,Studio 默认隐藏了这些资源。

exclude_build_0

  • 如果想显示/隐藏这些资源,请先点击项目资源管理器右上角的倒三角,会展示如下菜单,点击过滤器和定制:

exclude_build_1

  • 在过滤器和定制中,有很多可以选择过滤的资源,勾选/取消勾选 RTT Excluded Resource ,即可隐藏/显示被排除构建的资源。

exclude_build_2

如何解决 studio 编译或者清理时命令行超出 windows 长度限制的问题

windows 命令行长度限制导致的问题

Windows 下命令行的字符串长度限制为 8191 个字符,在 windows 系统上进行编译或者清理的时候,可能出现以下问题:

  • 编译工程链接的时候,若出现如下图所示【 CreateProcess : No such file or directory 】的错误,可能是因为工程文件过多或者目录名过长等原因导致链接时命令行过长,部分 .o 被截断产生的问题。

link-cmd

  • 在清理 ( Clean ) 工程的时候,当工程过大时,可能会和链接时一样出现 process_begin : CreateProcess 的问题,由于命令 rm 后的参数过长,导致 windows 不能处理此命令。

clean_error

在 RT-Thread Studio 中如何解除命令行长度的限制

RT-Thread Studio 为用户提供了一键解决命令行长度限制的方法,此方法仅对编译和清理有效:

  • 打开项目菜单,可看见 解除命令行长度限制的 子菜单,点击选中,打勾的情况即为选中了。再次编译或者清理工程,就不会再出现以上问题:

image-20210312112104075

  • 如果不想解除命令行限制,只要将上图菜单取消选中即可。

添加软件包后在 packages 目录找不到的解决办法

如果在 RT-Thread Settings 添加软件包后,在 packages 目录下找不到软件包或者软件包被排除编译,请尝试以下方法:

  • 以 network_samples-v0.3.0 软件包为例:

  • 双击打开 RT-Thread Settings

    image-20201111183423826

  • 右键不能显示的软件包,打开详细配置

    image-20201111182737509

  • 为该软件包配置至少配置一个子选项,不然和没勾选的参与编译情况是一样的

    image-20201111182930239

  • 保存该配置即可

image-20201111183636804

如何解决第一次启动Studio时登录页面不显示的问题

进入Studio安装目录,打开studio.ini 文件,将Dorg.rtthread.studio.browser.systemdefault=false 值修改为Dorg.rtthread.studio.browser.systemdefault=true (该方法仅支持V2.0及以后的版本)