Bulme Codes

Beispiel 3

Beispiel 3: Erzeugen Sie die Klasse HexLeds mit einem Konstruktor für vier Leds und folgenden Methoden:

http://ec2-52-211-146-247.eu-west-1.compute.amazonaws.com:7829/#user_1529342317056

#include "mbed.h"

class HexLeds {
    public:
        HexLeds(PinName pin1, PinName pin2, PinName pin3, PinName pin4) : 
        _pin1(pin1), 
        _pin2(pin2), 
        _pin3(pin3),
        _pin4(pin4), 
        _LedBus(pin1, pin2, pin3, pin4) {   // Initalisierungsliste
        
            _pin1 = 0;                     // Initalisierung mit 0
            _pin2 = 0;
            _pin3 = 0;
            _pin4 = 0;
            _LedBus = 0;
        }
        
        void eingabe(void){
            int temp = 0;
            
            scanf ("%d", &temp);
            
            if(temp < 16)
                _Hexwert = temp;
            else
                _Hexwert = 0;
            
        }
        
        void ausgabe(void){
            printf("Wert ist: %d\n", _Hexwert);
            
        }
        
        void hexOut(void){
            _LedBus = _Hexwert;
            
        }
        
        void printStatus(void){
            printf("LED Status:\n LED1: %d\n LED2: %d\n LED3: %d\n LED4: %d\n", 
            _pin1.read(), _pin2.read(), _pin3.read(), _pin4.read());
            
        }

        
    private:
        BusOut _LedBus;
        DigitalOut _pin1;
        DigitalOut _pin2;
        DigitalOut _pin3;
        DigitalOut _pin4;
        int _Hexwert;
};

// Instanziierung mit:
HexLeds hexleds(LED1, LED2, LED3, LED4);
 
// Aufruf der Methoden
int main() {
   hexleds.eingabe();     // einlesen eines Integer-Wertes von der Tastatur mit scanf("%d", &ein);
   hexleds.ausgabe();     // ausgeben des Integer-Wertes der von der Tastatur eingegeben wurde
   hexleds.hexOut();      // Ausgabe des Wertes in Hex-Darstellung an den 4 Leds
   hexleds.printStatus(); // Anzeigen ob Leds ein oder aus
}



All wikipages