2017-05-07 28 views
0

有沒有辦法在ESP8266的uart界面上禁用回顯?
我使用Arduino來編程芯片,所以我不能使用AT命令,因爲我將Arduino框架上傳到了芯片中。 每次客戶端試圖連接到模塊,它產生的串行端口上的一些呼應像這樣的:在esp8266 uart上禁用回顯

新的客戶端:此網址:/favicon.ico搜索:主機:192.168.1.102: 連接:保持活躍:用戶代理:Mozilla/5.0(Windows NT 6.1) AppleWebKit/537.36(KHTML,如Gecko)Chrome/55.0.2883.87 Safari/537.36:Accept:image/webp,image/,/; q = 0.8:的Referer: http://192.168.1.102/admin.html:接受編碼:gzip,放氣,SDCH: 接受語言:EN-US,EN; q = 0.8,發; q = 0.6:/favicon.ico

+1

顯示一些輸出示例。你準確的設置是什麼?你有沒有通過串口連接到ESP8266的Arduino,或者你是否使用Arduino-Framework直接閃存芯片?你使用哪些庫可能會產生輸出? –

回答

0

我找到了解決方案: 回聲是由ESP8266WebServer.h庫生成的。我只是在Parsing.cpp文件中刪除了一些DEBUG_OUTPUT.print()& DEBUG_OUTPUT.println()語句,現在一切正常。 謝謝大家。

1

是的。用換行符發送命令ATE0\r\n)。

enter image description here

全部命令的參考文獻可在https://github.com/espressif/ESP8266_AT/wiki/ATE

+0

我不認爲他在使用AT命令。他說,他使用Arduino來編程芯片。 –

+0

我爲澄清請求寫了評論。 –

0

如果該輸出出現在ESP8266的串行端口上,那麼它是由您從Arduino IDE加載到芯片上的草圖生成的。

因此,如果您不需要輸出,則需要從草圖中刪除相關的輸出語句。輸出看起來類似於WiFiWebServer示例草圖生成的內容,因此我將在此處以此爲例。如果您使用另一個,請根據您的情況修改說明。

在素描,看起來像Serial.printlnSerial.write語句,例如在循環的開始()函數,你會發現:

void loop() { 
    // listen for incoming clients 
    WiFiClient client = server.available(); 
    if (client) { 
    Serial.println("new client"); 
    // an http request ends with a blank line 
    boolean currentLineIsBlank = true; 
    while (client.connected()) { 
     if (client.available()) { 
     char c = client.read(); 
     Serial.write(c); 

看一看什麼每條這樣的線會寫,並刪除/註釋掉你不希望在串口上看到的輸出。

+0

感謝您的有益迴應,但沒有println會生成此類輸出。 –

+0

你能發佈你上傳到ESP芯片的代碼嗎? –