Ramiro Rubio / Mbed 2 deprecated Camara

Dependencies:   mbed

Revision:
1:9855b1065eae
Parent:
0:63fef0f8da41
--- a/main.cpp	Mon Apr 18 22:20:38 2016 +0000
+++ b/main.cpp	Tue Apr 26 20:05:21 2016 +0000
@@ -1,6 +1,8 @@
 #include "mbed.h"
 Serial pc(USBTX, USBRX); // tx, rx
+Serial wifi(PTE22,PTE23);
 Serial cam(PTC4,PTC3);
+DigitalOut myled(LED1);
 unsigned char reset[]={0x56,0x00,0x26,0x00};
 unsigned char init_end[]="Init end";
 unsigned char take_pic[]={0x56,0x00,0x36,0x01,0x00};
@@ -15,15 +17,18 @@
 unsigned char buff[13000];
 unsigned int i;
 unsigned int j;
+unsigned int hex_size;
+unsigned char rem;
 int main() {
     i=0;
+    myled=0;
     cam.baud(38400);
     do
     {
         cam.printf("%c",reset[i++]);
     }while(i<4);
     i=0;
- //   pc.printf("reset\n");
+    pc.printf("reset\n");
     do
     {
         if(cam.getc()==init_end[i])
@@ -31,7 +36,7 @@
             i++;
         };
     }while(init_end[i]);
- //   pc.printf("START\n");
+    pc.printf("START\n");
     
     
     i=0;
@@ -48,7 +53,7 @@
         };
     }while(i<5);
     i=0;
- //   pc.printf("pic taken\n");
+    pc.printf("pic taken\n");
     wait(1);
     do
     {
@@ -66,14 +71,15 @@
     i=0;  
     size[0]=cam.getc();
     size[1]=cam.getc();
-    /*
-    do
-    {
-        size[i++]=cam.getc();
-    }while(i<2);
-    */
-    i=0;
- //   pc.printf("got size\n");
+    hex_size=0;
+    hex_size=size[0];
+    hex_size=(hex_size<<8)+size[1];
+    
+    pc.printf("%x",hex_size);
+    
+    rem=hex_size%4;
+    
+    pc.printf("%x",rem);
     do
     { 
         cam.printf("%c",read_pic[i++]);  
@@ -106,8 +112,41 @@
         }
         i++;
     }while(data_ready<2);
+    pc.printf("FOTO");
+    j=5;
+    myled=1;
     do
     {
-        pc.printf("%c",buff[j++]);
+        pc.printf("%c",buff[(j++)]);
     }while(j<i);
+    j=5;
+
+    wifi.printf("%s","file.open(\"http/test.jpg\",\"w+\")\r");
+    wait(0.2);
+    wifi.printf("%s","uart.on(\"data\",4,\r");
+    wait(0.1);
+    wifi.printf("%s","function(data)\r");
+    wait(0.1);
+    wifi.printf("%s","print(\"receive from uart:\", data)\r");
+    wait(0.1);
+    wifi.printf("%s","file.write(data)\r");
+    wait(0.1);
+    wifi.printf("%s","if data==\"quit\" then\r");
+    wait(0.1);
+    wifi.printf("%s","print(\"success\")\r");
+    wait(0.1);
+    wifi.printf("%s","uart.on(\"data\")\r");
+    wait(0.1);
+    wifi.printf("%s","end\r");
+    wait(0.1);
+    wifi.printf("%s","end, 0)\r");
+    wait(0.1);
+    do
+    {
+        wifi.printf("%c",buff[(j++)]);
+        wait(0.007);
+    }while(j<i);
+    wifi.printf("%s","quit");
+    wait(1);
+    wifi.printf("%s","file.close()\r");
 }