esp8266 rtos sdk开发环境搭建

server/2025/2/27 12:52:47/

1. 安装必要的工具

1.1 安装 Git

Git 用于从远程仓库克隆代码,你可以从Git 官方网站下载 Windows 版本的安装程序。安装过程中可保持默认设置,安装完成后,在命令提示符(CMD)或 PowerShell 中输入git --version,若显示版本信息则安装成功。

1.2 安装 MSYS2

https://dl.espressif.com/dl/esp32_win32_msys2_environment_and_toolchain-20181001.zip

将 zip 文件解压到C:\(或其他位置,但本指南假定C:\),它将创建一个msys32具有预先准备的环境的目录。我这里放在e盘ESP8266目录下

1.3下载 ESP8266 的工具链

v8.4.0

https://dl.espressif.com/dl/xtensa-lx106-elf-gcc8_4_0-esp-2020r3-win32.zip

如果您仍在使用旧版本 SDK(< 3.0),请使用工具链 v4.8.5,如下所示:

https://dl.espressif.com/dl/xtensa-lx106-elf-win32-1.22.0-88-gde0bdc1-4.8.5.tar.gz

解压后放在msys32的opt目录下 

2. 下载 ESP8266 RTOS SDK

进入home目录下新建esp8266,进到此文件夹后,右键打开命令提示符或 PowerShell,执行以下命令克隆 ESP8266 RTOS SDK 代码:

#在 Git 2.13 及更高版本中,--recurse-submodules可以代替使用--recursive:git clone --recurse-submodules -j8 https://github.com/espressif/ESP8266_RTOS_SDK.git# -j8是 2.8 版中提供的可选性能优化,可同时并行获取最多 8 个子模块
#Git 版本 1.9 到 2.12 版本(-j标志仅在 2.8+ 版本中可用):git clone --recursive -j8 https://github.com/espressif/ESP8266_RTOS_SDK.git

--recursive参数用于递归克隆子模块,确保所有依赖的子模块都被下载。

进入ESP8266_RTOS_SDK新建mypro,将example中的gpio拷贝到mypro下面

3. 安装 Python 依赖

在命令提示符或 PowerShell 中,进入ESP8266_RTOS_SDK目录,执行以下命令安装 Python 依赖:

python -m pip install --user -i https://pypi.tuna.tsinghua.edu.cn/simple -r E:/ESP8266/msys32/home/dana0/esp8266/ESP8266_RTOS_SDK/requirements.txt

 PyPI 官网下载 (我这里的缺失模块)

  • pyelftools:访问 pyelftools 的 PyPI 页面,找到适合 Python 2.7 的版本(通常文件名中会包含 py2 相关标识),下载 .whl 或 .tar.gz 格式的文件。
  • click:访问 click 的 PyPI 页面,同样找到适合 Python 2.7 的版本并下载。
安装 .whl 文件

如果下载的是 .whl 文件,在目标设备的命令行中执行以下命令:

python -m pip install /path/to/downloaded_file.whl

将 /path/to/downloaded_file.whl 替换为你实际下载的 .whl 文件的路径。例如,如果你下载的 pyelftools 的 .whl 文件名为 pyelftools-0.29-py2.py3-none-any.whl,则命令为:

python -m pip install /path/to/pyelftools-0.29-py2.py3-none-any.whl

同理,对 click 的 .whl 文件执行相同的操作。

4. 测试开发环境

4.1 进入示例项目

进入ESP8266_RTOS_SDK目录下的示例项目,例如gpio

cd /home/dana0/esp8266/ESP8266_RTOS_SDK/mypro/gpio
4.2 配置开发板

将开发板通过 USB 数据线连接到计算机,确定开发板的串口设备名称(在设备管理器中查看,一般为COMx)。

make menuconfig

在菜单中可以进行一些配置,如串口波特率、分区表等。使用上下箭头键选择选项,回车键进入子菜单或确认选择,Esc键返回上一级菜单,配置完成后选择 “Save” 保存配置,然后选择 “Exit” 退出。

4.3 编译项目
make all

此处是第二次编译

编译过程可能需要一些时间,请耐心等待。如果编译成功,会在项目目录下生成相应的固件文件。

4.4 烧录固件
make flash ESPPORT=COM3  # 根据实际情况修改串口设备名称

烧录过程中,开发板可能需要进入下载模式


http://www.ppmy.cn/server/171039.html

相关文章

二十三种设计模式详解

二十三种设计模式是软件开发中用于解决常见问题的经典解决方案&#xff0c;它们由 Erich Gamma 等四位作者在《设计模式&#xff1a;可复用面向对象软件的基础》一书中提出。这些模式分为三大类&#xff1a;创建型模式、结构型模式 和 行为型模式。 1. 创建型模式&#xff08;…

seasms v9 注入漏洞 + order by注入+​information_schema​解决方法

目录 一、当注入时&#xff0c;information_schema被禁用的解决方法 1.通过sys库可以获取到表名和库名 2.通过无列名注入join获取列名 二、seasms v9 注入漏洞 三、order by注入 一、当注入时&#xff0c;information_schema被禁用的解决方法 information_schema数据库是My…

【一文入门】shell语法进阶篇

Shell 脚本的进阶语法涉及更复杂的编程结构、数据处理和系统交互。以下是一些进阶的 Shell 编程概念和技巧&#xff0c;帮助你提升编写复杂脚本的能力。 前置知识 【一文入门】shell基础语法 【一文入门】shell语法进阶篇 1. 高级变量操作 间接引用&#xff1a;通过变量名的…

LLM大语言模型私有化部署-使用Dify的工作流编排打造专属AI诗词数据分析师

背景 前面的文章通过 Ollama 私有化部署了 Qwen2.5 (7B) 模型&#xff0c;然后使用 Docker Compose 一键部署了 Dify 社区版平台。 LLM大语言模型私有化部署-使用Dify与Qwen2.5打造专属知识库&#xff1a;在 Dify 平台上&#xff0c;通过普通编排的方式&#xff0c;创建了基于…

轮式机器人在复杂地形中如何选择合适的全局路径规划算法

已思考完成 收起 好的&#xff0c;我现在需要回答用户关于轮式机器人局部路径规划算法的问题。用户之前已经提过这个问题&#xff0c;现在提供了更多的参考内容&#xff0c;我需要仔细分析这些内容&#xff0c;整理出合适的答案。 首先&#xff0c;我需要回顾用户提供的参考内容…

C++ Qt常见面试题(1):Qt信号槽的理解

C++ 中的 Qt 信号槽机制 是 Qt 框架中用于实现组件间通信的核心机制之一。它是一种 观察者模式 的实现,提供了一种安全、灵活且松耦合的方式来连接对象和处理事件。下面从10个方面来介绍C++ Qt信号槽的原理及使用技巧。 一. Qt信号槽机制的基本概念 信号(Signal):对象中定义…

云端运维:专栏概要与内容目录

文章目录 云端运维技术专栏&#x1f4da; 核心内容模块服务器远程访问与网络配置远程访问内网穿透与网络优化网络连接问题 开发环境管理Jupyter管理Anaconda环境管理 容器与服务管理Docker使用服务器后台管理 系统问题诊断与解决开发工具版本控制 其他实用技巧 云端运维技术专栏…

基于阿里云PAI平台快速部署DeepSeek大模型实战指南

一、DeepSeek大模型&#xff1a;企业级AI应用的新标杆 1.1 为什么选择DeepSeek&#xff1f; 近期&#xff0c;DeepSeek系列模型凭借其接近GPT-4的性能和开源策略&#xff0c;成为全球开发者关注的焦点。在多项国际评测中&#xff0c;DeepSeek-R1模型在推理能力、多语言支持和…