Freedman v2

Dependencies:   CameraC328 WizFi250Interface mbed-src

Fork of WizFi250TcpUdpExample by WIZnet

Files at this revision

API Documentation at this revision

Comitter:
Ricky_Kwon
Date:
Wed Aug 26 07:55:54 2015 +0000
Parent:
3:390016675fc8
Child:
5:98fcc092982a
Commit message:
Freedman v2

Changed in this revision

CameraC328.lib Show annotated file Show diff for this revision Revisions of this file
WizFi250Interface.lib Show annotated file Show diff for this revision Revisions of this file
main.cpp Show annotated file Show diff for this revision Revisions of this file
mbed-src.lib Show annotated file Show diff for this revision Revisions of this file
mbed.bld Show diff for this revision Revisions of this file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/CameraC328.lib	Wed Aug 26 07:55:54 2015 +0000
@@ -0,0 +1,1 @@
+http://developer.mbed.org/users/shintamainjp/code/CameraC328/#49cfda6c547f
--- a/WizFi250Interface.lib	Tue Jun 23 01:23:15 2015 +0000
+++ b/WizFi250Interface.lib	Wed Aug 26 07:55:54 2015 +0000
@@ -1,1 +1,1 @@
-http://mbed.org/users/kaizen/code/WizFi250Interface/#187e3fd24123
+http://mbed.org/users/kaizen/code/WizFi250Interface/#502d9c5a0053
--- a/main.cpp	Tue Jun 23 01:23:15 2015 +0000
+++ b/main.cpp	Wed Aug 26 07:55:54 2015 +0000
@@ -20,174 +20,101 @@
 #include <stdio.h>
 #include "mbed.h"
 #include "WizFi250Interface.h"
-
+#include "CameraC328.h"
 
 #define SECURE WizFi250::SEC_AUTO
-#define SSID "wizohp"
-#define PASS "wiznet218"
+#define SSID "Ricky"
+#define PASS "ricky123"
+
+//#define ECHO_SERVER_ADDRESS "192.168.0.2"
+//#define ECHO_SERVER_PORT    5000
 
-#define ECHO_SERVER_ADDRESS "192.168.15.14"
-#define ECHO_SERVER_PORT    5000
+/* CAMERA */
+#define USE_JPEG_HIGH_RESOLUTION    2//1=80x64 <--- not working -_-;;, 2=160x128, 3=320x240, 4=640x480
+#define START                       "start"
+#define END                         "end"
+CameraC328 camera(PC_10, PC_11, CameraC328::Baud115200);
 
+/* NETWORK */
 #if defined(TARGET_FRDM_KL25Z)
     WizFi250Interface wizfi250(PTE0,PTE1,PTD5,PTD0,PTD4,NC,115200);
 #else
-    WizFi250Interface wizfi250(D0,D1,D7,D8,PA_12,NC,115200);
+    WizFi250Interface wizfi250(D1,D0,D7,D8,PA_12,NC,115200);
+    //Serial pc(USBTX, USBRX);
+    //Serial pc2(PC_10,PC_11);
 #endif
-
+TCPSocketConnection Streaming;
+const char dest_ip[] = "192.168.0.2";
+int dest_port = 1212;
+static char buf[128];
 
 
-void testUdpEchoClient();
-void testUdpEchoServer();
-void testTcpEchoClient();
-void testTcpEchoServer();
+/* Function*/ 
+void jpeg_callback(char *buf, size_t siz);
+void sync(void);
+void test_jpeg_snapshot_picture(void);
 
 int main()
 {
-        int i;
-        char input;
-        
+
         wizfi250.init();
         if ( wizfi250.connect(SECURE, SSID, PASS))      return -1;
         printf("IP Address is %s\r\n", wizfi250.getIPAddress());
 
-
+        sync();
+        while (Streaming.connect(dest_ip, dest_port) < 0) {
+            printf("Unable to connect to (%s) on port (%d)\r\n", dest_ip, dest_port);
+            wait(1);
+        }
+    
         while(1)
         {
-            printf("\r\nInput Test Mode ( 1:)\r\n");
-            scanf("%c",&input);
-
-            if(input == 'q')
-                break;
-
-            switch(input)
-            {
-            case '1':
-                testTcpEchoServer();
-                break;
-            case '2':
-                testTcpEchoClient();
-                break;
-            case '3':
-                testUdpEchoClient();
-                break;
-            case '4':
-                testUdpEchoServer();
-                break;
-            }
+            Streaming.send(START, sizeof(START)-1);
+            test_jpeg_snapshot_picture();
+            Streaming.send(END, sizeof(END)-1);
         }
 
-        printf("End the test program\r\n");
 }
 
-
-void testTcpEchoServer()
-{
-    char buffer[1024];
-    int n = 0;
+void jpeg_callback(char *buf, size_t siz) {
+    //for (int i = 0; i < (int)siz; i++) {
+        //fprintf(fp_jpeg, "%c", buf[i]);
+        Streaming.send(buf, siz);
+    //}
+}
+void sync(void) {
+    CameraC328::ErrorNumber err = CameraC328::NoError;
 
-    TCPSocketServer server;
-    server.bind(ECHO_SERVER_PORT);
-    server.listen();
-
-    printf("\nWait for new connection...\r\n");
-    TCPSocketConnection client;
-    server.accept(client);
-    client.set_blocking(false, 1500);
+    err = camera.sync();
+    if (CameraC328::NoError == err) {
+        printf("[ OK ] : CameraC328::sync\r\n");
+    } else {
+        printf("[FAIL] : CameraC328::sync (Error=%02X)\r\n", (int)err);
+    }
+}
+void test_jpeg_snapshot_picture() {
+    CameraC328::ErrorNumber err = CameraC328::NoError;
 
-    printf("Connection from: %s\r\n", client.get_address());
-    while (true)
-    {
-        if( client.is_connected() == false )
-        {
-            client.close();
-            break;
-        }
+#if (USE_JPEG_HIGH_RESOLUTION==1)
+    err = camera.init(CameraC328::Jpeg, CameraC328::RawResolution80x60, CameraC328::JpegResolution80x64);
+#elif (USE_JPEG_HIGH_RESOLUTION==2)
+    err = camera.init(CameraC328::Jpeg, CameraC328::RawResolution80x60, CameraC328::JpegResolution160x128);
+#elif (USE_JPEG_HIGH_RESOLUTION==3)
+    err = camera.init(CameraC328::Jpeg, CameraC328::RawResolution80x60, CameraC328::JpegResolution320x240);
+#elif (USE_JPEG_HIGH_RESOLUTION==4)
+    err = camera.init(CameraC328::Jpeg, CameraC328::RawResolution80x60, CameraC328::JpegResolution640x480);
+#endif
+    if (CameraC328::NoError == err) {
+        printf("[ OK ] : CameraC328::init\r\n");
+    } else {
+        printf("[FAIL] : CameraC328::init (Error=%02X)\r\n", (int)err);
+    }
 
-        n = client.receive_all(buffer, sizeof(buffer));
-        if ( n > 0 )
-        {
-            buffer[n] = '\0';
-            printf("length : %d\r\n", n);
-
-            client.send_all(buffer, n);
-        }
+    err = camera.getJpegSnapshotPicture(jpeg_callback);
+    if (CameraC328::NoError == err) {
+        printf("[ OK ] : CameraC328::getJpegSnapshotPicture\r\n");
+    } else {
+        printf("[FAIL] : CameraC328::getJpegSnapshotPicture (Error=%02X)\r\n", (int)err);
     }
 }
 
-void testUdpEchoClient()
-{
-    int i;
-    UDPSocket sock;
-    sock.init();
-
-    Endpoint echo_server;
-    echo_server.set_address(ECHO_SERVER_ADDRESS, ECHO_SERVER_PORT);
-
-
-    for(i=0;i<10;i++)
-    {
-        char out_buffer[] = "Hello World\n";
-        sock.sendTo(echo_server, out_buffer, sizeof(out_buffer));
-
-        char in_buffer[256];
-        int n = sock.receiveFrom(echo_server, in_buffer, sizeof(in_buffer));
-        in_buffer[n] = '\0';
-
-        if( n > 0 )
-            printf("%s\r\n", in_buffer);
-    }
-
-    sock.close();
-}
-
-
-void testUdpEchoServer()
-{
-        UDPSocket server;
-        server.set_blocking(false);
-        server.bind(ECHO_SERVER_PORT);
-
-        Endpoint client;
-        char buffer[256];
-        while(true)
-        {
-            int n = server.receiveFrom(client, buffer, sizeof(buffer));
-            if(n > 0)
-            {
-                //INFO("Received packet from: %s\n", client.get_address());
-                buffer[n] = '\0';
-                printf("%s\r\n", buffer);
-                server.sendTo(client, buffer, n);
-                break;
-            }
-        }
-}
-
-
-void testTcpEchoClient()
-{
-    char buffer[512];
-    TCPSocketConnection socket;
-
-    while (socket.connect(ECHO_SERVER_ADDRESS, ECHO_SERVER_PORT) < 0)
-    {
-        printf("Unable to connect to (%s) on port (%d)\r\n", ECHO_SERVER_ADDRESS, ECHO_SERVER_PORT);
-        wait(1);
-    }
-
-    while(true)
-    {
-        int n = socket.receive(buffer, sizeof(buffer));
-        if(n > 0)
-        {
-            buffer[n] = '\0';
-            printf("%s\r\n",buffer);
-            socket.send(buffer, strlen(buffer));
-            //socket.send_all(buffer, sizeof(buffer)-1);
-            break;
-        }
-    }
-
-    socket.close();
-}
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mbed-src.lib	Wed Aug 26 07:55:54 2015 +0000
@@ -0,0 +1,1 @@
+https://developer.mbed.org/users/kaizen/code/mbed-src/#d1b257119699
--- a/mbed.bld	Tue Jun 23 01:23:15 2015 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1 +0,0 @@
-http://mbed.org/users/mbed_official/code/mbed/builds/7cff1c4259d7
\ No newline at end of file