ESP32代码开发入门

3 篇文章 0 订阅

ESP-IDF ESP-ADF开发

什么是ESP32

ESP32
功能丰富的 Wi-Fi & 蓝牙 MCU, 适用于多样的物联网应用。使用freertos操作系统。

什么是ESP-IDF

ESP-IDF 物联网开发框架。

什么是ESP-ADF

ESP-ADF 音频开发框架。

开发概要

  1. 编译环境及SDK搭建
    整个开发流程是:下载ESP-IDF, ESP-ADF(按需下载),并安装, 编写hello world工程,编译并烧录到主板验证
    可参照ESP32 esp-idf esp-adf环境安装及.a库创建与编译
  2. api大部分可以用glibc的接口
    做了封装,时间time(NULL), 创建线程pthread_create, malloc申请堆空间等
  3. 加解密算法:hmac-sha256, base64, sha256,md5, ssl
    mbedtls库可实现这些功能
  4. json解析
    可以使用cJson
  5. http接口 esp_http_client提供http支持

如何引用esp的内置api及库

api参照文档
以线程库pthread为例
.c文件中#include <pthread.h>进行头引用

CMakeLists.txt中加REQUIRES pthread进行库连接

idf_component_register(SRCS test.c" 
                    INCLUDE_DIRS "./"
                    REQUIRES mbedtls json pthread esp_http_client)

json是cJSON库
esp_http_client是httl库
mbedtls是ssl库.
用到哪个component就加上.

编程注意事项

  1. 函数参数类型敏感
void func_test(char *a)
{
}

unsigned char *param;
func_test((char *)param); // 这里需要做个强制类型转换,否则编译会报error
  1. 头文件依赖严格
//#include <string.h> //这里注释后用gcc编译能正常通过, 在esp中编译会报error,要把include加上

int main(int argc, char **argv)
{
    const char *src = "hello";
    char dst[32] = {0};
    strcpy(dst, src);
    
    return 0;
}

相关文章

esp32专栏文章
ESP32 esp-idf esp-adf环境安装及.a库创建与编译
ESP32-IDF http请求崩溃问题分析与解决

作者:帅得不敢出门 csdn原创谢绝收录转载

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值