SEARCH
TOOLBOX
LANGUAGES
modified on 17 September 2014 at 18:13 ••• 14,988 views

06-01 SevenSegCounter

From Manuals

(Difference between revisions)
Jump to: navigation, search
Support (Talk | contribs)
(Created page with 'This example displays a count 0-9 on a seven segment display. /* Program Example 6.1: seven-segment display counter …')
Newer edit →

Revision as of 15:52, 14 August 2014

This example displays a count 0-9 on a seven segment display.

/* Program Example 6.1: seven-segment display counter
                                                              */
#include "mbed.h"

BusOut Seg1(D0,D1,D2,D3,D4,D5,D6,D7);   // A,B,C,D,E,F,G,DP
char SegConvert(char SegValue);         // function prototype
char A=0;                               // declare variables A and B
char B;

int main() {                            // main program
  while (1) {                           // infinite loop
    B=SegConvert(A);                    // Call function to return B
    Seg1=B;                             // Output B
    A++;                                // increment A
    if (A>0x09){                        // if A > 9 reset to zero
          A=0;
       }
    wait(0.5);                          // delay 500 milliseconds
  }
}

char SegConvert(char SegValue) {        // function 'SegConvert'
  char SegByte=0x00;
  switch (SegValue) {                   //DP G F E D C B A
    case 0 : SegByte = 0x3F;break;      // 0 0 1 1 1 1 1 1 binary
    case 1 : SegByte = 0x06;break;      // 0 0 0 0 0 1 1 0 binary
    case 2 : SegByte = 0x5B;break;      // 0 1 0 1 1 0 1 1 binary
    case 3 : SegByte = 0x4F;break;      // 0 1 0 0 1 1 1 1 binary
    case 4 : SegByte = 0x66;break;      // 0 1 1 0 0 1 1 0 binary
    case 5 : SegByte = 0x6D;break;      // 0 1 1 0 1 1 0 1 binary
    case 6 : SegByte = 0x7D;break;      // 0 1 1 1 1 1 0 1 binary
    case 7 : SegByte = 0x07;break;      // 0 0 0 0 0 1 1 1 binary
    case 8 : SegByte = 0x7F;break;      // 0 1 1 1 1 1 1 1 binary
    case 9 : SegByte = 0x6F;break;      // 0 1 1 0 1 1 1 1 binary
  }
    return SegByte;
}



File:BAM210 06 01 SCH.png
Schematic for example 06-01