소스 검색

【完善】EC20 配置,支持 CMUX 开关

朱天龙 (Armink) 3 년 전
부모
커밋
de3c645b83
1개의 변경된 파일11개의 추가작업 그리고 0개의 파일을 삭제
  1. 11 0
      class/ppp_device_ec20.c

+ 11 - 0
class/ppp_device_ec20.c

@@ -31,6 +31,7 @@
 
 #define EC20_WARTING_TIME_BASE 2000
 
+#ifndef PKG_USING_CMUX
 static const struct modem_chat_data rst_mcd[] =
 {
     {"+++",          MODEM_CHAT_RESP_NOT_NEED,        30, 1, RT_TRUE},
@@ -44,6 +45,14 @@ static const struct modem_chat_data mcd[] =
     {PPP_APN_CMD,    MODEM_CHAT_RESP_OK,              1,  5, RT_FALSE},
     {PPP_DAIL_CMD,   MODEM_CHAT_RESP_CONNECT,         1, 30, RT_FALSE},
 };
+#else
+static const struct modem_chat_data mcd[] =
+{
+    {"AT",           MODEM_CHAT_RESP_NOT_NEED,        10, 1, RT_FALSE},
+    {PPP_APN_CMD,    MODEM_CHAT_RESP_NOT_NEED,        1,  5, RT_FALSE},
+    {PPP_DAIL_CMD,   MODEM_CHAT_RESP_NOT_NEED,        1, 30, RT_FALSE},
+};
+#endif
 
 static rt_err_t ppp_ec20_prepare(struct ppp_device *device)
 {
@@ -56,10 +65,12 @@ static rt_err_t ppp_ec20_prepare(struct ppp_device *device)
     }
     else
     {
+#ifndef PKG_USING_CMUX
         rt_err_t err;
         err = modem_chat(device->uart, rst_mcd, sizeof(rst_mcd) / sizeof(rst_mcd[0]));
         if (err)
             return err;
+#endif
     }
     return modem_chat(device->uart, mcd, sizeof(mcd) / sizeof(mcd[0]));
 }