Toma de foto y descomprimir en HEX

Dependencies:   JPEGCamera SDFileSystem mbed

Fork of SaibiCansat2014 by Takashi SASAKI

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers camera.cpp Source File

camera.cpp

00001 #include "mbed.h"
00002 #include "FastJpegCamera.h"
00003 #include "SDFileSystem.h"
00004 #include "camera.h"
00005 
00006 DigitalOut myled1(LED1); //show successful picture was taken 
00007 DigitalOut myled2(LED2); //show end of sequence
00008 DigitalOut myled3(LED3); //show picture take failed
00009 DigitalOut myled4(LED4); //show camera is not ready
00010 
00011 //SDFileSystem sd(p5,p6,p7,p8,"sd");
00012 //AnalogIn ain(p15);
00013 
00014 LocalFileSystem local("local");
00015 #define FILENAME "/sd/pict%03d.jpg"
00016 
00017 
00018 
00019 int main_camera(int i) {
00020     
00021     printf("%s\n", __FILE__); //sourcefilename printout
00022     printf("start!!\n");
00023     
00024     JPEGCamera camera(p9, p10); // TX, RX
00025     
00026     LocalFileSystem local("local"); //save images on mbed
00027     Timer timer;
00028     timer.start();
00029     camera.setPictureSize(JPEGCamera::SIZE320x240);
00030     
00031     //FILE *fp = fopen(FILENAME,"wb");
00032     //if (fp == NULL) return -1;
00033     
00034     
00035     //for (int i = 0; i < 2; i++) {
00036         
00037         if (camera.isReady()) {
00038             char filename[32];
00039             sprintf(filename, FILENAME, i);
00040             printf("Picture: %s ", filename);
00041             myled1 = 1;
00042             if (camera.takePicture(filename)) {
00043                 while (camera.isProcessing()) {
00044                     camera.processPicture();
00045                 }
00046                 //myled1 = 1; //show successful picture was taken 
00047                 //wait(2.0);
00048                 //myled1 = 0;
00049             } else {
00050                 printf("take picture picture\n");
00051                 //myled3 = 1; //show picture take failed
00052                 //wait(2.0);
00053                 //myled3 = 0;
00054             }
00055             myled1 = 0;
00056         } else {
00057             printf("show camera is not ready\n");
00058             myled4 = 1; //show camera is not ready
00059             wait(2.0);
00060             myled4 = 0;
00061         }
00062     //}
00063     //myled2 = 1; //show end of sequence
00064     //wait(2.0);
00065     //myled2 = 0;
00066     printf("time = %f\n", timer.read());
00067     
00068     //fclose(fp);
00069     //exit(1);
00070     return 0;
00071 }