config.h 2.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. #ifndef _BOARD_CONFIG_H_
  2. #define _BOARD_CONFIG_H_
  3. #include <driver/gpio.h>
  4. #include <driver/uart.h>
  5. /**
  6. * @brief 音频配置参数
  7. */
  8. #define AUDIO_INPUT_SAMPLE_RATE 24000
  9. #define AUDIO_OUTPUT_SAMPLE_RATE 24000
  10. // 音频I2S接口引脚定义
  11. #define AUDIO_I2S_GPIO_MCLK GPIO_NUM_13
  12. #define AUDIO_I2S_GPIO_WS GPIO_NUM_10
  13. #define AUDIO_I2S_GPIO_BCLK GPIO_NUM_12
  14. #define AUDIO_I2S_GPIO_DIN GPIO_NUM_11
  15. #define AUDIO_I2S_GPIO_DOUT GPIO_NUM_9
  16. // 音频编解码器控制引脚
  17. #define AUDIO_CODEC_PA_PIN GPIO_NUM_53
  18. #define AUDIO_CODEC_I2C_SDA_PIN GPIO_NUM_7
  19. #define AUDIO_CODEC_I2C_SCL_PIN GPIO_NUM_8
  20. #define AUDIO_CODEC_ES8311_ADDR ES8311_CODEC_DEFAULT_ADDR
  21. // 按钮和LED配置
  22. #define BUILTIN_LED_GPIO GPIO_NUM_NC
  23. #define BOOT_BUTTON_GPIO GPIO_NUM_0
  24. #define ASR_BUTTON_GPIO GPIO_NUM_6
  25. #define VOLUME_UP_BUTTON_GPIO GPIO_NUM_NC
  26. #define VOLUME_DOWN_BUTTON_GPIO GPIO_NUM_NC
  27. // ML307通信模块引脚配置
  28. #define ML307_RX_PIN GPIO_NUM_33
  29. #define ML307_TX_PIN GPIO_NUM_34
  30. /**
  31. * @brief 显示屏配置选择
  32. * 根据实际使用的显示屏类型选择相应配置
  33. */
  34. #define DISPLAY_RST_GPIO GPIO_NUM_27
  35. #if defined(CONFIG_LCD_EK79007_1024X600)
  36. // EK79007 10.1英寸 (1024x600) 显示屏配置
  37. #define DISPLAY_TYPE_EK79007
  38. #define DISPLAY_WIDTH 1024
  39. #define DISPLAY_HEIGHT 600
  40. #define DISPLAY_MIRROR_X true
  41. #define DISPLAY_MIRROR_Y true
  42. #define DISPLAY_SWAP_XY false
  43. #define DISPLAY_OFFSET_X 0
  44. #define DISPLAY_OFFSET_Y 0
  45. #define DISPLAY_DC_GPIO GPIO_NUM_43
  46. #define DISPLAY_CS_GPIO GPIO_NUM_44
  47. #define DISPLAY_CLK_GPIO GPIO_NUM_21
  48. #define DISPLAY_MOSI_GPIO GPIO_NUM_47
  49. #define DISPLAY_BACKLIGHT_PIN GPIO_NUM_26
  50. #define DISPLAY_BACKLIGHT_OUTPUT_INVERT false
  51. #elif defined(CONFIG_LCD_TYPE_800_1280_10_1_INCH) || defined(CONFIG_LCD_TYPE_800_1280_10_1_INCH_A)
  52. // JD9365 10.1英寸 (800x1280) 显示屏配置
  53. #define DISPLAY_TYPE_JD9365
  54. #define DISPLAY_WIDTH 800
  55. #define DISPLAY_HEIGHT 1280
  56. #define LCD_BIT_PER_PIXEL (16)
  57. #define PIN_NUM_LCD_RST GPIO_NUM_NC
  58. #define DELAY_TIME_MS (3000)
  59. #define LCD_MIPI_DSI_LANE_NUM (2) // 2 data lanes
  60. #define MIPI_DSI_PHY_PWR_LDO_CHAN (3)
  61. #define MIPI_DSI_PHY_PWR_LDO_VOLTAGE_MV (2500)
  62. #define DISPLAY_SWAP_XY false
  63. #define DISPLAY_MIRROR_X false
  64. #define DISPLAY_MIRROR_Y false
  65. #define DISPLAY_OFFSET_X 0
  66. #define DISPLAY_OFFSET_Y 0
  67. #define DISPLAY_BACKLIGHT_PIN GPIO_NUM_NC
  68. #define DISPLAY_BACKLIGHT_OUTPUT_INVERT false
  69. #else
  70. // 默认配置或错误处理
  71. #error "请选择一种显示屏配置 (CONFIG_LCD_EK79007_1024X600 或 CONFIG_LCD_TYPE_800_1280_10_1_INCH)"
  72. #endif
  73. #endif // _BOARD_CONFIG_H_