Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependents: mbed_uCAM_TTL120_20141118
uCAM_TTL120.h@0:fcc0eaeeb35c, 2014-11-17 (annotated)
- 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?
User | Revision | Line number | New 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 */ |