![](/media/cache/img/default_profile.jpg.50x50_q85.jpg)
Version 3: Trying to interleave capture and read
Dependencies: ov7670_lib Project_test
main.cpp@8:36adb37e976d, 2020-06-20 (annotated)
- Committer:
- sebbarpar
- Date:
- Sat Jun 20 11:07:07 2020 +0000
- Revision:
- 8:36adb37e976d
- Parent:
- 7:9e4e66a8554e
- Child:
- 9:bfd025b059ab
bu
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
edodm85 | 0:19429e334b75 | 1 | /* |
edodm85 | 0:19429e334b75 | 2 | * Author: Edoardo De Marchi |
edodm85 | 3:b4e0cefc37f6 | 3 | * Date: 07/04/13 |
edodm85 | 0:19429e334b75 | 4 | * Notes: OV7670 + FIFO AL422B camera test |
edodm85 | 0:19429e334b75 | 5 | */ |
edodm85 | 0:19429e334b75 | 6 | |
edodm85 | 0:19429e334b75 | 7 | #include "main.h" |
sebbarpar | 8:36adb37e976d | 8 | #include "EthernetInterface.h" |
edodm85 | 2:bbd557817319 | 9 | #define VGA 307200 //640*480 |
edodm85 | 2:bbd557817319 | 10 | #define QVGA 76800 //320*240 |
edodm85 | 2:bbd557817319 | 11 | #define QQVGA 19200 //160*120 |
sebbarpar | 8:36adb37e976d | 12 | #define lines 120 |
sebbarpar | 8:36adb37e976d | 13 | #define columns 160 |
edodm85 | 2:bbd557817319 | 14 | static char format = ' '; |
edodm85 | 2:bbd557817319 | 15 | static int resolution = 0; |
sebbarpar | 8:36adb37e976d | 16 | EthernetInterface net; |
sebbarpar | 8:36adb37e976d | 17 | UDPSocket sock; |
edodm85 | 0:19429e334b75 | 18 | |
sebbarpar | 8:36adb37e976d | 19 | void ether(){ |
sebbarpar | 8:36adb37e976d | 20 | //net.connect(); |
sebbarpar | 8:36adb37e976d | 21 | const char *ip = net.get_ip_address(); |
sebbarpar | 8:36adb37e976d | 22 | pc.printf("IP address is: %s\n", ip ? ip : "No IP"); |
sebbarpar | 8:36adb37e976d | 23 | sock.open(&net); |
sebbarpar | 8:36adb37e976d | 24 | } |
sebbarpar | 8:36adb37e976d | 25 | |
sebbarpar | 5:4135ec0f88e6 | 26 | |
edodm85 | 0:19429e334b75 | 27 | |
edodm85 | 0:19429e334b75 | 28 | int main() |
sebbarpar | 8:36adb37e976d | 29 | { char fin[]="Finished"; |
sebbarpar | 8:36adb37e976d | 30 | int pixel[160]; |
sebbarpar | 8:36adb37e976d | 31 | int pix[160]; |
sebbarpar | 8:36adb37e976d | 32 | //uint_8 p[160]; |
sebbarpar | 8:36adb37e976d | 33 | ether(); |
sebbarpar | 8:36adb37e976d | 34 | camera.Init('y', QQVGA); |
sebbarpar | 8:36adb37e976d | 35 | pc.printf("\r\nCamera initiated\r\n"); |
sebbarpar | 8:36adb37e976d | 36 | //Start capturing images in black and white |
sebbarpar | 8:36adb37e976d | 37 | t.reset(); |
sebbarpar | 8:36adb37e976d | 38 | while(1){ |
sebbarpar | 8:36adb37e976d | 39 | t.reset(); |
sebbarpar | 5:4135ec0f88e6 | 40 | t.start(); |
sebbarpar | 8:36adb37e976d | 41 | camera.CaptureNext(); |
sebbarpar | 8:36adb37e976d | 42 | pc.printf("\r\nDone in %f\r\n",t.read()); |
sebbarpar | 8:36adb37e976d | 43 | while(camera.CaptureDone() == false); |
sebbarpar | 8:36adb37e976d | 44 | camera.ReadStart(); |
sebbarpar | 8:36adb37e976d | 45 | led1=0; |
sebbarpar | 8:36adb37e976d | 46 | //wait(1); |
sebbarpar | 8:36adb37e976d | 47 | for(int x = 0; x<lines; x++){ |
sebbarpar | 8:36adb37e976d | 48 | for(int j=0; j<columns; j++){ |
sebbarpar | 8:36adb37e976d | 49 | camera.ReadOnebyte(); |
sebbarpar | 8:36adb37e976d | 50 | pixel[j]=camera.ReadOnebyte(); |
sebbarpar | 8:36adb37e976d | 51 | //pc.printf("%d", pixel[j]); |
sebbarpar | 8:36adb37e976d | 52 | } |
sebbarpar | 8:36adb37e976d | 53 | //sock.sendto("192.168.1.4", 1001, pixel, sizeof(pixel)); |
sebbarpar | 8:36adb37e976d | 54 | //pc.printf("%d", a); |
sebbarpar | 5:4135ec0f88e6 | 55 | } |
sebbarpar | 8:36adb37e976d | 56 | //sock.sendto("192.168.1.4", 1001, fin, sizeof(fin)); |
sebbarpar | 8:36adb37e976d | 57 | led1=1; |
sebbarpar | 5:4135ec0f88e6 | 58 | camera.ReadStop(); |
sebbarpar | 8:36adb37e976d | 59 | wait(1); |
sebbarpar | 8:36adb37e976d | 60 | } |
edodm85 | 2:bbd557817319 | 61 | } |