TVZ2020 / Mbed OS Semafor_odbrojavanje

SegDisplay.cpp

Committer:
ssunara
Date:
2021-05-02
Revision:
0:691f916fe587

File content as of revision 0:691f916fe587:

#include "SegDisplay.h"
BusOut Seg1(PB_4,PB_10,PA_8,PA_9,PC_7,PB_6,PA_7,PB_9); // A,B,C,D,E,F,G,DP
void SegInit(void)
{
    Seg1=SegConvert(0); //Inicijalizacija
}
char SegConvert(int SegValue)   //funkcija za konverziju int varijable u niz bitova za ispis na 7 seg displayu
{
    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
        case 10 :
            SegByte = 0x80;
            break; // 1 0 0 0 0 0 0 0 binary
    }
    return SegByte;
}