Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem Modul SIM800 GPRS

Já se omlouvám jestli jsem tady s tím otravoval ale nevím si rady ,jaký je přenos binární nebo znakový ?

void takePhoto() {

      
  camera_fb_t * fb = NULL;
  
  
  // Take Picture with Camera
  fb = esp_camera_fb_get();  
  if(!fb) {
    Serial.println("Camera capture failed");
    return;
  }

  /*
   * Upload to ftp server
   */
  

  ftp.ChangeWorkDir(ftp_path);
  ftp.InitFile("Type I");

  String nombreArchivo = "picture.jpg";
 // timeClient.getFormattedTime()+".jpg"; // AAAAMMDD_HHMMSS.jpg
  Serial.println("Nahravani  "+nombreArchivo);
  int str_len = nombreArchivo.length() + 1; 
 
  char char_array[str_len];
  nombreArchivo.toCharArray(char_array, str_len);
  
  ftp.NewFile(char_array);
  ftp.WriteData( fb->buf, fb->len );
  ftp.CloseFile();
  
  /*
   * Free
   */
  esp_camera_fb_return(fb); 

****************************************
a tady co dělám špatně ?

Serial.print("AT+FTPPUTNAME=\"picture.jpg\"\r");
Serial.flush();
delay(1000);
  while(Serial.available()){
    mesage=mesage+Serial.read();
  }
  Serial.print("AT+FTPPUT=1\r");
Serial.flush();
delay(3000);
 while(Serial.available()){
    mesage=mesage+Serial.read();
  }
  int c=(fb->len)/1024;
for(int l=0;l<=c;l++){

Serial.print("AT+FTPPUT=2,1024\r");

Serial.flush();
delay(3000); 
 while(Serial.available()){
    mesage=mesage+Serial.read();
  } 
  for(int i=0;i<=1024;i++)
     Serial.print(fb->buf[poz]);
     poz++;
  // put your setup code here, to run once:
delay(3000);
}
int z=(fb->len)%1024;
Serial.print("AT+FTPPUT=2,");
Serial.print(z);
Serial.print("\r");
Serial.flush();
 for(int i=0;i<=z;i++){
     Serial.print(fb->buf[poz]);
     poz++;
 }
Serial.print("AT+FTPPUT=2,0\r");
Serial.flush(); 
  esp_camera_fb_return(fb); 
   Serial.print("AT+SAPBR=0,1\r"); 
 Serial.flush();

díky

Reakce na odpověď

1 Zadajte svou přezdívku:
2 Napište svou odpověď:
3 Pokud chcete dostat ban, zadejte libovolný text:

Zpět do poradny