ESP32-GATEWAY 项目使用教程
1. 项目目录结构及介绍
ESP32-GATEWAY/
├── DOCS/
│ └── 项目文档和说明文件
├── HARDWARE/
│ └── 硬件设计文件,包括原理图和PCB设计
├── SOFTWARE/
│ └── 软件源代码和配置文件
├── LICENSE
│ └── 项目许可证文件
└── README.md
└── 项目概述和基本信息
目录结构介绍
- DOCS: 包含项目的文档和说明文件,如用户手册、开发指南等。
- HARDWARE: 包含硬件设计文件,如原理图、PCB设计等。
- SOFTWARE: 包含项目的软件源代码和配置文件。
- LICENSE: 项目的许可证文件,说明项目的开源许可类型。
- README.md: 项目的概述和基本信息,通常包含项目的介绍、安装和使用说明。
2. 项目启动文件介绍
在 SOFTWARE
目录下,项目的启动文件通常是主程序文件,负责初始化系统、加载配置和启动主要功能模块。以下是一个典型的启动文件示例:
// main.c
#include <stdio.h>
#include "esp_system.h"
#include "esp_log.h"
#include "nvs_flash.h"
void app_main(void)
{
// 初始化NVS
esp_err_t ret = nvs_flash_init();
if (ret == ESP_ERR_NVS_NO_FREE_PAGES || ret == ESP_ERR_NVS_NEW_VERSION_FOUND) {
ESP_ERROR_CHECK(nvs_flash_erase());
ret = nvs_flash_init();
}
ESP_ERROR_CHECK(ret);
// 初始化系统日志
esp_log_level_set("*", ESP_LOG_INFO);
// 启动主要功能模块
start_wifi();
start_ble();
start_ethernet();
}
启动文件功能介绍
- 初始化NVS: 初始化非易失性存储(NVS),用于存储配置和状态信息。
- 初始化系统日志: 设置日志级别,方便调试和信息输出。
- 启动主要功能模块: 启动WiFi、BLE和以太网等主要功能模块。
3. 项目配置文件介绍
在 SOFTWARE
目录下,项目的配置文件通常用于配置系统参数、网络设置等。以下是一个典型的配置文件示例:
// config.h
#ifndef CONFIG_H
#define CONFIG_H
#define WIFI_SSID "your_wifi_ssid"
#define WIFI_PASSWORD "your_wifi_password"
#define ETHERNET_MODE ETH_MODE_DHCP
#define BLE_DEVICE_NAME "ESP32-GATEWAY"
#endif // CONFIG_H
配置文件功能介绍
- WIFI_SSID 和 WIFI_PASSWORD: 配置WiFi网络的SSID和密码。
- ETHERNET_MODE: 配置以太网的工作模式,如DHCP或静态IP。
- BLE_DEVICE_NAME: 配置BLE设备的名称。
通过以上配置文件,用户可以根据实际需求调整项目的网络设置和设备名称。