Game

Dependencies:   mbed

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers LEDs.cpp Source File

LEDs.cpp

00001 #include "LEDs.h"
00002 
00003 LEDs::LEDs()
00004 {
00005 }
00006 
00007 LEDs::~LEDs()
00008 {
00009 }
00010 
00011 
00012 void LEDs::Speed(bool leds_on, float speed, float max_speed, Gamepad &Device) //The speed is displayed on the LEDs
00013 {
00014     if(leds_on == true) { //If the setting for LEDs is on
00015         float mapped_speed = 3 * speed / max_speed; //Maps the speed so that mapped_speed is between 0 and 3
00016 
00017         if(mapped_speed < 1) {
00018             Device.led(1,0); //Red LED is off
00019             Device.led(2,0); //Yellow LED is off
00020             Device.led(3, mapped_speed); //Green LED is on and brightness is PWM controlled
00021         } else if (mapped_speed >= 1 && mapped_speed < 2) {
00022             Device.led(1,0); //Red LED is off
00023             Device.led(2, (mapped_speed - 1)); //Yellow LED is on and the brightness is PWM controlled
00024             Device.led(3,1); //Green LED is on
00025         } else if (mapped_speed >= 2 && mapped_speed < 3) {
00026             Device.led(1, (mapped_speed - 2)); //Red LED is on and the brightness is PWM controlled
00027             Device.led(2,1);//Yellow LED is on
00028             Device.led(3,1);//Green LED is on
00029         }
00030     }
00031 
00032 }
00033 
00034 void LEDs::Start_Sequence(bool leds_on,  int state, Gamepad &Device) //LED count down sequence
00035 {
00036     if(leds_on == true) { //If the LED setting is on
00037         if(state == 2) {
00038             //Sets both sets of LEDs to Red
00039             Device.led(1,1);
00040             Device.led(2,0);
00041             Device.led(3,0);
00042             Device.led(4,1);
00043             Device.led(5,0);
00044             Device.led(6,0);
00045         } else if(state == 1) {
00046             //Sets both sets of LEDs to Orange
00047             Device.led(1,0);
00048             Device.led(2,1);
00049             Device.led(3,0);
00050             Device.led(4,0);
00051             Device.led(5,1);
00052             Device.led(6,0);
00053         } else if(state == 0) {
00054             //Sets both sets of LEDs to Green
00055             Device.led(1,0);
00056             Device.led(2,0);
00057             Device.led(3,1);
00058             Device.led(4,0);
00059             Device.led(5,0);
00060             Device.led(6,1);
00061         }
00062     }
00063 }
00064 
00065 void LEDs::Clear(Gamepad &Device) //Clears all the LEDs so they are all off
00066 {
00067     Device.led(1,0);
00068     Device.led(2,0);
00069     Device.led(3,0);
00070     Device.led(4,0);
00071     Device.led(5,0);
00072     Device.led(6,0);
00073 }