Port of TI's CC3100 Websock camera demo. Using FreeRTOS, mbedTLS, also parts of Arducam for cams ov5642 and 0v2640. Can also use MT9D111. Work in progress. Be warned some parts maybe a bit flacky. This is for Seeed Arch max only, for an M3, see the demo for CM3 using the 0v5642 aducam mini.

Dependencies:   mbed

Revision:
6:37fb696395d7
Parent:
0:50cedd586816
Child:
9:b7c6e7303df5
--- a/camera_app/camera_app.h	Wed Jul 01 22:45:49 2015 +0000
+++ b/camera_app/camera_app.h	Fri Jul 03 22:42:45 2015 +0000
@@ -60,7 +60,7 @@
 extern int PIXELS_IN_X_AXIS; 
 extern int PIXELS_IN_X_AXIS;
 extern int FRAME_SIZE_IN_BYTES;
-#define NUM_OF_1KB_BUFFERS      50
+#define NUM_OF_1KB_BUFFERS      50//50
 
 
 #define BYTES_PER_PIXEL             (2)       // RGB 565 
@@ -98,6 +98,26 @@
 int SetCameraResolution(int width, int height);
 void InitCameraComponents(int width, int height);
 
+static void CamControllerInit(void);
+static void CameraIntHandler(void);
+static unsigned short CaptureImage(char **WriteBuffer);
+static void DMAConfig(void);
+
+/****************************************************************************/
+/*                      LOCAL FUNCTION PROTOTYPES                           */
+/****************************************************************************/
+//#ifdef ENABLE_JPEG
+static int CreateJpegHeader(char *header, int width, int height,
+                            int format, int restart_int, int qscale);
+static int DefineRestartIntervalMarker(char *pbuf, int ri);
+static int DefineHuffmanTableMarkerAC(char *pbuf, unsigned int *htable, int class_id);
+static int DefineHuffmanTableMarkerDC(char *pbuf, unsigned int *htable, int class_id);
+static int DefineQuantizationTableMarker (unsigned char *pbuf, int qscale, int format);
+static int ScanHeaderMarker(char *pbuf, int format);
+static int FrameHeaderMarker(char *pbuf, int width, int height, int format);
+static int JfifApp0Marker(char *pbuf);
+//#endif
+
 //*****************************************************************************
 //
 // Mark the end of the C bindings section for C++ compilers.