卻沒看到圖片傳上去 因為你沒有送 webfile 的資料上去 if (esp.find(">")) { Serial.println(F("SENDING data")); 這邊沒東西 } 這也就是為什麼我覺得你的程式問題很多 之前都是在解決 NOT SENDING 的問題 現在解決了, 接下來是你根本沒有送資料的程式 缺少的是把資料從 SD 卡讀出, 然後送到 esp 去的程式 |
前面的程式並沒有修改,為什麼果變成 server not found?程式多執行幾次看看 |
要把 post 部份也加上 f(" ") |
你的程式根本沒改。還是舊版的 |
可以把結果貼出來嗎? |
超新手 發表於 2019-3-8 09:23 還是無法上傳,不知道是不是post那整段的問題,查了好多資料,可能要改改寫法 |
本帖最後由 超新手 於 2019-3-8 09:24 編輯 應該是 RAM 用量太多, 影響到程式執行 把 test 改成這樣試試看 也就是把 post 的值也移到 ROM
|
對, 你看你貼的這個程式, 多了一個 */ esp.println(sendData);*/ 根本沒辦法成功 COMPILER |
本帖最後由 ykyk9898 於 2019-3-7 19:33 編輯 超新手 發表於 2019-3-7 19:08 #include <SoftwareSerial.h> #include <SD.h> #define SD_CS 10 SoftwareSerial esp(4, 5); //RX,TX String ssid = "Ksu-fish"; //wifi name String password = "88888866"; //wifi password String server = "120.114.132.69"; // server name void connectWifi() //wificonnection { String cmd = "AT+CWJAP=\"" +ssid+"\",\"" + password + "\""; esp.println(cmd); delay(4000); if(esp.find("OK")){ Serial.println(F("WIFI Connected!")); delay(1000); } else { Serial.println(F("Cannot connect to wifi")); connectWifi(); } } void wifisetup() { esp.println(F("AT")); esp.println(F("AT+CWMODE=3")); Serial.println(F("Wifi ready")); } void setup() { Serial.begin(9600); esp.begin(9600); pinMode(10, OUTPUT); Serial.println(F("Wifi Setup")); wifisetup(); //wifi setup connectWifi(); Serial.print(F("Initializing SD card...")); if (!SD.begin(SD_CS)) { Serial.println(F("failed!")); return; } Serial.println(F("OK!")); test(); } void loop() { } void test(){ File webFile; char fileName[13] = "555.JPG"; String cmd = "AT+CIPSTART=\"TCP\",\"" + server + "\",80"; esp.println(cmd); delay(3000); if(esp.find("OK")) { Serial.println(F("server found")); webFile = SD.open(fileName,FILE_READ); Serial.print(webFile); String post = "POST /skin/upok.php HTTP/1.1\r\n"; post += "Host: 120.114.132.69\r\nContent-Type: multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW\r\n"; post += "Content-Length:"; post += webFile.size()+196; post += "\r\n"; post += "----WebKitFormBoundary7MA4YWxkTrZu0gW"; post += "Content-Disposition: form-data; name=\"my_file\"; filename=\"555.JPG\"\r\n"; post += "Content-Type: image/jpeg\r\n"; post += "----WebKitFormBoundary7MA4YWxkTrZu0gW--\r\n"; delay(1000); Serial.print(post); String sendData = "AT+CIPSEND="+String(post.length()); Serial.print(sendData); esp.println(sendData);*/ delay(6000); if (esp.find(">")) { Serial.println(F("SENDING data")); } else { Serial.println(F("NOT SENDING")); esp.println(F("AT+CIPCLOSE")); } } else { Serial.println(F("server not found")); } delay(10000); } 是否是post 那邊寫法的問題所以才一直無法成功上傳或是其他原因 |
可以把程式再貼一次嗎? |
仔細看了一下, 這個程式問題很多 不過先把 esp.print(sendData); 改成 esp.println(sendData); 照理說, 應該就可以顯示 SENDING data 了才對 雖然.....結果還是錯的 |
超新手 發表於 2019-3-6 08:46 是同一個程式沒錯,因為不太會寫這個所以很多資料是自己上網看跟嘗試的,可能是程式寫得有問題但不太會改,不知是否可以有聯絡方式方便詢問你 |
你確定你貼的程式和執行的程式是同一個嗎? 印出來的資料不一樣. 不像是同一個程式執行的結果 |
小黑屋|手機版|Archiver|機器人論壇 from 2005.07
GMT+8, 2024-11-21 23:07 , Processed in 0.302888 second(s), 10 queries , Apc On.
Powered by Discuz! X3.2
© 2001-2013 Comsenz Inc.