ESP32 Arduino Framework是专门针对ESP32开发板的Arduino应用开发框架,为用户开发IOT应用、HMI应用提供一致的开发体验。 目前支持以下功能:
打开config.h文件,找到开发板型号,将定义值修改为1
将要运行应用 APP_DEMO_xxx 的值修改为1
设置开发板的型号、FLASH大小、PSRAM、分区等选项
编译并上传运行

本框架采用C++面向对象设计,其中Board类封装硬件相关代码,包括LED、传感器、执行器件、显示器件等的驱动代码;
Application类为业务应用提供基础封装,包括时钟、WiFi配置、OTA升级、与Board类硬件驱动的交互等功能,提供一套标准的开发规范。
在boards文件夹创建一个子目录,如your_board,新建一个继承WifiBoard类(若不使用WiFi功能,也可以继承Board类)的自定义开发板类,然后实现设备的驱动:
LED:内置单色LED、三色LED和WS2812灯珠类;
按键:内置OneButton按键库;
显示屏:内置U8G2、TFT_eSPI、GFX Libarary驱动库;
其他可参考DEMO程序。
实现create_board方法,返回your_board的类实例;
设置开发板的型号、FLASH大小、PSRAM、分区等选项;
在src文件夹创建一个子目录,如your_app,新建一个继承Application类的自定义应用类,然后实现业务逻辑;
继承并重写OnInit方法,编写相关初始化代码;
继承并重写OnLoop方法,编写相关需要重复执行的代码;
实现create_application方法,返回youe_app的类实例。
在Application类实例里,可以通过Board类实例来访问各硬件。
源码地址:https://gitee.com/billyzh/esp32-arduino-framework
智能体(Agent)是指能够感知环境并采取行动以实现特定目标的代理体。它可以是软件、硬件或一个系统,具备自主性、适应性和交互能力。智能体通过感知环境中的变化(如通过传感器或数据输入),根据自身学习到的知识和算法进行判断和决策,进而执行动作以影响环境或达到预定的目标。
本节主要讲解舵机驱动类和用按键控制舵机。
本节主要讲解执行器件类型和用按键控制继电器。
本小节主要讲解红外接收和遥控器件,以及遥控操作LED。
本小节讲解模拟量传感器使用,旋转电位器,DHT11温湿度传感器和实现自定义传感器类。
本小节讲解Sensor类及派生类、数字量传感器使用和传感器的推荐交互流程。
本小节讲解ESP32内置触摸引脚的用法,
本小节主要介绍按键信号转换、Button类及派生类、和Button交互推荐流程。
本小节主要介绍Ws2812灯珠的使用、对父类进行扩展实现自定义功能,和指针向下强制转换的使用。
本小节主要介绍RGB三色LED的使用,以及多态的具体实现。
ESP32 Arduino Framework是专门针对ESP32开发板的Arduino应用开发框架,为用户开发IOT应用、HMI应用提供一致的开发体验。