Kenichiro Seto / Mbed 2 deprecated seg7_LED_class

Dependencies:   mbed

Files at this revision

API Documentation at this revision

Comitter:
tjsken
Date:
Fri Mar 13 06:08:26 2015 +0000
Commit message:
7segment LED class

Changed in this revision

main.cpp Show annotated file Show diff for this revision Revisions of this file
mbed.bld Show annotated file Show diff for this revision Revisions of this file
seg7_LED.cpp Show annotated file Show diff for this revision Revisions of this file
seg7_LED.h Show annotated file Show diff for this revision Revisions of this file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp	Fri Mar 13 06:08:26 2015 +0000
@@ -0,0 +1,18 @@
+#include "mbed.h"
+#include "seg7_LED.h"
+
+seg7_LED seg7led(p24, p23, p18, p19, p20, p22, p21);
+
+
+int main(){
+    while(1){
+        for(int i = 0; i < 10; i++){
+            seg7led.disp_num(i);
+            wait(0.5);
+            seg7led.disp_num(i);
+            wait(0.5);
+        }
+    }
+    
+    return 0;
+}
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mbed.bld	Fri Mar 13 06:08:26 2015 +0000
@@ -0,0 +1,1 @@
+http://mbed.org/users/mbed_official/code/mbed/builds/7e07b6fb45cf
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/seg7_LED.cpp	Fri Mar 13 06:08:26 2015 +0000
@@ -0,0 +1,87 @@
+//seg7_LED.cpp
+#include "seg7_LED.h"
+
+#ifdef SEG7_LED_1
+seg7_LED::seg7_LED(PinName a, PinName b, PinName c, PinName d, PinName e, PinName f, PinName g)
+                     : seg1(a), seg2(b), seg3(c), seg4(d), seg5(e), seg6(f), seg7(g){}
+#endif
+
+#ifdef SEG7_LED_2
+seg7_LED::seg7_LED(PinName a, PinName b, PinName c, PinName d, PinName e, PinName f, PinName g, PinName h, PinName i)
+                     : seg1(a), seg2(b), seg3(c), seg4(d), seg5(e), seg6(f), seg7(g), seg8(h), seg9(i){}
+#endif
+
+#ifdef SEG7_LED_3
+seg7_LED::seg7_LED(PinName a, PinName b, PinName c, PinName d, PinName e, PinName f, PinName g, PinName h, PinName i, PinName j)
+                     : seg1(a), seg2(b), seg3(c), seg4(d), seg5(e), seg6(f), seg7(g), seg8(h), seg9(i), seg10(j){}
+#endif
+
+#ifdef SEG7_LED_4
+seg7_LED::seg7_LED(PinName a, PinName b, PinName c, PinName d, PinName e, PinName f, PinName g, PinName h, PinName i, PinName j, PinName k)
+                     : seg1(a), seg2(b), seg3(c), seg4(d), seg5(e), seg6(f), seg7(g), seg8(h), seg9(i), seg10(j), seg11(k){}
+#endif
+
+bool seg7_LED::disp_num(int num)
+{
+    if     (num == 0){seg1=1; seg2=1; seg3=1; seg4=1; seg5=1; seg6=1; seg7=0;}
+    else if(num == 1){seg1=0; seg2=1; seg3=1; seg4=0; seg5=0; seg6=0; seg7=0;}
+    else if(num == 2){seg1=1; seg2=1; seg3=0; seg4=1; seg5=1; seg6=0; seg7=1;}
+    else if(num == 3){seg1=1; seg2=1; seg3=1; seg4=1; seg5=0; seg6=0; seg7=1;}
+    else if(num == 4){seg1=0; seg2=1; seg3=1; seg4=0; seg5=0; seg6=1; seg7=1;}
+    else if(num == 5){seg1=1; seg2=0; seg3=1; seg4=1; seg5=0; seg6=1; seg7=1;}
+    else if(num == 6){seg1=1; seg2=0; seg3=1; seg4=1; seg5=1; seg6=1; seg7=1;}
+    else if(num == 7){seg1=1; seg2=1; seg3=1; seg4=0; seg5=0; seg6=0; seg7=0;}
+    else if(num == 8){seg1=1; seg2=1; seg3=1; seg4=1; seg5=1; seg6=1; seg7=1;}
+    else if(num == 9){seg1=1; seg2=1; seg3=1; seg4=1; seg5=0; seg6=1; seg7=1;}
+    else             {seg1=0; seg2=0; seg3=0; seg4=0; seg5=0; seg6=0; seg7=0; return false;}
+
+    return true;        
+}
+
+
+
+/*
+bool seg7_LED::disp_period(bool period)
+{
+    if(period == true)
+}
+*/
+
+/*
+seg7_LED::seg7_LED(PinName a, PinName b, PinName c, PinName d, PinName e, PinName f, PinName g, PinName h, PinName i, PinName j)
+                     : seg1(a), seg2(b), seg3(c), seg4(d), seg5(e), seg6(f), seg7(g), seg8(h), seg9(i), seg10(j){}
+
+seg7_LED::seg7_LED(PinName a, PinName b, PinName c, PinName d, PinName e, PinName f, PinName g, PinName h, PinName i, PinName j, PinName k)
+                     : seg1(a), seg2(b), seg3(c), seg4(d), seg5(e), seg6(f), seg7(g), seg8(h), seg9(i), seg10(j), seg11(k){}
+    
+seg7_LED::seg7_LED(PinName a, PinName b, PinName c, PinName d, PinName e, PinName f, PinName g, PinName h, PinName i, PinName j, PinName k, PinName l)
+                     : seg1(a), seg2(b), seg3(c), seg4(d), seg5(e), seg6(f), seg7(g), seg8(h), seg9(i), seg10(j), seg11(k), seg12(l){}
+*/
+                 
+//set the number, priod state, and LEDnumber
+/*
+void seg7_LED::seg7_disp(int num, char str = ' ')//, int led = 0)
+{
+    if     (num == 0){seg1=1; seg2=1; seg3=1; seg4=1; seg5=1; seg6=1; seg7=0;}
+    else if(num == 1){seg1=0; seg2=1; seg3=1; seg4=0; seg5=0; seg6=0; seg7=0;}
+    else if(num == 2){seg1=1; seg2=1; seg3=0; seg4=1; seg5=1; seg6=0; seg7=1;}
+    else if(num == 3){seg1=1; seg2=1; seg3=1; seg4=1; seg5=0; seg6=0; seg7=1;}
+    else if(num == 4){seg1=0; seg2=1; seg3=1; seg4=0; seg5=0; seg6=1; seg7=1;}
+    else if(num == 5){seg1=1; seg2=0; seg3=1; seg4=1; seg5=0; seg6=1; seg7=1;}
+    else if(num == 6){seg1=1; seg2=0; seg3=1; seg4=1; seg5=1; seg6=1; seg7=1;}
+    else if(num == 7){seg1=1; seg2=1; seg3=1; seg4=0; seg5=0; seg6=0; seg7=0;}
+    else if(num == 8){seg1=1; seg2=1; seg3=1; seg4=1; seg5=1; seg6=1; seg7=1;}
+    else if(num == 9){seg1=1; seg2=1; seg3=1; seg4=1; seg5=0; seg6=1; seg7=1;}
+    else             {seg1=0; seg2=0; seg3=0; seg4=0; seg5=0; seg6=0; seg7=0;}
+    
+    if   (str == '.'){seg8 = 1;}
+    else             {seg8 = 0;}
+    
+    //if     (led == 1){seg9 = 1; seg10 = 0; seg11 = 0; seg12 = 0;}
+    //else if(led == 2){seg9 = 0; seg10 = 1; seg11 = 0; seg12 = 0;}
+    //else if(led == 3){seg9 = 0; seg10 = 0; seg11 = 1; seg12 = 0;}
+    //else if(led == 4){seg9 = 0; seg10 = 0; seg11 = 0; seg12 = 1;}    
+    
+    return;        
+}
+*/
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/seg7_LED.h	Fri Mar 13 06:08:26 2015 +0000
@@ -0,0 +1,64 @@
+//seg7_LED.h
+
+/*
+      a
+     ---
+  f |   | b
+     -g-
+  e |   | c
+     ---  .h
+      d
+*/
+
+
+#ifndef SEG7_LED
+#define SEG7_LED
+
+
+#define SEG7_LED_1
+//#define SEG7_LED_2
+//#define SEG7_LED_3
+//#define SEG7_LED_4
+
+#include "mbed.h"
+
+class seg7_LED
+{
+    #ifdef SEG7_LED_1
+    private:
+        DigitalOut seg1, seg2, seg3, seg4, seg5, seg6, seg7;
+    public:
+        //a~g:number(1LED)
+        seg7_LED(PinName a, PinName b, PinName c, PinName d, PinName e, PinName f, PinName g);        
+    #endif
+    
+    #ifdef SEG7_LED_2
+    private:
+        DigitalOut seg1, seg2, seg3, seg4, seg5, seg6, seg7, seg8, seg9;
+    public:
+        //a~g:number, h~i:common (2LEDs)
+        seg7_LED(PinName a, PinName b, PinName c, PinName d, PinName e, PinName f, PinName g, PinName h, PinName i);
+    #endif
+    
+    #ifdef SEG7_LED_3
+    private:
+        DigitalOut seg1, seg2, seg3, seg4, seg5, seg6, seg7, seg8, seg9, seg10;
+    public:
+        //a~g:number, h~j:common (3LEDs)
+        seg7_LED(PinName a, PinName b, PinName c, PinName d, PinName e, PinName f, PinName g, PinName h, PinName i, PinName j);
+    #endif
+    
+    #ifdef SEG7_LED_4
+    private:
+        DigitalOut seg1, seg2, seg3, seg4, seg5, seg6, seg7, seg8, seg9, seg10, seg11;
+    public:
+        //a~g:number, h~k:common (4LEDs)
+        seg7_LED(PinName a, PinName b, PinName c, PinName d, PinName e, PinName f, PinName g, PinName h, PinName i, PinName j, PinName k);        
+    #endif
+    
+    public:
+        bool disp_num(int num);
+};
+
+
+#endif
\ No newline at end of file