Rdzleo 93f0e19d1d 初始化项目:精灵吊坠 RTC 语音助手 + VEML7700 石头同频匹配
ESP32-S3 吊坠设备固件,集成火山引擎 RTC 语音助手、蓝牙配网、
VEML7700 环境光传感器驱动及石头同频匹配交友功能。

VEML7700 驱动:
- 基于 ESP-IDF i2c_master API 实现,复用项目 I2cDevice 基类
- 支持 ALS + White 双通道、自动量程、Vishay 非线性校正
- 3 次采样取中位数过滤偶发异常

石头同频匹配算法(双维度):
- 维度1:光谱比值 ALS/White(石头固有光学特征,不随光照强度变化)
- 维度2:亮度等级(5级对数划分,排除极端环境差异)
- 比值阈值 15%,实测同石头姿势变化波动 1.6%~9.6%,安全余量充足

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-01 11:43:57 +08:00

68 lines
2.3 KiB
C

#ifndef _BOARD_CONFIG_H_
#define _BOARD_CONFIG_H_
#include <driver/gpio.h>
#include <driver/spi_master.h>
#define AUDIO_INPUT_SAMPLE_RATE 16000
#define AUDIO_OUTPUT_SAMPLE_RATE 24000
#define BOOT_BUTTON_GPIO GPIO_NUM_0
#define AUDIO_I2S_MIC_GPIO_WS GPIO_NUM_2
#define AUDIO_I2S_MIC_GPIO_SCK GPIO_NUM_15
#define AUDIO_I2S_MIC_GPIO_DIN GPIO_NUM_39
#define AUDIO_I2S_SPK_GPIO_DOUT GPIO_NUM_47
#define AUDIO_I2S_SPK_GPIO_BCLK GPIO_NUM_48
#define AUDIO_I2S_SPK_GPIO_LRCK GPIO_NUM_38
#define I2C_SCL_IO GPIO_NUM_10
#define I2C_SDA_IO GPIO_NUM_11
#define I2C_ADDRESS ESP_IO_EXPANDER_I2C_TCA9554_ADDRESS_000
#define DISPLAY_WIDTH 360
#define DISPLAY_HEIGHT 360
#define DISPLAY_MIRROR_X false
#define DISPLAY_MIRROR_Y false
#define DISPLAY_SWAP_XY false
#define QSPI_LCD_H_RES (360)
#define QSPI_LCD_V_RES (360)
#define QSPI_LCD_BIT_PER_PIXEL (16)
#define QSPI_LCD_HOST SPI2_HOST
#define QSPI_PIN_NUM_LCD_PCLK GPIO_NUM_40
#define QSPI_PIN_NUM_LCD_CS GPIO_NUM_21
#define QSPI_PIN_NUM_LCD_DATA0 GPIO_NUM_46
#define QSPI_PIN_NUM_LCD_DATA1 GPIO_NUM_45
#define QSPI_PIN_NUM_LCD_DATA2 GPIO_NUM_42
#define QSPI_PIN_NUM_LCD_DATA3 GPIO_NUM_41
#define QSPI_PIN_NUM_LCD_RST GPIO_NUM_NC
#define QSPI_PIN_NUM_LCD_BL GPIO_NUM_5
#define DISPLAY_OFFSET_X 0
#define DISPLAY_OFFSET_Y 0
#define TP_PORT (I2C_NUM_1)
#define TP_PIN_NUM_SDA (I2C_SDA_IO)
#define TP_PIN_NUM_SCL (I2C_SCL_IO)
#define TP_PIN_NUM_RST (GPIO_NUM_NC)
#define TP_PIN_NUM_INT (GPIO_NUM_4)
#define DISPLAY_BACKLIGHT_PIN QSPI_PIN_NUM_LCD_BL
#define DISPLAY_BACKLIGHT_OUTPUT_INVERT false
#define TAIJIPI_ST77916_PANEL_BUS_QSPI_CONFIG(sclk, d0, d1, d2, d3, max_trans_sz) \
{ \
.data0_io_num = d0, \
.data1_io_num = d1, \
.sclk_io_num = sclk, \
.data2_io_num = d2, \
.data3_io_num = d3, \
.max_transfer_sz = max_trans_sz, \
}
#endif // _BOARD_CONFIG_H_