#pragma once #include #include "math.h" #include "esp_err.h" #include "esp_log.h" #include "esp_check.h" #include "driver/i2c.h" #include "driver/spi_master.h" #include "driver/ledc.h" #include "freertos/FreeRTOS.h" #include "freertos/task.h" #include "freertos/event_groups.h" #include "esp_lcd_types.h" #include "esp_lcd_panel_io.h" #include "esp_lcd_panel_vendor.h" #include "esp_lcd_panel_ops.h" #include "esp_lcd_touch_ft5x06.h" #include "esp_lvgl_port.h" #include "driver/spi_master.h" #include "driver/i2s_std.h" #include "esp_spiffs.h" #include "esp_vfs_fat.h" #include "sdmmc_cmd.h" #include "driver/sdmmc_host.h" /******************************************************************************/ /*************************** LED ↓ *******************************************/ #define LED_PIN (GPIO_NUM_21) // SDA引脚 void LED_init(void); /*************************** LED ↑ *******************************************/ /*******************************************************************************/ /******************************************************************************/ /*************************** I2C ↓ *******************************************/ #define BSP_I2C_SDA (GPIO_NUM_1) // SDA引脚 #define BSP_I2C_SCL (GPIO_NUM_2) // SCL引脚 #define BSP_I2C_NUM (0) // I2C外设 #define BSP_I2C_FREQ_HZ 100000 // 100kHz esp_err_t bsp_i2c_init(void); // 初始化I2C接口 /*************************** I2C ↑ *******************************************/ /*******************************************************************************/ /******************************************************************************/ /*************************** AD5328BRUZ ↓ *******************************************/ #define SPI_HOST SPI2_HOST #define PIN_CS (GPIO_NUM_10) #define PIN_LDAC (GPIO_NUM_11) #define PIN_MOSI (GPIO_NUM_12) #define PIN_SCK (GPIO_NUM_13) #define DAC_EN (GPIO_NUM_17) #define V_REF 2.048f // 基准电压 2.048V void init_ad5328(void); void set_channel_voltage(uint8_t channel, float voltage); /*************************** AD5328BRUZ ↑ *******************************************/ /*******************************************************************************/ /***********************************************************/ /**************** LCD显示屏 ↓ *************************/ #define BSP_LCD_PIXEL_CLOCK_HZ (80 * 1000 * 1000) #define BSP_LCD_SPI_NUM (SPI3_HOST) #define LCD_CMD_BITS (8) #define LCD_PARAM_BITS (8) #define BSP_LCD_BITS_PER_PIXEL (16) #define LCD_LEDC_CH LEDC_CHANNEL_0 #define BSP_LCD_H_RES (320) #define BSP_LCD_V_RES (240) #define BSP_LCD_SPI_MOSI (GPIO_NUM_40) #define BSP_LCD_SPI_CLK (GPIO_NUM_41) #define BSP_LCD_SPI_CS (GPIO_NUM_38) #define BSP_LCD_DC (GPIO_NUM_39) #define BSP_LCD_RST (GPIO_NUM_NC) #define BSP_LCD_BACKLIGHT (GPIO_NUM_42) #define BSP_LCD_DRAW_BUF_HEIGHT (20) esp_err_t bsp_display_brightness_init(void); esp_err_t bsp_display_brightness_set(int brightness_percent); esp_err_t bsp_display_backlight_off(void); esp_err_t bsp_display_backlight_on(void); esp_err_t bsp_lcd_init(void); void lcd_set_color(uint16_t color); void lcd_draw_pictrue(int x_start, int y_start, int x_end, int y_end, const unsigned char *gImage); void bsp_lvgl_start(void); /*************** LCD显示屏 ↑ *************************/ /***********************************************************/