FSST - Hardwarenahe Programmierung

Beispiele zu Leds und Klassen

Inhalt

Schreiben zu jedem Beispiel eine entsprechende Klassen-Implementation im

Veröffentlichen Sie die Dateien/Bibliothek und schreiben Sie einen WIKI-Eintag mit kurzer Programmbeschreibung.

Beispiel 1: Erzeugen Sie die Klasse TwoLeds mit einem Konstruktor für zwei Leds und folgenden Methoden:

// Instanziierung mit:
TwoLeds twoleds(LED1, LED2);

// Aufruf der Methoden
main() {
   twoleds.ledOn();       // beide Leds einschalten
   twoleds.ledOff();      // beide Leds ausschalten
   twoleds.ledX();        // beide Leds gegengleich schalten
   twoleds.printStatus(); // Anzeigen ob Leds ein oder aus
}

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

// Instanziierung mit:
FourLeds fourleds(LED1, LED2, LED3, LED4);
 
// Aufruf der Methoden
main() {
   fourleds.lauflicht();       
/*********************************
    D1  D2  D3  D4
    -   -   -   -       Ein Durchgang dauert 2 sec
    X   -   -   -
    -   X   -   - 
    -   -   X   -
    -   -   -   X
    -   -   -   -		X=ON  - = off
*********************************/
   fourleds.lauflichtbalken();
/*********************************
    D1  D2  D3  D4
    -   -   -   -       Ein Durchgang dauert 2 sec
    X   -   -   -
    X   X   -   - 
    X   X   X   -
    X   X   X   X
    -   -   -   -
    X   X   X   X         X=ON  - = off
**********************************/
}

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

// Instanziierung mit:
HexLeds hexleds(LED1, LED2, LED3, LED4);
 
// Aufruf der Methoden
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
}

Anm.: Überprüfen Sie ob der eingebene Wert zwischen 0 und 15 liegt.

Beispiel 4: Erzeugen Sie die Klasse Bankomat, mit folgenden Methoden:

random()         // erzeugen eines zufälligen 4-stelligen Pins 
showPin()        // zeigt den Pin-Code an den Leds an
int checkPin()   // Überprüft eine Eingabe mit dem Pin und gibt 1 zurück wenn gleich, sonst 0

Beispiel 5: Erzeugen Sie eine Klasse MyPwm und einer Led an einem PWM-Pin und der folgenden Funktionen

dimUp()       // Led in 10er-Schritten einschalten
dimDown()     // Led in 10er-Schritten ausschalten
printStatus() // Anzeigen der Led-Werte

Beispiel 6: Erzeugen Sie eine Klasse RGBLed und drei Eingängen und simulieren Sie diese mit drei Leds im mbed-Simulator an den entsprechenden PWM-Pins und der folgenden Funktionen

write(float red,float green, float blue)           // setzten des Farbwerts
writeHex(uint8_t red,uint8_t green, uint8_t blue)  // setzten des Farbwerts mit 0...255

Beispiel 7: Wie Beispiel 2 nur verwenden Sie in der Klassen BusOut anstelle der vier Leds.


All wikipages