Conversor de BCD a siete segmentos

Dependents:   Nucleo_blink_led voltimetrofuncional

Revision:
1:ad0edab33530
Parent:
0:3d7ebc7de009
--- a/DECO.cpp	Sat Aug 12 21:17:45 2017 +0000
+++ b/DECO.cpp	Sat Aug 19 21:57:50 2017 +0000
@@ -1,23 +1,48 @@
+
+
+
 # include "DECO.h"
-#include "mbed.h"
+
+int SEG[16]= {0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x58,0x00,0x18,0x08,0x03,0x0b,0x23,0x4f,0x20};
 
-int anod[16]={0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x58,0x00,0x18,0x08,0x03,0x0b,0x23,0x4f,0x20};
-int sieteseg::entrada(PinName a,PinName b,PinName c,PinName d)
-{
-    BusIn dip (a,b,c,d);
-    dipSw= dip.read();
-    return dipSw;
+/*int anodo::entrada(PinName a,PinName b, PinName c,PinName d)
+    {
+    BusIn dip(a,b,c,d);
+    dipp= dip.read();
+    return dipp;
+    }*/
     
-}
- void sieteseg::Visual (PinName a,PinName b,PinName c,PinName d,PinName e,PinName f,PinName g)
- {
+    
+void anodo::visual (PinName a,PinName b,PinName c,PinName d,PinName e,PinName f,PinName g)
+    {
         _a=a;_b=b;_c=c;_d=d;_e=e;_f=f;_g=g; 
         
-         }
-    void sieteseg::bcd (int number)
+    }
+         
+         
+void anodo:: Disp(int number)
+    {
+    BusOut display (_g,_f,_e,_d,_c,_b,_a);
+    display=SEG[number];
+
+    }
+    
+    
+void anodo::ConfEn(PinName one, PinName two,int uni,int dec,int time)
     {
-        BusOut display (_g,_f,_e,_d,_c,_b,_a);
-        display=anod[number];
+  DigitalOut Edec(one);
+  DigitalOut Euni(two);
+
+    for(int u=0; u<time; u++)
+        {
+        Edec=1;
+        Euni=0;
+        Disp(uni);
+        wait(0.005);
+        
+        Edec=0;
+        Euni=1;
+        Disp(dec);
+        wait(0.005);
+        }
     }
-        
-