frogger game

Dependencies:   4DGL-uLCD-SE MMA8452 SDFileSystem mbed wave_player

Dependents:   C_Assembly

Fork of ECE2035_FroggerGame_SUM2015 by ECE 2035

Committer:
ssong86
Date:
Mon Feb 01 06:38:45 2016 +0000
Revision:
9:f1690719be5c
Parent:
0:7fe3c940e4b5
robofroggergame

Who changed what in which revision?

UserRevisionLine numberNew contents of line
leuyentran 0:7fe3c940e4b5 1 #include "mbed.h"
leuyentran 0:7fe3c940e4b5 2
leuyentran 0:7fe3c940e4b5 3 //Setup a new class for a Shiftbrite RGB LED module
leuyentran 0:7fe3c940e4b5 4 class Shiftbrite
leuyentran 0:7fe3c940e4b5 5 {
leuyentran 0:7fe3c940e4b5 6 public:
leuyentran 0:7fe3c940e4b5 7 Shiftbrite(PinName pin_e, PinName pin_l, PinName pin_do, PinName pin_di, PinName pin_clk);
leuyentran 0:7fe3c940e4b5 8 void write(int red, int green, int blue);
leuyentran 0:7fe3c940e4b5 9
leuyentran 0:7fe3c940e4b5 10 private:
leuyentran 0:7fe3c940e4b5 11 //class sets up the pins
leuyentran 0:7fe3c940e4b5 12 DigitalOut _pin_e;
leuyentran 0:7fe3c940e4b5 13 DigitalOut _pin_l;
leuyentran 0:7fe3c940e4b5 14 SPI _spi;
leuyentran 0:7fe3c940e4b5 15 };
leuyentran 0:7fe3c940e4b5 16
leuyentran 0:7fe3c940e4b5 17 Shiftbrite::Shiftbrite(PinName pin_e, PinName pin_l, PinName pin_do, PinName pin_di, PinName pin_clk)
leuyentran 0:7fe3c940e4b5 18 : _pin_e(pin_e), _pin_l(pin_l), _spi(pin_do, pin_di, pin_clk)
leuyentran 0:7fe3c940e4b5 19 {
leuyentran 0:7fe3c940e4b5 20 // spi set up
leuyentran 0:7fe3c940e4b5 21 _pin_e=0;
leuyentran 0:7fe3c940e4b5 22 _pin_l=0;
leuyentran 0:7fe3c940e4b5 23 _spi.format(16,0);
leuyentran 0:7fe3c940e4b5 24 _spi.frequency(500000);
leuyentran 0:7fe3c940e4b5 25 }
leuyentran 0:7fe3c940e4b5 26
leuyentran 0:7fe3c940e4b5 27 void Shiftbrite::write(int red, int green, int blue)
leuyentran 0:7fe3c940e4b5 28 {
leuyentran 0:7fe3c940e4b5 29 unsigned int low_color=0;
leuyentran 0:7fe3c940e4b5 30 unsigned int high_color=0;
leuyentran 0:7fe3c940e4b5 31 high_color=(blue<<4)|((red&0x3C0)>>6);
leuyentran 0:7fe3c940e4b5 32 low_color=(((red&0x3F)<<10)|(green));
leuyentran 0:7fe3c940e4b5 33 _spi.write(high_color);
leuyentran 0:7fe3c940e4b5 34 _spi.write(low_color);
leuyentran 0:7fe3c940e4b5 35 _pin_l=1;
leuyentran 0:7fe3c940e4b5 36 _pin_e=0;
leuyentran 0:7fe3c940e4b5 37 }