Eray Ozturk / Mbed 2 deprecated QuadBrightness

Dependencies:   mbed

main.cpp

Committer:
diffstorm
Date:
2010-10-22
Revision:
1:8012a60a982d
Parent:
0:655158a7c194
Child:
2:d955fe04abd9

File content as of revision 1:8012a60a982d:

/*
    A featured example for beginners

    Control brightnesses of all 4 LEDs on the board using +/- keys for increment or decrement, 1/2/3/4 keys to select LED through your computer

    Eray Ozturk | erayozturk1@gmail.com
*/

#include "mbed.h"

// The mbed board can communicate with a host PC through a "USB Virtual Serial Port" over the same USB cable that is used for programming.
// If you use Windows, you need a driver. http://mbed.org/media/downloads/drivers/mbedWinSerial_16466.exe
// With your mbed plugged in, and no explorer drive windows open, run the installer.
// The default baud rate is 9600
Serial pc(USBTX, USBRX); // tx, rx

Ticker flipper;
PwmOut led1(LED1);
PwmOut led2(LED2);
PwmOut led3(LED3);
PwmOut led4(LED4);

float brightness = 0.0;
float brigh_bckp;

int SelectedLED = 1;
int Selec_bckp;

void callback() {
    if (Selec_bckp!=SelectedLED || brigh_bckp!=brightness) {
        pc.printf("*brightness%u=%f\n",SelectedLED,brightness);

        Selec_bckp = SelectedLED;
        brigh_bckp = brightness;
    }
}

void SetBright() {
    switch (SelectedLED) {
        case 1:
            led1 = brightness;
            break;
        case 2:
            led2 = brightness;
            break;
        case 3:
            led3 = brightness;
            break;
        case 4:
            led4 = brightness;
            break;
        default:
            SelectedLED = 1;
    }
}

int main() {
    pc.printf("\n## Quad Brightness Controller ##\n");
    pc.printf("Press '+/-' to change selected LED's brightness\n");
    pc.printf("Use '1'-'4' keys to change selected LED\n");

    flipper.attach(&callback, 1.0); // call flip() in every 1 sec

    while (true) {
        if (pc.readable()) {
            char c = pc.getc();
            if ((c == '+') && (brightness < 0.5)) {
                brightness += 0.01;
                SetBright();
            }
            if ((c == '-') && (brightness > 0.0)) {
                brightness -= 0.01;
                SetBright();
            }
            if (c == '1') {
                pc.printf("Led1 selected\n");
                SelectedLED = 1;
                brightness = 0.0;
            }
            if (c == '2') {
                pc.printf("Led2 selected\n");
                SelectedLED = 2;
                brightness = 0.0;
            }
            if (c == '3') {
                pc.printf("Led3 selected\n");
                SelectedLED = 3;
                brightness = 0.0;
            }
            if (c == '4') {
                pc.printf("Led4 selected\n");
                SelectedLED = 4;
                brightness = 0.0;
            }
        }
    }
}