python menuconfig_如何配置 ESP32 Menuconfig

python menuconfig_如何配置 ESP32 Menuconfig如何配置ESP32Menuconfig准备我们可以有2种方式进入menuconfig模式1在Eclipse界面启动MenuConfigTarget(需参照如何使用安信可ESP系列一体化开发环境IDF章节);2打开Cygwin.bat,进入工程目录,执行makemenuconfig指令。这2种方法最终实现的效果都是一致的,您可以根据自己的需要进行选择。介绍执行…

大家好,又见面了,我是你们的朋友全栈君。

如何配置 ESP32 Menuconfig

准备

我们可以有2种方式进入menuconfig模式

1 在 Eclipse 界面启动 MenuConfig Target (需参照如何使用安信可 ESP 系列一体化开发环境 IDF章节);

2 打开 Cygwin.bat, 进入工程目录,执行 make menuconfig 指令。

这 2 种方法最终实现的效果都是一致的,您可以根据自己的需要进行选择。

介绍

执行 make menuconfig 后,界面显示如下:

python menuconfig_如何配置 ESP32 Menuconfig

其中:

项目备注

SDK tool configuration配置SDK 开发工具链的信息,一般未编译自己工具链时不用修改

Bootloader config配置BootLoader 启动时的日志打印级别

Serial flasher config配置串口下载时使用的端口、波特率、Flash 模式、Flash 频率、是否压缩上传等

Partition Table配置分区信息,可选择默认分区配置或自定义分区配置

Component config组件配置 包含ESP32的特殊配置、WiFi配置、BLE配置、FreeRTOS配置、LWIP配置、日志配置、SPI配置、用户程序自定义配置等

下面分开讲解每一项的配置意义,所有的备注均为个人理解,请尽量以配置菜单中的【Help】菜单显示为准。

SDK tool configuration

python menuconfig_如何配置 ESP32 Menuconfig

项目默认值备注

Compiler toolchain path/prefixxtensa-esp32-elf-该配置项一般无需配置,除非自己编译交叉编译链时,且使用了跟 xtensa-esp32-elf- 不同的名字。

Python 2 interpreterpythonpython 2 解释器的名称,一般默认都是python。

Bootloader config

python menuconfig_如何配置 ESP32 Menuconfig

项目备注

Bootloader log verbosityWarning这里可以配置BootLoader的日志打印级别,级别越高,打印出的日志信息量越多,可以根据自己的需要选择合适的级别。

级别排序为:No output < Error < Warning < Info < Debug < Verbose 。

Serial flasher config

python menuconfig_如何配置 ESP32 Menuconfig

项目默认值备注

Default serial port/dev/ttyUSB0windows 下的 COM1 对应 cygwin 下的/dev/ttyS0 ,COM2 对应 ttyS1,以此类推。

Default baud rate921600您可以选择 230400/921600/2M/Other baud rate ,如果您选择了 Other baud rate,则需要在下面手动输入您认为可用的下载速率,ESP32 目前最大的下载速率为 1152000.

Use compressed upload是是否选择压缩上传,可以提升固件下载时的速度。

Flash SPI modeDIOSPI运行模式,推荐DIO方式

Flash SPI speed40MHZSPI 速率,需要根据自己的 Flash 型号进行配置,部分型号的Flash不支持过高的速率。

Partition Table

python menuconfig_如何配置 ESP32 Menuconfig

项目默认值可选值备注

Partition TableSingle factory app, no OTASingle factory app, no OTA

Factory app, two OTA definitions

Custom partition table CSV默认分区文件地址为:components/partition_table

一般使用Single factory app, no OTA 。

自定义分区可以参考下面的示例

如何修改自定义分区表

python menuconfig_如何配置 ESP32 Menuconfig

下面以 NodeMCU 的 spiffs 分区为例:

1 勾选 Custom partition table CSV

2 在 Custom partition table CSV 中输入自定义的分区信息文件名:partitions-2MB.csv

3 在工程的根目录下建立 partitions-2MB.csv文件(参考 components/platform/partitions-2MB.csv)

# Espressif ESP32 Partition Table

# NameTypeSubTypeOffsetSize

factoryappfactory0x100001M

rfdatadatarf0x110000256K

wifidatadatawifi0x150000256K

# 0xC2 ⇒ NodeMCU0x0 ⇒ Spiffs

spiffs0xC20x0448K

4 编译下载。

Component config

python menuconfig_如何配置 ESP32 Menuconfig

ESP32-specific config

python menuconfig_如何配置 ESP32 Menuconfig

项目备注

CPU frequency (240 MHz)可选择 80/160/240MHZ,CPU 频率越大,运行速率越高,但越容易发生不稳定现象。

Select stack to enable (WiFi or BT)可选择开启 WiFi 或 BT 功能,当前 ESP32 的 WiFi 和 BT 尚不能共存,仅可保留一项。

Reserve memory for two cores

Use TRAX tracing feature是否使用ESP32的追踪特性,会占用16K的内存(每个核),建议关闭

Use external SPI SRAM chip as main memory是否使用外部 SPI SRAM 作为主内存?

System event queue size系统事件的队列大小,默认为 32

Event loop task stack size系统事件任务的堆栈大小,默认为 2048

Main task stack size主任务的堆栈大小,默认为 4096

Standard-out output adds carriage return before newline标准输出数据时添加一个回车符(在输出 LF 前添加 CR)

Enable Ultra Low Power (ULP) Coprocessor启用超低功耗协处理器

FreeRTOS

python menuconfig_如何配置 ESP32 Menuconfig

项目备注

Run FreeRTOS only on first core默认FreeRTOS运行在两个核上,若需要使用其它进程控制另外一个核,则可以启用该选项。建议禁止

Xtensa timer to use as the FreeRTOS tick sourceFreeRTOS 的心跳时钟源,默认即可

Tick rate (Hz)FreeRTOS 的心跳速率,取值范围为 1~1000

Halt when an SMP-untested function is called当对称多处理器单元测试函数被调用时停止运行(此项翻译不确定)

Check for stack overflow检查堆栈溢出

Amount of thread local storage pointers本地可以存储的线程指针数目,默认为1,取值范围为 1~256,使用 WiFi 栈时至少为 1

Panic handler behaviour发生异常时如何处理:

Print registers and halt

Print registers and reboot

Silent reboot

Invoke GDBStub

Make exception and panic handlers JTAG/OCD aware发生异常时若检测到 JTAG OCD 调试器,直接将调试器停止在异常指令的位置

FreeRTOS assertions是否使用 configASSERT()

Stop program on scheduler start when JTAG/OCD is detected检测到连接调试器时,停止调度器的自动开始

Enable heap memory debug开启后可以显示出 Heap 的分布,可以发现内存的崩溃

Debug FreeRTOS internals调试 FreeRTOS 内部组件,可以打印的信息以供调试

Log output

python menuconfig_如何配置 ESP32 Menuconfig

项目备注

Default log verbosity默认日志打印级别,级别越高,打印出的日志信息量越多,可以根据自己的需要选择合适的级别。

级别排序为:No output < Error < Warning < Info < Debug < Verbose 。

Use ANSI terminal colors in log output是否开启彩色输出,需要您的串口工具支持彩色显示。

LWIP

python menuconfig_如何配置 ESP32 Menuconfig

项目默认值备注

Max number of open sockets4同时开启 sockets 的最大数目,取值为 1~16,过大会消耗过多内存

Index for thread-local-storage pointer for lwip0线程本地指针索引,默认即可

mbedTLS

python menuconfig_如何配置 ESP32 Menuconfig

项目默认值备注

TLS maximum message content length16384 (bytes)TLS 消息内容最大长度

Enable mbedTLS debuggingNO是否开启 mbedTLS 调试

SPI Flash driver

python menuconfig_如何配置 ESP32 Menuconfig

项目默认值备注

Enable operation countersNO是否开启SPI Flash 使用统计,开启后可以调用以下几个函数:

spi_flash_reset_counters

spi_flash_dump_counters

spi_flash_get_counters

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/134299.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • uni-app uni.uploadFile上传图片前后端(java)详解

    uni-app uni.uploadFile上传图片前后端(java)详解近日在使用uni.uploadFile上传图片时,碰到后端收到不到文件的问题,网上没有写uni-appjava后端的处理实例,小程序到是有很多,但都是单文件上传,即使是多文件上传,也是采用一个for循环多次调用uploadFile函数,对文件一个一个提交。伪代码如下://微信小程序为例:for(vari=0;i<filePaths.length;i++){…

  • docker 入门_docker高级教程

    docker 入门_docker高级教程一、docker概述1.什么是dockerDocker是一个开源的应用容器引擎,基于Go语言并遵从Apache2.0协议开源。Docker可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口(类似iPhone的app),更重要的是容器性能开销极低。Docker从17.03版本之后分为CE(CommunityEdition:社区版)和E..

    2022年10月15日
  • Python语言程序设计基础(1)—— 程序设计基本方法

    Python语言程序设计基础(1)—— 程序设计基本方法Everybodyinthiscountryshouldlearnhowtoprogramacomputer,becauseitteachesyouhowtothink

  • sqlserver创建视图索引「建议收藏」

    sqlserver创建视图索引「建议收藏」索引视图创建注意事项对视图创建的第一个索引必须是唯一聚集索引。创建唯一聚集索引后,可以创建更多非聚集索引。为视图创建唯一聚集索引可以提高查询性能,因为视图在数据库中的存储方式与具有聚集索引的表的存储方式相同。查询优化器可使用索引视图加快执行查询的速度。要使优化器考虑将该视图作为替换,并不需要在查询中引用该视图。索引视图中列的large_value_types_out_of_row选项的设置继承的是基表中相应列的设置。此值是使用sp_tableoption设置的。从表达式组成的列的默认设

  • Databus 深入学习

    Databus 深入学习一、关于databusLinkedIn于2月26日开源了其低延时变化数据捕获系统Databus,该系统可以在MySQL以及Oracle数据源上捕获数据,当下LinkedIn只开源了Oracle上的连接器。Databus作为LinkedIn生态系统中的一致性保障组件,在低延时的情况下仍然具有高有效性;而其最大的特点莫过于无限制恢复能力及丰富的数据深度处理功能。二、基于da…

    2022年10月10日
  • Python爬虫程序实例

    Python爬虫程序实例在这个爬虫程序中使用到“BeautifulSoup”与“requests”两个包,所以我们之前要安装这两个包,如果不清楚是否安装,可以使“piplist”查看是否已经安装。做“爬虫程序”时建议用谷歌浏览器对网页元素进行检查,在网页空白处右击鼠标在弹出菜单中,使用“检查”菜单项。在检查元素窗口中,在“Elements”窗口仔细查看网页元素,特别要观察所要截取的内容前后HTML元素的特征。在上述代码中:主要抓取中的元素,这里看到它们的class元素的名称都是“news_li_strong”,所以在代

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号