Linux系统下ESP32开发板如何搭建RT-Thread开发环境

发布时间:2021-10-22 12:00:07 作者:柒染
来源:亿速云 阅读:610

这篇文章将为大家详细讲解有关Linux系统下ESP32开发板如何搭建RT-Thread开发环境,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。


1. 搭建步骤

以下步骤是以Ubuntu 16.04 LTS 32bit 英文版中为例,其他Linux系统类似,但不排除有小细节不同(如包管理软件为yum等)。

ESP32的下载需要使用USB串口工具,请确保自己的开板(ESP-DevkitC、NodeMCU-32S)集成有USB串口功能,或者使用USB转串口工具,Linux中串口的描述符默认是/dev/ttyUSB0,如果你使用的串口不是/dev/ttyUSB0,烧写时修改的路径请自行修改。

以下示例中linux用户的名称为ss,请自行替换为自己linux的用户名。此外,工程及编译工具都放在用户根目录下,你可以根据自己实际情况设置到合适位置中。

在熊大如下的git项目版本中已经经过了测试,不排除最新版本有了完善:

commit a8504d523214ee872ae480106e31cd1db138b74f

Author: Bernard Xiong <bernard.xiong@gmail.com>

Date:   Fri Aug 25 15:29:362017 +0800

1.1. 下载交叉编译工具

cd ~

wgethttps://dl.espressif.com/dl/xtensa-esp32-elf-linux32-1.22.0-61-gab8375a-5.2.0.tar.gz

1.2. 解压缩交叉编译工具

tar -xzf xtensa-esp32-elf-linux32-1.22.0-61-gab8375a-5.2.0.tar.gz

1.3. 安装必要的软件

sudo apt-get install git wget make libncurses-devflex bison gperf python python-serial scons

1.4. 获取代码

cd ~

git clonehttps://github.com/BernardXiong/rtthread-esp-idf

 

cd rtthread-esp-idf

git submodule init

git submodule update

 

cd esp-idf-port/esp-idf

git submodule init

git submodule update

 

git apply ../0001-cpu_start-patch.patch

git apply ../0002-add-esp_task.h.patch

git apply ../0003-add-memset-to-0.patch

1.5. 修改工程中交叉编译工具的路径

修改~/rtthread-esp-idf/rtconfig.py中exec_path的路径为:

EXEC_PATH   =r'/home/ss/xtensa-esp32-elf/bin'

1.6. 编译

首先修改个Makefile中的一个小错误,python那行命令路径需要修改:

pythonesp-idf-port/esp-idf/components/esptool_py/esptool/esptool.py --chip esp32elf2image --flash_mode "dio" --flash_freq "40m"--flash_size "4MB"  -ortthread.bin rtthread-esp32.elf

然后进入项目根目录进行编译

cd ~/rtthread-esp-idf

make all

1.7. 下载

1) 由于Linux下普通用户无权限直接操作/dev/ttyUSB0,首先给当前用户加入相应的权限,以便后边烧写时不需要使用sudo权限:

sudo usermod -aG dialout ss

设置完成后注销重新登录一下当前用户即可,之后不再需要执行该命令。

2) 修改~/rtthread-esp-idf/burn_flash.bat中串口的名字(/dev/ttyUSB0)为如下:

python esp-idf-port/esp-idf/components/esptool_py/esptool/esptool.py--chip esp32 --port /dev/ttyUSB0 --baud 115200 --before"default_reset" --after "hard_reset" write_flash -z--flash_mode "dio" --flash_freq "40m" --flash_size detect0x1000 bootloader.bin 0x10000 rtthread.bin 0x8000 partitions_singleapp.bin

3) 给burn_flash.bat设置好执行权限:

chmod a+xburn_flash.bat

4) 将开发板与电脑连接好(如果是虚拟机,需要将设置连入虚拟机),同时如果开发板不支持一键烧写功能,一般需要通过按键使其进入烧写模式(同时按下IO0和reset,然后先松开reset,再松开IO0);

5) 执行一下命令等待烧写完成:

cd ~/rtthread-esp-idf

./burn_flash.bat

Linux系统下ESP32开发板如何搭建RT-Thread开发环境

(波特率:115200)

2. 其他说明

2.1. Linux64bit、Windows及macos的交叉编译工具

具体见https://github.com/BernardXiong/rtthread-esp-idf,里边有其他系统交叉编译工具的下载路径。

注:windows下需要先安装MSYS2等GNU-compatible环境软件。

2.2. 目录及文件说明

下图为rttthread-esp-idf的目录结构:

Linux系统下ESP32开发板如何搭建RT-Thread开发环境

其中:

-bootloader.bin:esp32的Second stagebootloader

-partitions_singleapp.bin:esp32的分区表数据,目前rtt默认的是非ota的镜像。

-rttthread-esp32.bin:rtt on esp32的目标代码。

-esp32.common.ld、esp32_out.ld、rtthread-esp32.elf、rtthread-esp32.map:编译镜像的中间文件及脚本工具。


关于Linux系统下ESP32开发板如何搭建RT-Thread开发环境就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

推荐阅读:
  1. Linux下搭建Vue开发环境
  2. [PhoneGap]Mac下搭建PhoneGap开发环境

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

linux rt-thread

上一篇:如何进行OpenNI-Linux-Arm64-2.3.0.66安装与调试

下一篇:Linux中ssh配置无密码登陆完整步骤以及需要注意的问题有哪些

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》