合宙ESP32C3硬件配置信息串口打印输出

2023-11-23 04:59

本文主要是介绍合宙ESP32C3硬件配置信息串口打印输出,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

合宙ESP32C3硬件配置信息串口打印输出


🌴ESP32C3硬件简介

📝ESP32-C3 搭载 RISC-V 32 位单核处理器,时钟频率高达 160 MHz。具有 22 个可编程 GPIO 管脚、内置 400 KB SRAM,集成 2.4 GHz Wi-Fi 和支持长距离的 Bluetooth 5 (LE),支持蓝牙 Mesh (Bluetooth Mesh) 协议和乐鑫 Wi-Fi Mesh.

  • 🔖ESP32C3资料文档
  • https://www.espressif.com.cn/sites/default/files/documentation/esp32-c3_datasheet_cn.pdf
  • ✨经检测,通过Arduino IDE编译上传的代码可以打印外置spi flash 容量,而通过VSCode PIO编译上传的代码就查询不到有关flash容量的信息。
  • 📢另外需要注意的地方:通过Arduino平台编译上传代码时,flash Mode一定要选择DIO模式,否则会无限重启。
    在这里插入图片描述

⛳示例程序

/*BlinkThis example code is in the public domain.https://www.arduino.cc/en/Tutorial/BuiltInExamples/Blink
*/void setup() {Serial.begin(115200);// initialize digital pin LED_BUILTIN as an output.pinMode(12, OUTPUT);pinMode(13, OUTPUT);
}// the loop function runs over and over again forever
void loop() {digitalWrite(12, HIGH);   // turn the LED on (HIGH is the voltage level)digitalWrite(13, LOW);   // turn the LED on (HIGH is the voltage level)delay(1000); // wait for a seconddigitalWrite(12, LOW);    // turn the LED off by making the voltage LOWdigitalWrite(13, HIGH);delay(1000);  Serial.printf("getHeapSize= %d \n",ESP.getHeapSize());
delay(10);
Serial.printf("getFreeHeap= %d \n",ESP.getFreeHeap());delay(10);Serial.printf("getChipRevision= %d \n",ESP.getChipRevision()); // 3delay(10);Serial.printf("getChipRevision= %s \n",ESP.getChipModel()); //ESP32-C3delay(10);Serial.printf("getChipCores= %d Core\n",ESP.getChipCores()); // 1delay(10);Serial.printf("getCpuFreqMHz= %d MHz\n",ESP.getCpuFreqMHz()); //160 
delay(10);
// Serial.printf("getSdkVersion= %s \n",ESP.getSdkVersion()); 
// Serial.printf("getFlashChipSize= %d \n",ESP.getFlashChipSize());
//  Serial.printf("getFlashChipSpeed= %d \n",ESP.getFlashChipSpeed());
Serial.printf("getSketchSize= %d bytes\n",ESP.getSketchSize()); //250128delay(10);Serial.printf("getFreeSketchSpace= %d bytes\n",ESP.getFreeSketchSpace()); //13631488 bytesdelay(10);Serial.printf("getSketchMD5= %s \n",ESP.getSketchMD5().c_str());//acaaaa867e2263c1f83c0daef8474855delay(10);uint32_t flash_Size = ESP.getFlashChipSize(); Serial.printf("getFlashChipSize= %d \n",flash_Size); //16777216
delay(10);Serial.printf("getFlashChipSpeed= %d \n",ESP.getFlashChipSpeed()); //80000000delay(10);FlashMode_t flash_Mode = ESP.getFlashChipMode();Serial.printf("Flash mode:  %s\n", (flash_Mode == FM_QIO ? "QIO" : flash_Mode == FM_QOUT ? "QOUT" : flash_Mode == FM_DIO ? "DIO" : flash_Mode == FM_DOUT ? "DOUT" : "UNKNOWN"));delay(1000);}
  • 🌼基于VSCode PIO编译相同的代码

🌿程序代码编译只占1.7%符合自定义分区表的配置。但是在VSCode PIO编译上传的代码有一个问题,就是通过函数无法读取外置SPI flash 容量。

在这里插入图片描述
在这里插入图片描述

  • 🎉基于Arduino IDE编译的串口打印信息
    在这里插入图片描述
    • 🌿基于VSCode PIO编译上传的代码,然后串口打印信息

在这里插入图片描述

这篇关于合宙ESP32C3硬件配置信息串口打印输出的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/415514

相关文章

Spring Boot Maven 插件如何构建可执行 JAR 的核心配置

《SpringBootMaven插件如何构建可执行JAR的核心配置》SpringBoot核心Maven插件,用于生成可执行JAR/WAR,内置服务器简化部署,支持热部署、多环境配置及依赖管理... 目录前言一、插件的核心功能与目标1.1 插件的定位1.2 插件的 Goals(目标)1.3 插件定位1.4 核

RabbitMQ消息总线方式刷新配置服务全过程

《RabbitMQ消息总线方式刷新配置服务全过程》SpringCloudBus通过消息总线与MQ实现微服务配置统一刷新,结合GitWebhooks自动触发更新,避免手动重启,提升效率与可靠性,适用于配... 目录前言介绍环境准备代码示例测试验证总结前言介绍在微服务架构中,为了更方便的向微服务实例广播消息,

一文详解如何使用Java获取PDF页面信息

《一文详解如何使用Java获取PDF页面信息》了解PDF页面属性是我们在处理文档、内容提取、打印设置或页面重组等任务时不可或缺的一环,下面我们就来看看如何使用Java语言获取这些信息吧... 目录引言一、安装和引入PDF处理库引入依赖二、获取 PDF 页数三、获取页面尺寸(宽高)四、获取页面旋转角度五、判断

nginx 负载均衡配置及如何解决重复登录问题

《nginx负载均衡配置及如何解决重复登录问题》文章详解Nginx源码安装与Docker部署,介绍四层/七层代理区别及负载均衡策略,通过ip_hash解决重复登录问题,对nginx负载均衡配置及如何... 目录一:源码安装:1.配置编译参数2.编译3.编译安装 二,四层代理和七层代理区别1.二者混合使用举例

Java JDK1.8 安装和环境配置教程详解

《JavaJDK1.8安装和环境配置教程详解》文章简要介绍了JDK1.8的安装流程,包括官网下载对应系统版本、安装时选择非系统盘路径、配置JAVA_HOME、CLASSPATH和Path环境变量,... 目录1.下载JDK2.安装JDK3.配置环境变量4.检验JDK官网下载地址:Java Downloads

Linux下进程的CPU配置与线程绑定过程

《Linux下进程的CPU配置与线程绑定过程》本文介绍Linux系统中基于进程和线程的CPU配置方法,通过taskset命令和pthread库调整亲和力,将进程/线程绑定到特定CPU核心以优化资源分配... 目录1 基于进程的CPU配置1.1 对CPU亲和力的配置1.2 绑定进程到指定CPU核上运行2 基于

Spring Boot spring-boot-maven-plugin 参数配置详解(最新推荐)

《SpringBootspring-boot-maven-plugin参数配置详解(最新推荐)》文章介绍了SpringBootMaven插件的5个核心目标(repackage、run、start... 目录一 spring-boot-maven-plugin 插件的5个Goals二 应用场景1 重新打包应用

Java中读取YAML文件配置信息常见问题及解决方法

《Java中读取YAML文件配置信息常见问题及解决方法》:本文主要介绍Java中读取YAML文件配置信息常见问题及解决方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要... 目录1 使用Spring Boot的@ConfigurationProperties2. 使用@Valu

Jenkins分布式集群配置方式

《Jenkins分布式集群配置方式》:本文主要介绍Jenkins分布式集群配置方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1.安装jenkins2.配置集群总结Jenkins是一个开源项目,它提供了一个容易使用的持续集成系统,并且提供了大量的plugin满

SpringBoot线程池配置使用示例详解

《SpringBoot线程池配置使用示例详解》SpringBoot集成@Async注解,支持线程池参数配置(核心数、队列容量、拒绝策略等)及生命周期管理,结合监控与任务装饰器,提升异步处理效率与系统... 目录一、核心特性二、添加依赖三、参数详解四、配置线程池五、应用实践代码说明拒绝策略(Rejected