使用Arduino开发ESP32(15):模块基本信息与复位原因获取
文章目录
- 目的
- 基本信息获取
- 常用方法说明
- 使用示例
- 复位原因
- 总结
目的
本文介绍了Arduino core for the ESP32中获取模块基本信息与复位原因的一些方法。
基本信息获取
常用方法说明
这里列出的方法主要都在EspClass
类中,可以用默认名为ESP
的对象来调用。
uint32_t getHeapSize()
返回总堆大小;uint32_t getFreeHeap()
返回可用堆大小;uint32_t getMinFreeHeap()
返回系统启动以来最低可用堆大小;uint32_t getMaxAllocHeap()
返回可以可以一次分配的最大堆块;uint32_t getPsramSize()
返回外部SPI RAM总堆大小;uint32_t getFreePsram()
返回外部SPI RAM可用堆大小;uint32_t getMinFreePsram()
返回外部SPI RAM系统启动以来最低可用堆大小;uint32_t getMaxAllocPsram()
返回外部SPI RAM可以可以一次分配的最大堆块;uint8_t getChipRevision()
返回芯片版本号;uint8_t getCpuFreqMHz()
返回芯片时钟频率;uint32_t getCycleCount()
返回自上电以来经过的时钟周期数(不太确定);const char * getSdkVersion()
返回SDK版本号;uint32_t getFlashChipSize()
返回flash大小;uint32_t getFlashChipSpeed()
返回flash运行速度;FlashMode_t getFlashChipMode()
返回flash工作模式;
FM_QIO = 0, FM_QOUT = 1, FM_DIO = 2, FM_DOUT = 3, FM_FAST_READ = 4, FM_SLOW_READ = 5, FM_UNKNOWN = 255;uint32_t getSketchSize()
返回当前固件大小;String getSketchMD5()
返回当前固件的MD5校验值;uint32_t getFreeSketchSpace()
返回固件区域剩余大小;uint64_t getEfuseMac()
获取eps32芯片mac地址(6byte),该地址也可以用作芯片ID;
The chip ID is essentially its MAC address(length: 6 bytes).
使用示例
复位原因
使用rtc_get_reset_reason(0)
和rtc_get_reset_reason(1)
可以分别获取core0
和core1
最近一次复位的原因;(core1在Arduino core for the ESP32中就是用户程序运行的核心)
以上函数会返回1~16
的值,分别对应16种复位原因,具体信息可以参考下面官方例程:
https://github.com/espressif/arduino-esp32/blob/master/libraries/ESP32/examples/ResetReason/ResetReason.ino
总结
本篇主要内容就是上面那些了,使用起来比较简单,更多内容可以参考如下:
https://github.com/espressif/arduino-esp32/blob/master/cores/esp32/Esp.h
https://github.com/espressif/arduino-esp32/blob/master/libraries/ESP32/examples/ChipID/GetChipID/GetChipID.ino
使用Arduino开发ESP32(15):模块基本信息与复位原因获取相关推荐
- 使用Arduino开发ESP32(11):IO口与相关外设说明与记录
文章目录 目的 数字IO口 基本使用 外部中断 使用示例 参考链接 LEDC(PWM) 常用方法 使用示例 参考链接 SigmaDelta 参考链接 ADC 常用方法 使用示例 参考链接 存在的问题 ...
- 使用Arduino开发ESP32(13):SD卡的使用
文章目录 目的 SDMMC方式 常用方法 使用示例 SPI方式 常用方法 使用示例 注意事项 总结 目的 对于嵌入式设备来说SD卡也是个比较好用的功能,比如用来存放设备的配置文件.日志文件.执行脚本. ...
- 使用Arduino开发ESP32(八):ESP32的EPROM的写入读取
写入EPROM /* 该代码向EEPROM写入4096字节数据 */ #include <EEPROM.h>void setup() {Serial.begin(115200);Seria ...
- 使用Arduino开发ESP32(06):Ethernet的使用(基于LAN8720)
文章目录 目的 基本说明 接线定义 使用步骤 常用方法说明 使用演示 数据通讯 事件响应 其他说明 PHY地址 时钟 通讯应用 总结 目的 ESP32除了可以使用无线网络外还可以通过外接PHY模块来使 ...
- 使用Arduino开发ESP32:wifi基本功能使用
1.建立网络(AP) 2.连接网络(STA) 3.扫描网络 1.建立网络(AP) 只需两步:1.引用WiFi库include<WiFi.h> 2.启动AP网络WiFi.softAP(ssi ...
- 使用Arduino开发ESP32(07):系统时间和定时任务调度器Ticker
文章目录 目的 系统时间及应用 定时任务调度器Ticker 使用步骤 常用方法 使用事例 事例一 事例二 事例三 总结 目的 开发中经常会用到时间相关操作,主要就是用到系统时间.延时操作.定时任务调度 ...
- 使用Arduino开发ESP32(16):DeepSleep和RTC Memory的使用
文章目录 目的 基础说明 DeepSleep RTC Memory 使用示例 部分方法说明 总结 目的 ESP32在工作时功耗蛮大的,所以我们可以在不需要时进行休眠,这也是蛮常用的功能. 基础说明 D ...
- 使用Arduino开发ESP32(21):蓝牙基础说明与作为服务器使用
文章目录 目的 蓝牙基础说明 测试工具 作为服务器使用 创建蓝牙设备并广播 创建Server 创建Service并启动 创建Characteristic 读写Characteristic中的Value ...
- 基于arduino 开发 esp32 点亮ili9341屏幕
第一次编写csdn文章,也同时做一下笔记方便以后可以快速上手, 内容介绍:用esp32利用arduino点亮ili9341屏幕,本章内容没有触控以及,函数的使用介绍 ili9341引脚介绍: 1 VC ...
- 使用Arduino开发ESP32:关于esp32 wifi连接不上的解决办法
今天在学习MQTT订阅的过程中 发现esp32时钟连接不上wifi 主体代码如下: while(WiFi.status()!=WL_CONNECTED){delay(200);Serial.print ...
最新文章
- 实用PS技巧分享,送给初入职场的你
- python变长参数传递
- 洛谷——P1549 棋盘问题(2)
- PMP知识点(六、质量管理)
- AIProCon在线大会笔记之阿里达摩院司罗:为商业搭建语言桥梁
- UDP和TCP的区别(详细)
- 使用jQuery Treeview插件实现树状结构效果
- 【MySQL】RPM包安装
- 等级保护三级备案材料有哪些
- [sklearn机器学习]线性回归模型
- 四款亲试好用的PDF编辑器推荐,看看哪款最适合你
- 分度值1g是什么意思_分度值1g是什么意思_【移动通信发展史】从1G到5G—是我们改变了生活,还是生活改变了我们?......
- 多目标优化算法:多目标非洲秃鹫优化算法MOAVOA(提供Matlab代码)
- android 第三方社区,从友盟微社区看Android第三方SDK架构实践
- 网易杭研 java 校招_09网易杭研校园招聘面试题
- 用python给女朋友惊喜_怎样用Python讨您的女朋友欢心(附源码)?女孩很好哄的嘛! zt...
- 用div和css制作网页,DIVCSS网页设计总结:有用的3个网页制作_css
- 微信小程序加载第三方字体
- qdir 类似工具_Qt 5.9 C++开发指南 PDF 高质量影印版
- 引入video.js并使用
热门文章
- python怎么变成白色_在python中将一系列颜色更改为白色
- 关于vlc编解码器暂不支持: VLC 无法解码格式“MIDI” (MIDI Audio)解决
- DeepMind重磅开源强化学习框架!覆盖28款游戏,24多个算法
- #4【BZOJ5109】[CodePlus 2017]大吉大利,晚上吃鸡!(未完成)
- Python/Matplotlib实现雨点图动画
- python 删除特定列_pandas删除某一列的方法(drop函数)
- SAP SLT数据同步配置
- nginx学习,看这一篇就够了:使用:正向代理、反向代理、负载均衡, 常用命令和配置文件
- 冷冻水和冷却水的区别
- 简报 | 阿里与腾讯在区块链领域必有一战