Oliver Ainhirn
/
Pucher_Bsp_1
Beispiel1
main.cpp
- Committer:
- corsa1600
- Date:
- 2019-02-04
- Revision:
- 0:57e2de37f8d5
File content as of revision 0:57e2de37f8d5:
#include "mbed.h" /********Beispiel 1********************* ledOn() // beide Leds einschalten ledOff() // beide Leds ausschalten ledX() // beide Leds gegengleich schalten printStatus() // Anzeigen ob Leds ein oder aus ******************************/ /**********Beispiel 2*********************** * //lauflicht() D1 D2 D3 D4 - - - - Ein Durchgang dauert 2 sec X - - - - X - - - - X - - - - X - - - - X=ON - = off *********************************/ /***********Beispiel 3********************** * //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 **********************************/ class TwoLeds { public: TwoLeds(PinName pin, PinName pin2 ) : _pin(pin) , _pin2(pin2) // initialisierungsliste ( muss gleich heissen wie der Konstruktor ) { _pin=0; // initalisierung mit 0 _pin2=0; } void ledOn(void) { _pin=1; _pin2=1; } void ledOff(void) { _pin=0; _pin2=0; } void ledX(void) { if (_pin.read() == 1) { _pin= 0; _pin2 =1; } else { _pin= 1; _pin2= 0; } } void printStatus(void) { printf("Status Read:\nLED1 is now %d\nLED2 is now %d\n\n", _pin.read(), _pin2.read()); // printf("Read LED is now %d\n", _pin2.read()); } private: DigitalOut _pin; // _steht im Namen für privat, am Anfang oder am ende DigitalOut _pin2; }; TwoLeds twoleds(LED1, LED2); //DigitalOut led(LED1); /* MyLed myled1(LED1); MyLed myled2(LED2); // Instanzierung des Objects MyLed myled3(LED3); MyLed myled4(LED4); MyLed myled5(p5); */ int main() { while (1) { for ( int i=0; i<3; i++) { twoleds.ledOn(); // beide Leds einschalten twoleds.printStatus(); // Anzeigen ob Leds ein oder aus wait_ms(2000); twoleds.ledOff(); // beide Leds ausschalten twoleds.printStatus(); // Anzeigen ob Leds ein oder aus wait_ms(2000); } for ( int i=0; i<5; i++) { twoleds.ledX(); // beide Leds gegengleich schalten twoleds.printStatus(); // Anzeigen ob Leds ein oder aus wait_ms(2000); } } }