소스 검색

add PIN definitions for CSEL on PLL1708 and FMT on PCM1808

Helmut Pozimski 4 년 전
부모
커밋
0defd960e6
1개의 변경된 파일11개의 추가작업 그리고 1개의 파일을 삭제
  1. 11 1
      main/transmit_i2s.c

+ 11 - 1
main/transmit_i2s.c

@@ -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