本文主要是介绍合宙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硬件配置信息串口打印输出的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!