[討論] Arduino Esp8266一些使用上的問題

看板ASM作者 (水澤)時間7年前 (2016/08/12 01:03), 編輯推噓0(002)
留言2則, 1人參與, 最新討論串1/1
大家好,因為專題需求入手了一片Esp8266 使用上遇到了一些問題,後來有解決但是覺得很奇怪 所以想來問問看各位前輩。 我上網找到的資料,使用GET方式傳送資料到網站 大部分的指令都是 AT+CIPSTART="TCP","IP",PORT AT+CIPSEND=長度 之後把GET這個字串丟出去 String GET="GET /index.jsp?data=1/"之類的 我在這裡遇到了一個問題 我的GET長度是91 但是直接打91送出去會錯誤 長度必須打入93,資料才會送出去,我在這邊卡滿久的 我在想是不是\r\n的關係 後來寫在Arduino上 網路上大部分的教學都是類似下面,IP+PORT都有連成功 然後送資料 WIFI.print( "AT+CIPSEND=" ); WIFI.println( GET.length() ); WIFI.println(GET) (WIFI是用SoftwareSerial宣告的) 當初我就卡在這裡,找了很久還是不知道原因 就算我用 GET.length()+2; 資料還是送不出去 後來我改用 WIFI.print( "AT+CIPSEND=" ); WIFI.println( 200 ); //大於GET的數字 WIFI.println(GET); WIFI.println("AT+CIPCLOSE"); 這樣才成功把資料傳送出去 但是我看網路上送資料給THingSpeak的教學 他們都沒有遇到這種問題 都是直接讀GET.length()然後println(GET)這樣就OK了 我這種情況算是正常嗎? 有前輩遇過嗎? 謝謝。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 60.244.175.6 ※ 文章網址: https://www.ptt.cc/bbs/ASM/M.1470935015.A.627.html

08/23 00:54, , 1F
WIFI.println( GET.length() ); 注意這行是 println。
08/23 00:54, 1F

08/23 00:54, , 2F
建議去查看看 print() 與 println() 的差別。
08/23 00:54, 2F
文章代碼(AID): #1NhA_dOd (ASM)