casat
Dependencies: mbed-src FATFileSystem1515 SDFileSystem1515 Camera_LS_Y201_CANSAT
Fork of CANSAT_CAMERA_servo by
main2.cpp@4:dfb4154c597b, 2015-09-09 (annotated)
- Committer:
- Hagrass
- Date:
- Wed Sep 09 23:20:05 2015 +0000
- Revision:
- 4:dfb4154c597b
- Parent:
- 2:248e3594ca61
vvvvvv
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Hagrass | 2:248e3594ca61 | 1 | #include "mbed.h" |
Hagrass | 2:248e3594ca61 | 2 | #include "Camera_LS_Y201.h" |
Hagrass | 2:248e3594ca61 | 3 | #include "SDFileSystem.h" |
Hagrass | 4:dfb4154c597b | 4 | |
Hagrass | 2:248e3594ca61 | 5 | |
Hagrass | 4:dfb4154c597b | 6 | DigitalOut myservo(p20); |
Hagrass | 2:248e3594ca61 | 7 | //#include "FATFileSystem.h" |
Hagrass | 2:248e3594ca61 | 8 | Serial xbee(p28,p27); |
Hagrass | 2:248e3594ca61 | 9 | Serial pc(USBTX,USBRX); |
Hagrass | 2:248e3594ca61 | 10 | //FILE *p1; |
Hagrass | 2:248e3594ca61 | 11 | |
Hagrass | 2:248e3594ca61 | 12 | #define DEBMSG pc.printf |
Hagrass | 2:248e3594ca61 | 13 | #define NEWLINE() pc.printf("\r\n") |
Hagrass | 2:248e3594ca61 | 14 | |
Hagrass | 2:248e3594ca61 | 15 | #define USE_SDCARD 0 |
Hagrass | 2:248e3594ca61 | 16 | |
Hagrass | 2:248e3594ca61 | 17 | #if USE_SDCARD |
Hagrass | 2:248e3594ca61 | 18 | #define FILENAME "/sd/IMG_%04d.jpg" |
Hagrass | 2:248e3594ca61 | 19 | SDFileSystem fs(p5, p6, p7, p8, "sd"); |
Hagrass | 2:248e3594ca61 | 20 | #else |
Hagrass | 2:248e3594ca61 | 21 | #define FILENAME "/local/IMG_%04d.jpg" |
Hagrass | 2:248e3594ca61 | 22 | LocalFileSystem fs("local"); |
Hagrass | 2:248e3594ca61 | 23 | #endif |
Hagrass | 2:248e3594ca61 | 24 | Camera_LS_Y201 cam1(p17, p18); |
Hagrass | 2:248e3594ca61 | 25 | |
Hagrass | 2:248e3594ca61 | 26 | typedef struct work { |
Hagrass | 2:248e3594ca61 | 27 | FILE *fp; |
Hagrass | 2:248e3594ca61 | 28 | } work_t; |
Hagrass | 2:248e3594ca61 | 29 | |
Hagrass | 2:248e3594ca61 | 30 | work_t work; |
Hagrass | 4:dfb4154c597b | 31 | /////////////////////////servo |
Hagrass | 4:dfb4154c597b | 32 | Timer timer1; |
Hagrass | 4:dfb4154c597b | 33 | void servo(float p) |
Hagrass | 4:dfb4154c597b | 34 | { |
Hagrass | 4:dfb4154c597b | 35 | int x=1; |
Hagrass | 4:dfb4154c597b | 36 | while(x<=10) |
Hagrass | 4:dfb4154c597b | 37 | { |
Hagrass | 2:248e3594ca61 | 38 | |
Hagrass | 4:dfb4154c597b | 39 | timer1.start(); |
Hagrass | 4:dfb4154c597b | 40 | |
Hagrass | 4:dfb4154c597b | 41 | while(timer1.read_ms()<p) |
Hagrass | 4:dfb4154c597b | 42 | { |
Hagrass | 4:dfb4154c597b | 43 | myservo=1; |
Hagrass | 4:dfb4154c597b | 44 | } |
Hagrass | 4:dfb4154c597b | 45 | |
Hagrass | 4:dfb4154c597b | 46 | |
Hagrass | 4:dfb4154c597b | 47 | while(timer1.read_ms()<20) |
Hagrass | 4:dfb4154c597b | 48 | { |
Hagrass | 4:dfb4154c597b | 49 | myservo=0; |
Hagrass | 4:dfb4154c597b | 50 | } |
Hagrass | 4:dfb4154c597b | 51 | timer1.reset(); |
Hagrass | 4:dfb4154c597b | 52 | |
Hagrass | 4:dfb4154c597b | 53 | x++; |
Hagrass | 4:dfb4154c597b | 54 | } |
Hagrass | 4:dfb4154c597b | 55 | } |
Hagrass | 4:dfb4154c597b | 56 | |
Hagrass | 4:dfb4154c597b | 57 | ///////////////////////////servo |
Hagrass | 2:248e3594ca61 | 58 | |
Hagrass | 2:248e3594ca61 | 59 | |
Hagrass | 2:248e3594ca61 | 60 | uint8_t send[16] = { |
Hagrass | 2:248e3594ca61 | 61 | 0x56, |
Hagrass | 2:248e3594ca61 | 62 | 0x00, |
Hagrass | 2:248e3594ca61 | 63 | 0x32, |
Hagrass | 2:248e3594ca61 | 64 | 0x0C, |
Hagrass | 2:248e3594ca61 | 65 | 0x00, |
Hagrass | 2:248e3594ca61 | 66 | 0x0A, |
Hagrass | 2:248e3594ca61 | 67 | 0x00, |
Hagrass | 2:248e3594ca61 | 68 | 0x00, |
Hagrass | 2:248e3594ca61 | 69 | 0x00, // MH |
Hagrass | 2:248e3594ca61 | 70 | 0x00, // ML |
Hagrass | 2:248e3594ca61 | 71 | 0x00, |
Hagrass | 2:248e3594ca61 | 72 | 0x00, |
Hagrass | 2:248e3594ca61 | 73 | 0x00, // KH |
Hagrass | 2:248e3594ca61 | 74 | 0x00, // KL |
Hagrass | 2:248e3594ca61 | 75 | 0x00, // XX |
Hagrass | 2:248e3594ca61 | 76 | 0x00 // XX |
Hagrass | 2:248e3594ca61 | 77 | }; |
Hagrass | 2:248e3594ca61 | 78 | |
Hagrass | 2:248e3594ca61 | 79 | uint16_t x = 10; // Interval time. XX XX * 0.01m[sec] |
Hagrass | 2:248e3594ca61 | 80 | bool end = true; |
Hagrass | 2:248e3594ca61 | 81 | uint16_t m = 0; // Staring address. |
Hagrass | 2:248e3594ca61 | 82 | /* |
Hagrass | 2:248e3594ca61 | 83 | * Get the data size. |
Hagrass | 2:248e3594ca61 | 84 | */ |
Hagrass | 2:248e3594ca61 | 85 | uint8_t body[16000]; |
Hagrass | 2:248e3594ca61 | 86 | uint16_t k = sizeof(body); |
Hagrass | 2:248e3594ca61 | 87 | int siz_done = 0; |
Hagrass | 2:248e3594ca61 | 88 | int siz_total = 0; |
Hagrass | 2:248e3594ca61 | 89 | int cnt = 0; |
Hagrass | 2:248e3594ca61 | 90 | int z; |
Hagrass | 2:248e3594ca61 | 91 | ////////////////////////////////////////// |
Hagrass | 2:248e3594ca61 | 92 | void callback_func(int done, int total, uint8_t *buf, size_t siz) { |
Hagrass | 2:248e3594ca61 | 93 | |
Hagrass | 2:248e3594ca61 | 94 | // fwrite(buf, siz, 1, work.fp); |
Hagrass | 2:248e3594ca61 | 95 | |
Hagrass | 2:248e3594ca61 | 96 | for(int i=0;i<siz;i++) |
Hagrass | 2:248e3594ca61 | 97 | { |
Hagrass | 2:248e3594ca61 | 98 | //xbee.printf("%x",buf[i]); |
Hagrass | 2:248e3594ca61 | 99 | fprintf(work.fp,"%c",buf[i]); |
Hagrass | 2:248e3594ca61 | 100 | } |
Hagrass | 2:248e3594ca61 | 101 | |
Hagrass | 2:248e3594ca61 | 102 | static int n = 0; |
Hagrass | 2:248e3594ca61 | 103 | int tmp = done * 100 / total; |
Hagrass | 2:248e3594ca61 | 104 | if (n != tmp) { |
Hagrass | 2:248e3594ca61 | 105 | n = tmp; |
Hagrass | 2:248e3594ca61 | 106 | DEBMSG("Writ%3d%%", n); |
Hagrass | 2:248e3594ca61 | 107 | NEWLINE(); |
Hagrass | 2:248e3594ca61 | 108 | } |
Hagrass | 2:248e3594ca61 | 109 | } |
Hagrass | 2:248e3594ca61 | 110 | |
Hagrass | 2:248e3594ca61 | 111 | |
Hagrass | 2:248e3594ca61 | 112 | |
Hagrass | 2:248e3594ca61 | 113 | //////////////////////////////////////////// |
Hagrass | 2:248e3594ca61 | 114 | |
Hagrass | 2:248e3594ca61 | 115 | |
Hagrass | 2:248e3594ca61 | 116 | |
Hagrass | 2:248e3594ca61 | 117 | |
Hagrass | 2:248e3594ca61 | 118 | void readdJpegFileContent(void (*func)(int done, int total, uint8_t *buf, size_t siz)) { |
Hagrass | 2:248e3594ca61 | 119 | |
Hagrass | 2:248e3594ca61 | 120 | |
Hagrass | 2:248e3594ca61 | 121 | |
Hagrass | 2:248e3594ca61 | 122 | if(m==0) |
Hagrass | 2:248e3594ca61 | 123 | { |
Hagrass | 2:248e3594ca61 | 124 | z=sizeof(body); |
Hagrass | 2:248e3594ca61 | 125 | } |
Hagrass | 2:248e3594ca61 | 126 | |
Hagrass | 2:248e3594ca61 | 127 | //if (r != NoError) { |
Hagrass | 2:248e3594ca61 | 128 | // return r; |
Hagrass | 2:248e3594ca61 | 129 | //} |
Hagrass | 2:248e3594ca61 | 130 | |
Hagrass | 2:248e3594ca61 | 131 | |
Hagrass | 2:248e3594ca61 | 132 | send[8] = (m >> 8) & 0xff; |
Hagrass | 2:248e3594ca61 | 133 | send[9] = (m >> 0) & 0xff; |
Hagrass | 2:248e3594ca61 | 134 | send[12] = (k >> 8) & 0xff; |
Hagrass | 2:248e3594ca61 | 135 | send[13] = (k >> 0) & 0xff; |
Hagrass | 2:248e3594ca61 | 136 | send[14] = (x >> 8) & 0xff; |
Hagrass | 2:248e3594ca61 | 137 | send[15] = (x >> 0) & 0xff; |
Hagrass | 2:248e3594ca61 | 138 | /* |
Hagrass | 2:248e3594ca61 | 139 | * Send a command. |
Hagrass | 2:248e3594ca61 | 140 | */ |
Hagrass | 2:248e3594ca61 | 141 | cam1.sendBytes(send, sizeof(send), 200 * 1000) ; |
Hagrass | 2:248e3594ca61 | 142 | // printf("sended header"); |
Hagrass | 2:248e3594ca61 | 143 | // return SendError; |
Hagrass | 2:248e3594ca61 | 144 | |
Hagrass | 2:248e3594ca61 | 145 | /* |
Hagrass | 2:248e3594ca61 | 146 | * Read the header of the response. |
Hagrass | 2:248e3594ca61 | 147 | */ |
Hagrass | 2:248e3594ca61 | 148 | uint8_t header[5]; |
Hagrass | 2:248e3594ca61 | 149 | cam1.recvBytes(header, sizeof(header), 2 * 1000 * 1000); |
Hagrass | 2:248e3594ca61 | 150 | // return RecvError; |
Hagrass | 2:248e3594ca61 | 151 | //printf("recved header"); |
Hagrass | 2:248e3594ca61 | 152 | /* |
Hagrass | 2:248e3594ca61 | 153 | * Check the response and fetch an image data. |
Hagrass | 2:248e3594ca61 | 154 | */ |
Hagrass | 2:248e3594ca61 | 155 | |
Hagrass | 2:248e3594ca61 | 156 | if ((header[0] == 0x76) |
Hagrass | 2:248e3594ca61 | 157 | && (header[1] == 0x00) |
Hagrass | 2:248e3594ca61 | 158 | && (header[2] == 0x32) |
Hagrass | 2:248e3594ca61 | 159 | && (header[3] == 0x00) |
Hagrass | 2:248e3594ca61 | 160 | && (header[4] == 0x00)) { |
Hagrass | 2:248e3594ca61 | 161 | |
Hagrass | 2:248e3594ca61 | 162 | cam1.recvBytes(body, z, 2 * 1000 * 1000); //{ |
Hagrass | 2:248e3594ca61 | 163 | //return RecvError; |
Hagrass | 2:248e3594ca61 | 164 | // } |
Hagrass | 2:248e3594ca61 | 165 | // printf("saved"); |
Hagrass | 2:248e3594ca61 | 166 | |
Hagrass | 2:248e3594ca61 | 167 | siz_done += z; |
Hagrass | 2:248e3594ca61 | 168 | |
Hagrass | 2:248e3594ca61 | 169 | if (func != NULL) { |
Hagrass | 2:248e3594ca61 | 170 | if (siz_done > siz_total) { |
Hagrass | 2:248e3594ca61 | 171 | z=sizeof(body)-siz_done+siz_total+3; |
Hagrass | 2:248e3594ca61 | 172 | siz_done = siz_total; |
Hagrass | 2:248e3594ca61 | 173 | |
Hagrass | 2:248e3594ca61 | 174 | |
Hagrass | 2:248e3594ca61 | 175 | } |
Hagrass | 2:248e3594ca61 | 176 | func(siz_done, siz_total, body, z); |
Hagrass | 2:248e3594ca61 | 177 | } |
Hagrass | 2:248e3594ca61 | 178 | for (int i = 1; i < z; i++) { |
Hagrass | 2:248e3594ca61 | 179 | if ((body[i - 1] == 0xFF) && (body[i - 0] == 0xD9)) { |
Hagrass | 2:248e3594ca61 | 180 | end = true; |
Hagrass | 2:248e3594ca61 | 181 | //printf("saved%d",i); |
Hagrass | 2:248e3594ca61 | 182 | } |
Hagrass | 2:248e3594ca61 | 183 | } |
Hagrass | 2:248e3594ca61 | 184 | } //else { |
Hagrass | 2:248e3594ca61 | 185 | // return UnexpectedReply; |
Hagrass | 2:248e3594ca61 | 186 | //} |
Hagrass | 2:248e3594ca61 | 187 | /* |
Hagrass | 2:248e3594ca61 | 188 | * Read the footer of the response. |
Hagrass | 2:248e3594ca61 | 189 | */ |
Hagrass | 2:248e3594ca61 | 190 | uint8_t footer[5]; |
Hagrass | 2:248e3594ca61 | 191 | cam1.recvBytes(footer, sizeof(footer), 2 * 1000 * 1000);// { |
Hagrass | 2:248e3594ca61 | 192 | // return RecvError; |
Hagrass | 2:248e3594ca61 | 193 | //} |
Hagrass | 2:248e3594ca61 | 194 | |
Hagrass | 2:248e3594ca61 | 195 | m += z; |
Hagrass | 2:248e3594ca61 | 196 | |
Hagrass | 2:248e3594ca61 | 197 | // return NoError; |
Hagrass | 2:248e3594ca61 | 198 | } |
Hagrass | 2:248e3594ca61 | 199 | |
Hagrass | 2:248e3594ca61 | 200 | ////////////////// |
Hagrass | 2:248e3594ca61 | 201 | /** |
Hagrass | 2:248e3594ca61 | 202 | * Capture. |
Hagrass | 2:248e3594ca61 | 203 | * |
Hagrass | 2:248e3594ca61 | 204 | * @param cam A pointer to a camera object. |
Hagrass | 2:248e3594ca61 | 205 | * @param filename The file name. |
Hagrass | 2:248e3594ca61 | 206 | * |
Hagrass | 2:248e3594ca61 | 207 | * @return Return 0 if it succeed. |
Hagrass | 2:248e3594ca61 | 208 | */ |
Hagrass | 4:dfb4154c597b | 209 | float p=0.9;//////////////servo |
Hagrass | 2:248e3594ca61 | 210 | int flag=1;///////////////servo |
Hagrass | 2:248e3594ca61 | 211 | int capture(Camera_LS_Y201 *cam, char *filename) { |
Hagrass | 2:248e3594ca61 | 212 | /* |
Hagrass | 2:248e3594ca61 | 213 | * Take a picture. |
Hagrass | 2:248e3594ca61 | 214 | */ |
Hagrass | 2:248e3594ca61 | 215 | if(end==true) |
Hagrass | 2:248e3594ca61 | 216 | { |
Hagrass | 2:248e3594ca61 | 217 | ///////////////////////////////////////////servo |
Hagrass | 4:dfb4154c597b | 218 | servo(p); |
Hagrass | 4:dfb4154c597b | 219 | pc.printf("hhhhhhh%fhhhh",p); |
Hagrass | 2:248e3594ca61 | 220 | if (flag==1) |
Hagrass | 2:248e3594ca61 | 221 | { |
Hagrass | 4:dfb4154c597b | 222 | p+=0.6; |
Hagrass | 2:248e3594ca61 | 223 | } |
Hagrass | 2:248e3594ca61 | 224 | else |
Hagrass | 2:248e3594ca61 | 225 | { |
Hagrass | 4:dfb4154c597b | 226 | p-=0.6; |
Hagrass | 2:248e3594ca61 | 227 | } |
Hagrass | 4:dfb4154c597b | 228 | if(p>1.5) |
Hagrass | 2:248e3594ca61 | 229 | |
Hagrass | 2:248e3594ca61 | 230 | { |
Hagrass | 2:248e3594ca61 | 231 | flag=0; |
Hagrass | 2:248e3594ca61 | 232 | } |
Hagrass | 2:248e3594ca61 | 233 | |
Hagrass | 4:dfb4154c597b | 234 | if(p<0.9) |
Hagrass | 2:248e3594ca61 | 235 | { |
Hagrass | 2:248e3594ca61 | 236 | flag=1; |
Hagrass | 2:248e3594ca61 | 237 | } |
Hagrass | 2:248e3594ca61 | 238 | |
Hagrass | 2:248e3594ca61 | 239 | //////////////////////////////////////////servo |
Hagrass | 2:248e3594ca61 | 240 | if (cam->takePicture() != 0) { |
Hagrass | 2:248e3594ca61 | 241 | return -1; |
Hagrass | 2:248e3594ca61 | 242 | } |
Hagrass | 2:248e3594ca61 | 243 | cam1.readJpegFileSize(&siz_total); |
Hagrass | 2:248e3594ca61 | 244 | // printf("%d",siz_total); |
Hagrass | 2:248e3594ca61 | 245 | siz_done = 0; |
Hagrass | 2:248e3594ca61 | 246 | |
Hagrass | 2:248e3594ca61 | 247 | |
Hagrass | 2:248e3594ca61 | 248 | DEBMSG("Captured."); |
Hagrass | 2:248e3594ca61 | 249 | NEWLINE(); |
Hagrass | 2:248e3594ca61 | 250 | work.fp = fopen(filename, "wb"); |
Hagrass | 2:248e3594ca61 | 251 | //p1= fopen("/sd/IMG_11111.txt", "wb"); |
Hagrass | 2:248e3594ca61 | 252 | if (work.fp == NULL) { |
Hagrass | 2:248e3594ca61 | 253 | return -2; |
Hagrass | 2:248e3594ca61 | 254 | } |
Hagrass | 2:248e3594ca61 | 255 | |
Hagrass | 2:248e3594ca61 | 256 | /* |
Hagrass | 2:248e3594ca61 | 257 | * Read the content. |
Hagrass | 2:248e3594ca61 | 258 | */ |
Hagrass | 2:248e3594ca61 | 259 | DEBMSG("%s", filename); |
Hagrass | 2:248e3594ca61 | 260 | NEWLINE(); |
Hagrass | 2:248e3594ca61 | 261 | end=false; |
Hagrass | 2:248e3594ca61 | 262 | } |
Hagrass | 2:248e3594ca61 | 263 | /* |
Hagrass | 2:248e3594ca61 | 264 | * Open file. |
Hagrass | 2:248e3594ca61 | 265 | */ |
Hagrass | 2:248e3594ca61 | 266 | |
Hagrass | 2:248e3594ca61 | 267 | readdJpegFileContent(callback_func); |
Hagrass | 2:248e3594ca61 | 268 | // fclose(work.fp); |
Hagrass | 2:248e3594ca61 | 269 | //return -3; |
Hagrass | 2:248e3594ca61 | 270 | |
Hagrass | 2:248e3594ca61 | 271 | |
Hagrass | 2:248e3594ca61 | 272 | |
Hagrass | 2:248e3594ca61 | 273 | /* |
Hagrass | 2:248e3594ca61 | 274 | * Stop taking pictures. |
Hagrass | 2:248e3594ca61 | 275 | */ |
Hagrass | 2:248e3594ca61 | 276 | if(end== true) |
Hagrass | 2:248e3594ca61 | 277 | { |
Hagrass | 2:248e3594ca61 | 278 | fclose(work.fp); |
Hagrass | 2:248e3594ca61 | 279 | cam->stopTakingPictures(); |
Hagrass | 2:248e3594ca61 | 280 | |
Hagrass | 2:248e3594ca61 | 281 | DEBMSG("[%04d]:OK.", cnt); |
Hagrass | 2:248e3594ca61 | 282 | NEWLINE(); |
Hagrass | 2:248e3594ca61 | 283 | m=0; |
Hagrass | 2:248e3594ca61 | 284 | cnt++; |
Hagrass | 2:248e3594ca61 | 285 | //wait(1); |
Hagrass | 2:248e3594ca61 | 286 | //xbee.printf("saved"); |
Hagrass | 2:248e3594ca61 | 287 | } |
Hagrass | 2:248e3594ca61 | 288 | return 0; |
Hagrass | 2:248e3594ca61 | 289 | } |
Hagrass | 2:248e3594ca61 | 290 | //////////////////////////// |
Hagrass | 2:248e3594ca61 | 291 | ///////////////////////// |
Hagrass | 2:248e3594ca61 | 292 | |
Hagrass | 2:248e3594ca61 | 293 | ///////////////////////////////////////////////////// |
Hagrass | 2:248e3594ca61 | 294 | int main(void) { |
Hagrass | 2:248e3594ca61 | 295 | |
Hagrass | 2:248e3594ca61 | 296 | xbee.baud(115200); |
Hagrass | 2:248e3594ca61 | 297 | pc.baud(115200); |
Hagrass | 2:248e3594ca61 | 298 | |
Hagrass | 2:248e3594ca61 | 299 | DEBMSG("Camera module"); |
Hagrass | 2:248e3594ca61 | 300 | NEWLINE(); |
Hagrass | 2:248e3594ca61 | 301 | DEBMSG("Resetting..."); |
Hagrass | 2:248e3594ca61 | 302 | NEWLINE(); |
Hagrass | 2:248e3594ca61 | 303 | wait(1); |
Hagrass | 2:248e3594ca61 | 304 | |
Hagrass | 2:248e3594ca61 | 305 | if (cam1.reset() == 0) { |
Hagrass | 2:248e3594ca61 | 306 | DEBMSG("Reset OK."); |
Hagrass | 2:248e3594ca61 | 307 | NEWLINE(); |
Hagrass | 2:248e3594ca61 | 308 | } else { |
Hagrass | 2:248e3594ca61 | 309 | DEBMSG("Reset fail."); |
Hagrass | 2:248e3594ca61 | 310 | NEWLINE(); |
Hagrass | 2:248e3594ca61 | 311 | error("Reset fail."); |
Hagrass | 2:248e3594ca61 | 312 | } |
Hagrass | 2:248e3594ca61 | 313 | |
Hagrass | 2:248e3594ca61 | 314 | |
Hagrass | 2:248e3594ca61 | 315 | wait(1); |
Hagrass | 2:248e3594ca61 | 316 | cam1.baud(); |
Hagrass | 2:248e3594ca61 | 317 | int j=1; |
Hagrass | 2:248e3594ca61 | 318 | int g=1; |
Hagrass | 2:248e3594ca61 | 319 | while (1) { |
Hagrass | 2:248e3594ca61 | 320 | |
Hagrass | 2:248e3594ca61 | 321 | char fname[64]; |
Hagrass | 2:248e3594ca61 | 322 | // xbee.printf("hello%d\n\r",g); |
Hagrass | 2:248e3594ca61 | 323 | |
Hagrass | 2:248e3594ca61 | 324 | if((end==true)||(j==1)) |
Hagrass | 2:248e3594ca61 | 325 | { |
Hagrass | 2:248e3594ca61 | 326 | |
Hagrass | 2:248e3594ca61 | 327 | snprintf(fname, sizeof(fname) - 1, FILENAME, cnt); |
Hagrass | 2:248e3594ca61 | 328 | j=0; |
Hagrass | 2:248e3594ca61 | 329 | } |
Hagrass | 2:248e3594ca61 | 330 | capture(&cam1, fname); |
Hagrass | 2:248e3594ca61 | 331 | //if (r == 0) { |
Hagrass | 2:248e3594ca61 | 332 | |
Hagrass | 2:248e3594ca61 | 333 | |
Hagrass | 2:248e3594ca61 | 334 | // } |
Hagrass | 2:248e3594ca61 | 335 | //} else { |
Hagrass | 2:248e3594ca61 | 336 | //DEBMSG("[%04d]:NG. (code=%d)", cnt, r); |
Hagrass | 2:248e3594ca61 | 337 | // NEWLINE(); |
Hagrass | 2:248e3594ca61 | 338 | // error("Failure."); |
Hagrass | 2:248e3594ca61 | 339 | //} |
Hagrass | 2:248e3594ca61 | 340 | g++; |
Hagrass | 2:248e3594ca61 | 341 | } |
Hagrass | 2:248e3594ca61 | 342 | } |
Hagrass | 2:248e3594ca61 | 343 | |
Hagrass | 2:248e3594ca61 | 344 | |
Hagrass | 2:248e3594ca61 | 345 | |
Hagrass | 2:248e3594ca61 | 346 | |
Hagrass | 2:248e3594ca61 | 347 |