• 如何使用安信可 ESP 系列一体化开发环境【转】


    本文转载自:http://wiki.ai-thinker.com/ai_ide_use

    注意:Eclipse 只是一个代码编写工具,它并不能读取 makefile 里面的一些配置,甚至它会读取到 cygwin 下同名称的头文件。

    针对该现象引起的报错,我们建议用户在使用该 IDE 时,直接将 Problems 栏目关掉,因为该提示并不准确,我们主要关注的信息应该为 Console 栏目下的输出。(第一条 Console 报错最重要!)

     

    准备

    我们以ESP8266_NONOS_SDK_V1.5.4为例 (使用乐鑫原厂固件,需要将 driver_lib 和 examples/IoT_Demo 下的文件拷贝到 app目录下 ,后续步骤与下面一致。)

    下载后解压到合适的目录下

    打开 ESP8266IDE.exe

    导入项目

    1. 选择 File→Import

    2. 点开C/C++分支,并选中Existing Code as Makefile Project

    3. 去除C++支持,选中 Cygwin GCC

    点击Browser,选中esp_iot_sdk_v1.5.2所在的目录

    4. 点击 Finish 完成esp_iot_sdk_v1.5.2的导入

    如下图:

    编译项目

    鼠标选中项目名称,点击右键出现菜单:

    Build Project :编译项目

    Clean Project:清理项目

    选中编译项目,控制台输出如下图即编译成功

    注意:Build Project 前最好先 Clean Project,以防止出错

    结束

    至此已经完成了ESP8266的编译

    接下来的烧写下载部分请跳至如何为 ESP 系列模组烧录固件

    若您需要更多示例,请跳转至ESP8266示例

    以下内容适用于乐鑫默认方式,您可以直接下载ESP8266_RTOS_SDK_V1.5.0 ,该示例工程合并了用户工程和SDK工程,可以直接按照 NONOS 版本步骤导入。8-)

    准备

    首先我们下载 ESP8266_RTOS_SDK

    下载后解压到合适的目录下,我们以 D:AithinkerESP8266_RTOS_SDK 为例:

    ESP8266的FreeRTOS SDK,采用了SDK和工程文件夹分离的方式,所以我们需要手动创建一个 app 目录。

    1. 将 sdk 目录下的 driver_lib 重命名为 app

    2. 拷贝 /examples/project_template 下的所有文件到刚才的 app 目录(提示覆盖则确认),完成后目录结构如下:

    3. 将 ESP8266_RTOS_SDK/third_party/makefile 重命名为 makefile.bak ,以防止编译时报错,虽然不影响编译但是强迫症患者不能忍啊。。。

    接下来,我们启动 ESP_IDE,将项目导入 Eclipse

    导入项目

    1. 选择 File→Import

    2. 点开C/C++分支,并选中Existing Code as Makefile Project

    3. 去除C++支持,选中 Cygwin GCC

    点击Browser,选中ESP8266_RTOS_SDK

    4. 点击 Finish 完成ESP8266_RTOS_SDK的导入

    完成后如下图:

    配置项目

    因为分离了sdk和project目录

    所以编译之前必须先指定一个 SDK_PATH 和 BIN_PATH

    修改 ESP8266_RTOS_SDK/app 目录下的 makefile,添加以下内容

    parent_dir:=$(abspath $(shell pwd)/$(lastword $(MAKEFILE_LIST)))
    parent_dir:=$(shell dirname $(parent_dir))
    parent_dir:=$(shell dirname $(parent_dir))
    
    SDK_PATH= $(parent_dir)
    BIN_PATH=$(SDK_PATH)/bin

    编译默认项目

    鼠标选中 ESP8266_RTOS_SDK_V1.5.0,点击右键出现菜单:

    Build Project :编译项目

    Clean Project:清理项目

    选中编译项目,控制台输出如下图即编译成功

    注意:Build Project 前最好先 Clean Project,以防止出错

    编译 Hello World

    1. 删除 sample_lib 文件夹

    2. 修改 ESP8266_RTOS_SDK/app/makefile,将 makefile 中的 sample_lib 替换为 driver ,将 libsample_lib.a 替换为 libdriver.a

    3. 因为 driver/i2c_master.c 编译时会报错,因此需要在该文件内添加一些头文件支持

    4. ESP8266 默认打印端口为串口 1,需要进行一些初始化方可使用,我们在 user_main.c 的 user_init() 函数中调用 uart_init_new() 函数

    5. 修改 ESP8266_RTOS_SDK/Makefile,使其支持boot模式

    6. 再次编译项目,至此可以参考 如何为 ESP 系列模组烧录固件 进行固件的下载

    7. 运行结果如下:

     

    准备

    首先,打开 cygwin.bat

    cygwin.bat

    执行下列指令以使用 git 下载esp-idf 和 esp-idf-template

    cd /cygdrive/d/ESP32 (进入你的工程目录)
    git clone --recursive https://github.com/espressif/esp-idf.git (必须添加--recursive 属性,否则无法全部拉取所有模块)
    cd esp-idf
    git clone https://github.com/espressif/esp-idf-template app (将 esp-idf-template clone到 esp-idf/app 下)
    git submodule update --init (强制拉取所有子模块,防止上一步骤遗漏)

    若 git 下载较慢或失败,可下载http://pan.baidu.com/s/1jIRotBg(已打包 esp-idf 和 esp-idf-template,下载后请执行 git pull 以进行更新),可省略上面 git 步骤。

    打开 ESP_IDE.exe,配置正确的 esp-idf 路径,并点击【OK】打开 eclipse

    导入项目

    1. 选择 File→Import

    2. 点开C/C++分支,并选中Existing Code as Makefile Project

    3. 去除C++支持,选中 Cygwin GCC

    点击Browser,选中 esp-idf 所在的目录

    4. 点击 Finish 完成 esp-idf 的导入

    如下图:

    配置项目

    因为 make 只能从 app 目录启动,故我们需要修改整个项目 build 的位置

    右键项目→Properties ,单击 C/C++ Build,修改如下图

    此时,已经具备了编译的基础,下面我们配置 make menuconfig 和 make flash 两条指令

    首先新建target,右键项目名称→Make targets ,选择 Creat

    给该 Target 新建一个名称

    在弹出的页面中取消勾选 Use builder setting ,

    取消勾选 Same as the target name 并清空 Make target 的内容

    在下面command 中输入 mintty.exe -e make menuconfig

    点击 OK 保存

    重复上一步骤,新建一个 DownLoad 的 Target ,

    在弹出的页面中取消勾选 Use builder setting ,

    取消勾选 Same as the target name 并清空 Make target 的内容

    在下面command 中输入 make flash

    点击 OK 保存

    选中项目,按下快捷键 Shift + F9,弹出刚才新建的两个 Target

    鼠标选中需要编译的 Target, 点击 Build 即可实现在 Eclipse 中下载和配置 idf

    编译项目

    首次使用请先执行 make menuconfig

    鼠标选中项目名称,点击右键出现菜单:

    Build Project :编译项目

    Clean Project:清理项目

    选中编译项目,控制台输出如下图即编译成功

    注意:Build Project 前最好先 Clean Project,以防止出错

    结束

    至此已经完成了ESP32的编译

    接下来的烧写下载部分请跳至如何为 ESP 系列模组烧录固件

    若您需要更多示例,请跳转至ESP32 示例

  • 相关阅读:
    Angular之ngRoute与uiRoute
    Python实现网络测速--转载
    You are using pip version 10.0.1, however version 20.2.2 is available.
    Pycharm导出环境,实现环境迁移
    Python编辑器之pycharm2020.1破解汉化
    Rsyslog系统日志转发
    服务器DNS配置
    服务器系统配置初始化脚本
    系统巡检用到的参数
    inotify高效监控Linux文件系统事件
  • 原文地址:https://www.cnblogs.com/zzb-Dream-90Time/p/6678697.html
Copyright © 2020-2023  润新知