mbed interface to jpeg engine (OV528) camera module
Dependencies: mbed uCAM_TTL120
mbed_uCAM_TTL_test.cpp@3:f0b3850ea73f, 2014-11-18 (annotated)
- Committer:
- jebradshaw
- Date:
- Tue Nov 18 20:32:51 2014 +0000
- Revision:
- 3:f0b3850ea73f
- Parent:
- 2:c6ccfc36cd19
working mbed jpeg acquisition
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
jebradshaw | 0:f0b5974a0c54 | 1 | // mbed_uCAM_TTL120_test.c |
jebradshaw | 0:f0b5974a0c54 | 2 | // J Bradshaw 11-06-2014 |
jebradshaw | 0:f0b5974a0c54 | 3 | #include "mbed.h" |
jebradshaw | 0:f0b5974a0c54 | 4 | #include "uCAM_TTL120.h" |
jebradshaw | 0:f0b5974a0c54 | 5 | #include "stdio.h" |
jebradshaw | 0:f0b5974a0c54 | 6 | #include "stdlib.h" |
jebradshaw | 0:f0b5974a0c54 | 7 | |
jebradshaw | 0:f0b5974a0c54 | 8 | LocalFileSystem local("local");// Create the local filesystem under the name "local" |
jebradshaw | 0:f0b5974a0c54 | 9 | Serial pc(USBTX,USBRX); |
jebradshaw | 2:c6ccfc36cd19 | 10 | uCAM_TTL120 cam(p9, p10); //Tx/Rx |
jebradshaw | 0:f0b5974a0c54 | 11 | DigitalOut myled(LED1); |
jebradshaw | 0:f0b5974a0c54 | 12 | DigitalOut camrst(p15); |
jebradshaw | 0:f0b5974a0c54 | 13 | |
jebradshaw | 0:f0b5974a0c54 | 14 | int main(){ |
jebradshaw | 2:c6ccfc36cd19 | 15 | int fileNameCnt = 0; |
jebradshaw | 2:c6ccfc36cd19 | 16 | char fileNameStr[20]; |
jebradshaw | 2:c6ccfc36cd19 | 17 | |
jebradshaw | 0:f0b5974a0c54 | 18 | pc.baud(921600); |
jebradshaw | 2:c6ccfc36cd19 | 19 | pc.printf("%s\r\n", __FILE__); |
jebradshaw | 1:9a1b5099488a | 20 | |
jebradshaw | 2:c6ccfc36cd19 | 21 | //camera reset line drives a FET for applying power to CAM (hardware reset) |
jebradshaw | 2:c6ccfc36cd19 | 22 | camrst = 0; |
jebradshaw | 2:c6ccfc36cd19 | 23 | wait(.2); |
jebradshaw | 2:c6ccfc36cd19 | 24 | camrst = 1; |
jebradshaw | 2:c6ccfc36cd19 | 25 | |
jebradshaw | 2:c6ccfc36cd19 | 26 | if(cam.uCAM_Connect()){ //Initialize the uCAM connection |
jebradshaw | 2:c6ccfc36cd19 | 27 | pc.printf("Camera Initialized\r\n"); |
jebradshaw | 2:c6ccfc36cd19 | 28 | } |
jebradshaw | 2:c6ccfc36cd19 | 29 | else{ |
jebradshaw | 2:c6ccfc36cd19 | 30 | pc.printf("Camera failed to connect\r\n"); |
jebradshaw | 2:c6ccfc36cd19 | 31 | exit(1); |
jebradshaw | 2:c6ccfc36cd19 | 32 | } |
jebradshaw | 0:f0b5974a0c54 | 33 | |
jebradshaw | 2:c6ccfc36cd19 | 34 | cam.uCAM_set_baud(); |
jebradshaw | 0:f0b5974a0c54 | 35 | |
jebradshaw | 2:c6ccfc36cd19 | 36 | while(1) { |
jebradshaw | 2:c6ccfc36cd19 | 37 | sprintf(fileNameStr, "/local/pic%04X.jpg", fileNameCnt++); |
jebradshaw | 0:f0b5974a0c54 | 38 | |
jebradshaw | 2:c6ccfc36cd19 | 39 | FILE *fp = fopen(fileNameStr, "w"); |
jebradshaw | 2:c6ccfc36cd19 | 40 | cam.uCAM_get_jpeg(fp); |
jebradshaw | 2:c6ccfc36cd19 | 41 | fclose(fp); |
jebradshaw | 2:c6ccfc36cd19 | 42 | /* |
jebradshaw | 2:c6ccfc36cd19 | 43 | cam.uCAM_send_INITIAL_80x60_16RAW(); |
jebradshaw | 2:c6ccfc36cd19 | 44 | wait(.1); |
jebradshaw | 2:c6ccfc36cd19 | 45 | cam.uCAM_send_SNAPSHOT(); |
jebradshaw | 2:c6ccfc36cd19 | 46 | wait(.1); |
jebradshaw | 2:c6ccfc36cd19 | 47 | cam.uCAM_send_GET_PICTURE_80x60_16COL_RAW(); |
jebradshaw | 2:c6ccfc36cd19 | 48 | */ |
jebradshaw | 1:9a1b5099488a | 49 | |
jebradshaw | 0:f0b5974a0c54 | 50 | myled = 1; |
jebradshaw | 1:9a1b5099488a | 51 | wait(.2); |
jebradshaw | 0:f0b5974a0c54 | 52 | myled = 0; |
jebradshaw | 2:c6ccfc36cd19 | 53 | wait(.2); |
jebradshaw | 0:f0b5974a0c54 | 54 | } |
jebradshaw | 0:f0b5974a0c54 | 55 | } |