36 lines
1.1 KiB
C
36 lines
1.1 KiB
C
/*
|
|
* UART ENS1通信模块头文件
|
|
* 用于ESP32-S3与ENS1芯片的UART通信
|
|
*/
|
|
|
|
#ifndef UART_ENS1_H
|
|
#define UART_ENS1_H
|
|
|
|
#include "esp_err.h"
|
|
#include "driver/uart.h"
|
|
#include "driver/gpio.h"
|
|
#include "freertos/FreeRTOS.h"
|
|
#include "freertos/queue.h"
|
|
#include <stdbool.h>
|
|
|
|
// UART相关定义 (ENS1芯片通信)
|
|
#define UART_ENS1_NUM UART_NUM_1
|
|
#define UART_ENS1_TXD_PIN CONFIG_EXAMPLE_UART_TXD // UART1 TXD引脚 (GPIO4)
|
|
#define UART_ENS1_RXD_PIN CONFIG_EXAMPLE_UART_RXD // UART1 RXD引脚 (GPIO5)
|
|
#define UART_ENS1_BAUD_RATE CONFIG_EXAMPLE_UART_BAUD_RATE // UART波特率 (115200)
|
|
#define UART_ENS1_RX_BUF_SIZE 1024 // 接收缓冲区大小
|
|
|
|
// 函数声明
|
|
esp_err_t init_uart_ens1(void);
|
|
esp_err_t uart_send_data_to_ens1(uint8_t *data, size_t len);
|
|
esp_err_t check_ens1_uart_connection(void);
|
|
void uart_ens1_rx_task(void *arg);
|
|
bool get_ens1_uart_connection_status(void);
|
|
void set_ens1_uart_connection_status(bool status);
|
|
|
|
// 全局变量声明
|
|
extern volatile bool ens1_uart_connected;
|
|
extern QueueHandle_t uart_ens1_queue;
|
|
|
|
#endif // UART_ENS1_H
|