wu

Dependencies:   mbed-rtos mbed

Fork of Boboobooov4 by kao yi

Revision:
19:4869b10a962e
Parent:
17:3dac99cf2b89
--- a/camera_api.cpp	Mon Jun 30 07:01:58 2014 +0000
+++ b/camera_api.cpp	Wed Jul 02 03:23:07 2014 +0000
@@ -1,18 +1,21 @@
 #include "mbed.h"
 #include "camera_api.h"
-
+#include "TFC.h"
 #define clk 2  //ms
+#define task_ma_time
+#ifdef task_ma_time
+DigitalOut cam_p(PTE5); 
+#endif
 
 BX_camera::BX_camera(int p)
 {
-
+ 
     line_CamR = new FastAnalogIn(PTD5);
     line_CamL=   new FastAnalogIn(PTD6,0);
     cam_clk=new DigitalOut(PTE1);
     si=new DigitalOut(PTD7);
     padding = p;
 }
-
 int BX_camera::black_centerR(void)
 {
 
@@ -128,95 +131,134 @@
 
 
 
+ 
 void BX_camera::read(void)
 {
-
+ 
     w_f_vL=0x0000;
     b_f_vL=0xffff;
-
+ 
     w_f_vR=0x0000;
     b_f_vR=0xffff;
-
-
-
-
+ 
+ 
+     line_CamR->enable();
+ 
     *si=1;
     *cam_clk=1;
-
+ 
     wait_us(30);   // tune here
     *si=0;
     *cam_clk=0;
-
-
-
-    line_CamR->enable();
-    line_CamL->enable();
-
-
+ 
+ 
+   
+    
+ 
+ 
     //input 128 //both
-
+ 
     for(int i=0; i<128; i++) {
         *cam_clk=1;
         wait_us(5);
-
-
+ 
+ 
         line_imageR[i]=line_CamR->read_u16();
-        line_imageL[i]=line_CamL->read_u16();
-
+  
+      
+      
+       
+ 
         //  big small
         if(line_imageR[i] > w_f_vR)
             w_f_vR=line_imageR[i];
         else if(line_imageR[i] < b_f_vR )
             b_f_vR = line_imageR[i];
-
-
+ 
+ 
+ 
+ 
+ 
+        *cam_clk=0;
+        wait_us(5);
+ 
+ 
+    }
+   line_CamR->disable();
+ /*
+  *si=1;
+    *cam_clk=1;
+ 
+    wait_us(30);   // tune here
+    *si=0;
+    *cam_clk=0;
+ 
+ 
+    
+    cam_p=1;
+    line_CamL->enable();
+     for(int i=0; i<128; i++) {
+        *cam_clk=1;
+        wait_us(5);
+ 
+ 
+    
+  
+      
+      
+        line_imageL[i]=line_CamL->read_u16();
+ 
+        //  big small
+     
+ 
         if(line_imageL[i] > w_f_vL)
             w_f_vL=line_imageL[i];
         else if(line_imageL[i] < b_f_vL )
             b_f_vL = line_imageL[i];
-
-
-
-
+ 
+ 
+ 
+ 
         *cam_clk=0;
         wait_us(5);
-
-
+ 
+ 
     }
-
-
-    line_CamR->enable();
-    line_CamL->enable();
-
-
+    
+    
+   
+  
+    line_CamL->disable();
+     cam_p=0; 
+ */
     //filter L R   //may change
-
+ 
     for(int i=0; i<128; i++) {
-
-
+ 
+ 
         if( (line_imageR[i]-b_f_vR) < (w_f_vR - line_imageR[i] )    )
             sign_line_imageR[i]=' ';
         else
             sign_line_imageR[i]='O';
-
-
+ 
+ 
         if( (line_imageL[i]-b_f_vL) < (w_f_vL - line_imageL[i] )    )
             sign_line_imageL[i]=' ';
         else
             sign_line_imageL[i]='O';
-
-
-
-
-
+ 
+ 
+ 
+ 
+ 
         if(i==0) {
             sign_line_imageR[i]='X';
             sign_line_imageL[i]='X';
         }
-
-
+ 
+ 
     }
-
-
-
+ 
+ 
+ 
 }
\ No newline at end of file