当前位置: 首页 > news >正文

ESP32代码开发入门

ESP-IDF 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;
}

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

http://www.lryc.cn/news/386319.html

相关文章:

  • “势”是“态”的偶然性减少
  • 人脑计算机技术与Neuroplatform:未来计算的革命性进展
  • 新版周易测算系统源码 去授权完美运行
  • 【PYTHON】力扣刷题笔记 -- 0053. 最大子数组和【中等】
  • Linux启动elasticsearch,提示权限不够
  • css 布局出现无法去除的空白
  • 使用SpringBoot整合filter
  • Python酷库之旅-第三方库openpyxl(15)
  • 葡萄串目标检测YoloV8——从Pytorch模型训练到C++部署
  • OpenAI推出自我改进AI- CriticGPT
  • springboot系列七: Lombok注解,Spring Initializr,yaml语法
  • 专访ATFX首席战略官Drew Niv:以科技创新引领企业高速发展
  • 关于FPGA对 DDR4 (MT40A256M16)的读写控制 4
  • android——Livedata、StateFlow、ShareFlow和Channel的介绍和使用
  • Debezium 同步 MySQL 实时数据并解决数据重复消费问题
  • 【图像处理】1、使用OpenCV库图像轮廓的检测和绘制
  • 【AI编译器】triton学习:矩阵乘优化
  • 动静分离网络
  • Python商务数据分析知识专栏(三)——Python数据分析的应用①Matplotlib数据可视化基础
  • DataV大屏组件库
  • paraview跨节点并行渲染
  • Java中相等比较详解
  • HBuilder X 小白日记01
  • 使用Protocol Buffers优化数据传输
  • 如何把mkv转成mp4?介绍一下将mkv转成MP4的几种方法
  • PHP语言学习02
  • PX2资料及问题记录
  • Jenkins容器的部署
  • QT 自绘树形控件
  • axios之CancelToken取消请求