Oliver Ainhirn
/
Pucher_Bsp_4
beispiel4
Embed:
(wiki syntax)
Show/hide line numbers
main.cpp
00001 #include "mbed.h" 00002 00003 // Instanziierung mit: 00004 /* 00005 HexLeds hexleds(LED1, LED2, LED3, LED4); 00006 00007 // Aufruf der Methoden 00008 main() { 00009 hexleds.eingabe() // einlesen eines Integer-Wertes von der Tastatur mit scanf("%d", &ein); 00010 hexleds.ausgabe() // ausgeben des Integer-Wertes der von der Tastatur eingegeben wurde 00011 hexleds.hexOut() // Ausgabe des Wertes in Hex-Darstellung an den 4 Leds 00012 hexleds.printStatus() // Anzeigen ob Leds ein oder aus 00013 } 00014 */ 00015 00016 00017 class HexLeds 00018 { 00019 private: 00020 BusOut _ledbus; 00021 DigitalOut _pin0; 00022 DigitalOut _pin1; 00023 DigitalOut _pin2; 00024 DigitalOut _pin3; 00025 int _eingabe; 00026 00027 public: 00028 HexLeds(PinName pin0, PinName pin1, PinName pin2, PinName pin3): 00029 _pin0(pin0), 00030 _pin1(pin1), 00031 _pin2(pin2), 00032 _pin3(pin3), 00033 _ledbus(pin0,pin1,pin2,pin3) 00034 00035 { 00036 _pin0=0; 00037 _pin1=0; 00038 _pin2=0; 00039 _pin3=0; 00040 _ledbus = 0; 00041 } 00042 00043 void eingabe(void) 00044 { 00045 bool was = false; 00046 00047 while(was == false) 00048 { 00049 scanf("%d", &_eingabe); 00050 if (_eingabe < 16) 00051 was = true; 00052 } 00053 } 00054 void ausgabe(void) 00055 { 00056 printf("Der Dezimalwert: %d - Der Hexadezimalwert: 0x%X \n", _eingabe, _eingabe); 00057 } 00058 void hexOut(void) 00059 { 00060 _ledbus = _eingabe; 00061 } 00062 void printStatus(void) 00063 { // zum Auslesen entweder (*_pin0).read() oder _pin1->read() 00064 printf("LED1: %d - LED2: %d - LED3: %d - LED4: %d \n", _pin0.read(), _pin1.read(), _pin2.read(), _pin3.read()); 00065 } 00066 00067 00068 00069 }; 00070 00071 HexLeds hexleds(LED1,LED2,LED3,LED4); 00072 00073 //LaufLichtBalken lauflichtbalken(LED1, LED2, LED3, LED4); 00074 //DigitalOut led(LED1); 00075 /* MyLed myled1(LED1); 00076 MyLed myled2(LED2); // Instanzierung des Objects 00077 MyLed myled3(LED3); 00078 MyLed myled4(LED4); 00079 MyLed myled5(p5); 00080 */ 00081 00082 00083 00084 int main() 00085 { 00086 00087 hexleds.eingabe(); // einlesen eines Integer-Wertes von der Tastatur mit scanf("%d", &ein); 00088 hexleds.ausgabe(); // ausgeben des Integer-Wertes der von der Tastatur eingegeben wurde 00089 hexleds.hexOut(); // Ausgabe des Wertes in Hex-Darstellung an den 4 Leds 00090 hexleds.printStatus(); // Anzeigen ob Leds ein oder aus 00091 00092 } 00093 00094
Generated on Fri Jul 29 2022 00:03:36 by 1.7.2