瀏覽代碼

Merge branch 'sle118:master-v4.3' into led_visu-v4.3

wizmo2 1 年之前
父節點
當前提交
8cb7122dd6
共有 1 個文件被更改,包括 8 次插入5 次删除
  1. 8 5
      components/services/accessors.c

+ 8 - 5
components/services/accessors.c

@@ -105,11 +105,14 @@ bool is_spdif_config_locked(){
  * Set pin from config string
  */
 static void set_i2s_pin(char *config, i2s_pin_config_t *pin_config) {
-	char *p;
-	pin_config->bck_io_num = pin_config->ws_io_num = pin_config->data_out_num = pin_config->data_in_num = -1; 				
-	if ((p = strcasestr(config, "bck"))) sscanf(p, "bck%*[^=]=%d", &pin_config->bck_io_num);
-	if ((p = strcasestr(config, "ws"))) sscanf(p, "ws%*[^=]=%d", &pin_config->ws_io_num);
-	if ((p = strcasestr(config, "do"))) sscanf(p, "do%*[^=]=%d", &pin_config->data_out_num);
+	pin_config->bck_io_num = pin_config->ws_io_num = pin_config->data_out_num = pin_config->data_in_num = -1;
+	PARSE_PARAM(config, "bck", '=', pin_config->bck_io_num);
+	PARSE_PARAM(config, "ws", '=', pin_config->ws_io_num);
+	PARSE_PARAM(config, "do", '=', pin_config->data_out_num);
+#if ESP_IDF_VERSION >= ESP_IDF_VERSION_VAL(4, 4, 0)
+    pin_config->mck_io_num = strcasestr(config, "mck") ? 0 : -1;
+    PARSE_PARAM(config, "mck", '=', pin_config->mck_io_num);   
+#endif    
 }
 
 /****************************************************************************************