Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
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
}