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

76 lines
2.8 KiB
C

#ifndef _BOARD_CONFIG_H_
#define _BOARD_CONFIG_H_
// Movecall Moji configuration
#include <driver/gpio.h>
#define AUDIO_INPUT_SAMPLE_RATE 24000
#define AUDIO_OUTPUT_SAMPLE_RATE 24000
#define AUDIO_I2S_GPIO_MCLK GPIO_NUM_6
#define AUDIO_I2S_GPIO_WS GPIO_NUM_12
#define AUDIO_I2S_GPIO_BCLK GPIO_NUM_14
#define AUDIO_I2S_GPIO_DIN GPIO_NUM_13
#define AUDIO_I2S_GPIO_DOUT GPIO_NUM_11
#define AUDIO_CODEC_PA_PIN GPIO_NUM_9
#define AUDIO_CODEC_I2C_SDA_PIN GPIO_NUM_5
#define AUDIO_CODEC_I2C_SCL_PIN GPIO_NUM_4
#define AUDIO_CODEC_ES8311_ADDR ES8311_CODEC_DEFAULT_ADDR
// QMI8658A姿态传感器配置 - 使用共享I2C引脚
#define IMU_SENSOR_I2C_SDA_PIN AUDIO_CODEC_I2C_SDA_PIN
#define IMU_SENSOR_I2C_SCL_PIN AUDIO_CODEC_I2C_SCL_PIN
#define QMI8658A_I2C_ADDR 0x6A
// LED控制引脚 - 使用qiyuan-tech的配置
#define BUILTIN_LED_GPIO GPIO_NUM_33 // LED_CTRL
#define LED_CTRL_PIN GPIO_NUM_33
// 按键配置
#define BOOT_BUTTON_GPIO GPIO_NUM_0 // BOOT按键
// 四路动作按键 - 从qiyuan-tech添加
#define KEY1_GPIO GPIO_NUM_46 // KEY1 - 音量加
#define KEY2_GPIO GPIO_NUM_45 // KEY2 - 音量减
#define KEY3_GPIO GPIO_NUM_17 // KEY3 - 打断/唤醒 (原显示器MOSI引脚)
#define KEY4_GPIO GPIO_NUM_18 // KEY4 - 播放故事(发送文本消息) (原显示器RESET引脚)
// 音量按键定义 - 标准宏定义
#define VOLUME_UP_BUTTON_GPIO GPIO_NUM_46 // 音量加 - 映射到 KEY1
#define VOLUME_DOWN_BUTTON_GPIO GPIO_NUM_45 // 音量减 - 映射到 KEY2
// 六路触摸按键引出 - 从qiyuan-tech添加
#define TOUCH1_GPIO GPIO_NUM_1 // Touch1
#define TOUCH2_GPIO GPIO_NUM_2 // Touch2
#define TOUCH3_GPIO GPIO_NUM_3 // Touch3 (原显示器背光引脚)
#define TOUCH4_GPIO GPIO_NUM_7 // Touch4 (原显示器DC引脚)
#define TOUCH5_GPIO GPIO_NUM_8 // Touch5
#define TOUCH6_GPIO GPIO_NUM_10 // Touch6
// USB接口 - 从qiyuan-tech添加
#define USB_DP_PIN GPIO_NUM_20 // USB_P
#define USB_DN_PIN GPIO_NUM_19 // USB_N
// 显示器功能已删除 - 设为无效值
#define DISPLAY_WIDTH 0
#define DISPLAY_HEIGHT 0
#define DISPLAY_MIRROR_X false
#define DISPLAY_MIRROR_Y false
#define DISPLAY_SWAP_XY false
#define DISPLAY_OFFSET_X 0
#define DISPLAY_OFFSET_Y 0
// 显示相关引脚设为无效
#define DISPLAY_BACKLIGHT_PIN GPIO_NUM_NC
#define DISPLAY_BACKLIGHT_OUTPUT_INVERT false
#define DISPLAY_SPI_SCLK_PIN GPIO_NUM_NC
#define DISPLAY_SPI_MOSI_PIN GPIO_NUM_NC
#define DISPLAY_SPI_CS_PIN GPIO_NUM_NC
#define DISPLAY_SPI_DC_PIN GPIO_NUM_NC
#define DISPLAY_SPI_RESET_PIN GPIO_NUM_NC
#define DISPLAY_SPI_SCLK_HZ 0
#endif // _BOARD_CONFIG_H_