es una versión mejorada que no requiere suiche y da mas informacion

Dependencies:   mbed Pulse1

Fork of CAPTURAS_IRDA by Gustavo Ramirez

Revision:
0:86c0c1652dd4
Child:
1:69f833c768c8
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp	Sat Mar 18 00:59:20 2017 +0000
@@ -0,0 +1,66 @@
+#include "mbed.h"
+#include <Pulse1.h>
+PulseInOut irda(PTD5);// en este puerto se pone el sensor infrarrojo
+
+Serial pc(USBTX, USBRX);
+DigitalOut led(LED1);
+DigitalOut led2(LED2);
+DigitalIn  mode(PTD0);
+int numN[70];//cadena para almacenar todos los tiempos que conforman los bits de datos
+int numP[70];//cadena para almacenar todos los tiempos que conforman los bits de datos
+int dato; // tiempo de cada dato que se lee
+int pul_low;
+int i,j,k,header,proL,proH; 
+int r;       
+int main(){
+Timer t;
+fflush( stdin );
+lop1: header = irda.read_low_us(); 
+       if(header>8000) goto seguir;
+       goto lop1;
+seguir:
+      for(i=0;i<35;++i){
+      if(mode){
+      numN[i] = irda.read_low_us();    //funcion para leer un pulso de caida o bajo en header
+      }
+      if(!mode){
+      numP[i] = irda.read_high_us();    //funcion para leer un pulso de caida o bajo en header
+      }
+        //funcion para leer un pulso de caida o bajo en header
+                       }
+
+       pc.printf("Header=%d \n",header," uS");
+       for(i=0;i<36;++i){
+       pc.printf(",%d, %d, %d \n",numN[i],i,numP[i]);
+       
+           if(numN[i]>8000){
+           pc.printf("\n");
+           pc.printf("espacios=%d\n",i);
+           k=i;
+           proL=0;
+           for(i=0;i<k;++i){
+               proL=proL+numN[i];
+               }
+           proL=proL/k; 
+           pc.printf("promedio_E=%d\n",proL);   
+           wait(3);
+           pc.printf("\n");   
+           
+             if(!mode){
+               for(i=0;i<k-1;++i){
+               if(numP[i]>(2*proL)){
+                   pc.printf("1");
+                                   }   
+               if(numP[i]<(2*proL)){
+                   pc.printf("0");                    
+                                   }
+               }
+               }                
+                              
+           goto lop1;
+           
+           }
+       }   
+ }     
+ 
+       
\ No newline at end of file