Adam Kumpf / Mbed 2 deprecated 2010_01_02_KnightRiderLights

Dependencies:   mbed

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers main.cpp Source File

main.cpp

00001 #include "mbed.h"
00002 
00003 PwmOut myled1(LED1);
00004 PwmOut myled2(LED2);
00005 PwmOut myled3(LED3);
00006 PwmOut myled4(LED4);
00007 
00008 // Knight Rider lights.
00009 // Smoothly transistion between the 4 LEDs to test out the mbed. :)
00010 int main() {
00011     float rate = 0.002;
00012     float endHangtime = 0.1;
00013     float brightness = 0.9;
00014     int i = 0;
00015     while(1) {
00016         for(i=0; i<=100; i++){
00017             myled1 = (100-i)/100.0*brightness;
00018             myled2 = i/100.0*brightness;
00019             wait(rate);
00020         }
00021         for(i=0; i<=100; i++){
00022             myled2 = (100-i)/100.0*brightness;
00023             myled3 = i/100.0*brightness;
00024             wait(rate);
00025         }
00026         for(i=0; i<=100; i++){
00027             myled3 = (100-i)/100.0*brightness;
00028             myled4 = i/100.0*brightness;
00029             wait(rate);
00030         }
00031         // all the way to one side, briefly pause to exagerate.
00032         wait(endHangtime);
00033         for(i=0; i<=100; i++){
00034             myled4 = (100-i)/100.0*brightness;
00035             myled3 = i/100.0*brightness;
00036             wait(rate);
00037         }
00038         for(i=0; i<=100; i++){
00039             myled3 = (100-i)/100.0*brightness;
00040             myled2 = i/100.0*brightness;
00041             wait(rate);
00042         }
00043         for(i=0; i<=100; i++){
00044             myled2 = (100-i)/100.0*brightness;
00045             myled1 = i/100.0*brightness;
00046             wait(rate);
00047         }
00048         // all the way to other side, briefly pause to exagerate.
00049         wait(endHangtime);
00050     }
00051 }