|
@@ -26,17 +26,23 @@
|
|
|
#define TCP_LOG_PREFIX "TCP"
|
|
|
|
|
|
// Mapping of board pins to the functions they are used for
|
|
|
+/* Pins for PCM1808 */
|
|
|
#define MD1 16
|
|
|
#define MD0 17
|
|
|
+#define FMT 23
|
|
|
+
|
|
|
+/* Pins for PLL1708 */
|
|
|
#define MD 18
|
|
|
#define MC 19
|
|
|
#define MS 21
|
|
|
+#define CSEL 22
|
|
|
|
|
|
#define SLAVE_DATA_IN 27
|
|
|
#define SLAVE_BCK_IN 26
|
|
|
#define SLAVE_WS_IN 25
|
|
|
|
|
|
-#define GPIO_OUTPUT_PIN_SEL ((1ULL<<MD0) |(1ULL<<MD1) | (1ULL<<MD) | (1ULL<<MC) | (1ULL<<MS))
|
|
|
+#define GPIO_OUTPUT_PIN_SEL ((1ULL<<MD0) |(1ULL<<MD1) | (1ULL<<MD) | (1ULL<<MC) \
|
|
|
+ | (1ULL<<MS) | (1ULL<<CSEL) | (1ULL<<FMT))
|
|
|
|
|
|
#define gpio_set(x,y) ESP_ERROR_CHECK(gpio_set_level(x,y))
|
|
|
|
|
@@ -138,6 +144,8 @@ static esp_err_t setup_gpio(void) {
|
|
|
PIN_FUNC_SELECT(PERIPHS_IO_MUX_GPIO18_U, FUNC_GPIO18_GPIO18);
|
|
|
PIN_FUNC_SELECT(PERIPHS_IO_MUX_GPIO19_U, FUNC_GPIO19_GPIO19);
|
|
|
PIN_FUNC_SELECT(PERIPHS_IO_MUX_GPIO21_U, FUNC_GPIO21_GPIO21);
|
|
|
+ PIN_FUNC_SELECT(PERIPHS_IO_MUX_GPIO22_U, FUNC_GPIO22_GPIO22);
|
|
|
+ PIN_FUNC_SELECT(PERIPHS_IO_MUX_GPIO23_U, FUNC_GPIO23_GPIO23);
|
|
|
gpio_config_t io_conf = {
|
|
|
.intr_type = GPIO_INTR_DISABLE,
|
|
|
.mode = GPIO_MODE_OUTPUT,
|
|
@@ -160,6 +168,7 @@ static esp_err_t setup_gpio(void) {
|
|
|
static void pcm1808_config(uint32_t md1, uint32_t md0) {
|
|
|
gpio_set(MD1, md1);
|
|
|
gpio_set(MD0, md0);
|
|
|
+ gpio_set(FMT, 0);
|
|
|
}
|
|
|
|
|
|
/* Function send_pll_bits
|
|
@@ -288,6 +297,7 @@ void app_main(void) {
|
|
|
ESP_ERROR_CHECK(setup_gpio());
|
|
|
// Set PCM1808 configuration
|
|
|
pcm1808_config(0, 1);
|
|
|
+ gpio_set(CSEL, 0);
|
|
|
// Power down PLL1708
|
|
|
send_pll_bits(40974);
|
|
|
// Initialize the i2s driver
|