Bulme Codes
You are viewing an older revision! See the latest version
Bsp 1 mit h Datei
Inhalte der main.h:
#include "mbed.h" #include "LED.h" TwoLed twoled1(LED3, LED4); MyLed myled1(LED1); int main() { while (1) { // schalten einer einzelnen LED, mit der Klasse "MyLed" for(int i = 0; i < 5; i++){ myled1.ledOn(); myled1.printStatus(); wait_ms(300); myled1.ledOff(); myled1.printStatus(); wait_ms(300); } // schalten von zwei LEDs, mittels der "TwoLed"-Klasse // fuenfmalige abwechslung von Ein und Ausschaltung der beiden LEDs for(int i = 0; i < 5; i++){ twoled1.ledOn(); twoled1.printStatus(); wait_ms(300); twoled1.ledOff(); twoled1.printStatus(); wait_ms(300); } // fuenfmaliges alternieren der LEDs for(int i = 0; i < 5; i++){ twoled1.ledX(); twoled1.printStatus(); wait_ms(300); } } }
Inhalt der LED.h
#include "mbed.h" class MyLed { public: MyLed(PinName pin) : _pin(pin){ // Initalisierungsliste _pin = 0; // Initalisierung mit 0 } void ledOn(void){ _pin=1; } void ledOff(void){ _pin=0; } void printStatus(void){ printf("Blink! LED is now %d\n", _pin.read()); } private: DigitalOut _pin; }; class TwoLed { public: TwoLed(PinName pin1, PinName pin2) : _pin1(pin1), _pin2(pin2) { // Initalisierungsliste _pin1 = 0; // Initalisierung mit 0 _pin2 = 0; } void ledOn(void){ _pin1=1; _pin2=1; } void ledOff(void){ _pin1=0; _pin2=0; } void ledX(void){ _pin1 = _pin2; _pin2 = !_pin2; } void printStatus(void){ printf("LED Status:\n LED1: %d\n LED2: %d\n", _pin1.read(), _pin2.read()); } private: DigitalOut _pin1, _pin2; };