Joseph Bradshaw / uCAM_TTL120

Dependencies:   MODSERIAL

Dependents:   mbed_uCAM_TTL120_20141118

Committer:
jebradshaw
Date:
Mon Nov 17 21:03:43 2014 +0000
Revision:
0:fcc0eaeeb35c
Child:
1:a33d709303c6
close to getting jpeg

Who changed what in which revision?

UserRevisionLine numberNew contents of line
jebradshaw 0:fcc0eaeeb35c 1 // uCAM TTL(120) jpeg camera class for mbed
jebradshaw 0:fcc0eaeeb35c 2 // J. Bradshaw 20141106
jebradshaw 0:fcc0eaeeb35c 3
jebradshaw 0:fcc0eaeeb35c 4 #include "mbed.h"
jebradshaw 0:fcc0eaeeb35c 5
jebradshaw 0:fcc0eaeeb35c 6 #ifndef uCAM_TTL120_H
jebradshaw 0:fcc0eaeeb35c 7 #define uCAM_TTL120_H
jebradshaw 0:fcc0eaeeb35c 8
jebradshaw 0:fcc0eaeeb35c 9 //uCAM command defines, page 8 of uCAM manual
jebradshaw 0:fcc0eaeeb35c 10 #define uCAM_INITIAL 0xAA01
jebradshaw 0:fcc0eaeeb35c 11 #define uCAM_GET_PICTURE 0xAA04
jebradshaw 0:fcc0eaeeb35c 12 #define uCAM_SNAPSHOT 0xAA05
jebradshaw 0:fcc0eaeeb35c 13 #define uCAM_SET_PACKAGE_SIZE 0xAA06
jebradshaw 0:fcc0eaeeb35c 14 #define uCAM_SET_BAUD_RATE 0xAA07
jebradshaw 0:fcc0eaeeb35c 15 #define uCAM_RESET 0xAA08
jebradshaw 0:fcc0eaeeb35c 16 #define uCAM_DATA 0xAA0A
jebradshaw 0:fcc0eaeeb35c 17 #define uCAM_SYNC 0xAA0D
jebradshaw 0:fcc0eaeeb35c 18 #define uCAM_ACK 0xAA0E
jebradshaw 0:fcc0eaeeb35c 19 #define uCAM_NAK 00xAA0F
jebradshaw 0:fcc0eaeeb35c 20 #define uCAM_LIGHT 0xAA13
jebradshaw 0:fcc0eaeeb35c 21
jebradshaw 0:fcc0eaeeb35c 22 /**
jebradshaw 0:fcc0eaeeb35c 23 * uCAM_TTL120 Class.
jebradshaw 0:fcc0eaeeb35c 24 */
jebradshaw 0:fcc0eaeeb35c 25
jebradshaw 0:fcc0eaeeb35c 26 class uCAM_TTL120{
jebradshaw 0:fcc0eaeeb35c 27 public:
jebradshaw 0:fcc0eaeeb35c 28 /**
jebradshaw 0:fcc0eaeeb35c 29 * Constructor.
jebradshaw 0:fcc0eaeeb35c 30 * @param tx - Serial port transmit pin
jebradshaw 0:fcc0eaeeb35c 31 * @param rx - Serial port recieve pin
jebradshaw 0:fcc0eaeeb35c 32 */
jebradshaw 0:fcc0eaeeb35c 33 uCAM_TTL120(PinName tx, PinName rx);
jebradshaw 0:fcc0eaeeb35c 34 int uCAM_read(char *str, int numchars, float timeout);
jebradshaw 0:fcc0eaeeb35c 35
jebradshaw 0:fcc0eaeeb35c 36 void uCAM_Command_Send(int command,char p1,char p2,char p3,char p4);
jebradshaw 0:fcc0eaeeb35c 37 int uCAM_GetACK(void);
jebradshaw 0:fcc0eaeeb35c 38 int uCAM_Connect(void);
jebradshaw 0:fcc0eaeeb35c 39 void uCAM_FlushBuffer(void);
jebradshaw 0:fcc0eaeeb35c 40 int uCAM_send_INITIAL_80x60_16RAW(void);
jebradshaw 0:fcc0eaeeb35c 41 int uCAM_send_INITIAL_80x60_2RAW(void);
jebradshaw 0:fcc0eaeeb35c 42 int uCAM_send_INITIAL_128x128_4RAW(void);
jebradshaw 0:fcc0eaeeb35c 43 int uCAM_send_SNAPSHOT(void);
jebradshaw 0:fcc0eaeeb35c 44 int uCAM_send_GET_PICTURE_80x60_16COL_RAW(void);
jebradshaw 0:fcc0eaeeb35c 45 int uCAM_send_GET_PICTURE_80x60_2GRAY_RAW(void);
jebradshaw 0:fcc0eaeeb35c 46 int uCAM_send_GET_PICTURE_128x128_4GRAY_RAW(void);
jebradshaw 0:fcc0eaeeb35c 47
jebradshaw 0:fcc0eaeeb35c 48 void uCAM_TakePic_RAW_16COLOR_80x60(void);
jebradshaw 0:fcc0eaeeb35c 49 void uCAM_TakePic_RAW_2GRAY_80x60(void);
jebradshaw 0:fcc0eaeeb35c 50 void uCAM_TakePic_RAW_4GRAY_128x128(void);
jebradshaw 0:fcc0eaeeb35c 51
jebradshaw 0:fcc0eaeeb35c 52 void uCAM_set_baud(void);
jebradshaw 0:fcc0eaeeb35c 53
jebradshaw 0:fcc0eaeeb35c 54 char picture[10000];
jebradshaw 0:fcc0eaeeb35c 55 Serial _cam;
jebradshaw 0:fcc0eaeeb35c 56 private:
jebradshaw 0:fcc0eaeeb35c 57 Timer *timerCam;
jebradshaw 0:fcc0eaeeb35c 58 };
jebradshaw 0:fcc0eaeeb35c 59
jebradshaw 0:fcc0eaeeb35c 60 #endif /* uCAM_TTL120_H */