嵌入式科普(8)ESP-IDF newlib相关介绍和对比分析

2023-12-30 23:08:29

一、目的/概述
二、资料来源
三、ESP-IDF简介
????????3.1 ESP-IDF FreeRTOS
????????3.2 ESP-IDF heap_caps
????????3.3 ESP-IDF newlib
四、对比

嵌入式科普(8)ESP-IDF newlib相关介绍和对比分析

一、目的/概述

  • 1、在我的嵌入式科普(6)你听说过FreeRTOS heap6吗?b站有评论ESP-IDF

  • 2、我们就来简介ESP-IDF,重点看看与newlib相关的概念和源码

  • 3、对比分析

二、资料来源

  • ESP-IDF:https://www.espressif.com.cn/zh-hans/products/sdks/esp-idf

  • ESP-IDF 编程指南:https://docs.espressif.com/projects/esp-idf/zh_CN/latest/esp32/

  • esp-idf github:https://github.com/espressif/esp-idf/tree/master

三、ESP-IDF简介

  • 首版ESP-IDFv0.9 Sep 30, 2016 ===> 里程碑ESP-IDFv5.0 2022年12月30日。

  • 2019 年 7 月,乐鑫科技在上海证券交易所科创板挂牌上市

  • ESP-IDF(Espressif IoT Development Framework 乐鑫物联网开发框架物联网开发框架)

    图片

    图片

芯片v4.3v4.4v5.0v5.1v5.2
ESP32

图片

图片

图片

图片

图片

ESP32-S2

图片

图片

图片

图片

图片

ESP32-C3

图片

图片

图片

图片

图片

ESP32-S3

图片

图片

图片

图片

芯片发布公告
ESP32-C2

图片

图片

图片

芯片发布公告
ESP32-C6

图片

图片

芯片发布公告
ESP32-H2

图片

图片

芯片发布公告
ESP32-P4

图片

芯片发布公告

图片

图片

图片

3.1 ESP-IDF FreeRTOS

  • FreeRTOS-Kernel-SMP

  • FreeRTOS-Kernel
    ?

    图片

    图片

3.2 ESP-IDF heap_caps

  • Heap初始化: voidheap_caps_init(void)

  • Heap分配: void *heap_caps_malloc( size_t size,uint32_t caps )

  • Heap释放: void heap_caps_free(void *ptr)

  • esp32 heap 内存管理简析

图片

图片

3.3 ESP-IDF newlib

  • ESP32 SDK中的malloc/calloc/free等系统调用,最终都是调用以上函数执行(参见syscall_stub_table)

  • _write_r ===> _write_r_console ===> esp_rom_uart_tx_one_char

图片

图片

图片

四、对比

类型软件对比特点
mcu/mpu库+freertos+其他毛坯房+傲慢
socesp-idf精装修+接地气

图片

文章来源:https://blog.csdn.net/cl234583745/article/details/135310356
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。