ELEC2645 (2017/18) / Mbed 2 deprecated el17yw

Dependencies:   mbed

Committer:
RickYu
Date:
Sun Apr 15 17:36:29 2018 +0000
Revision:
3:1a134243e2f0
Parent:
2:421fb0670c5c
Child:
6:46d0caedf217
boom fall;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
RickYu 0:4d3c9411e8f2 1 #include "mbed.h"
RickYu 2:421fb0670c5c 2 #include "Gamepad.h"
RickYu 2:421fb0670c5c 3 #include "N5110.h"
RickYu 2:421fb0670c5c 4 #include "rect.h"
RickYu 3:1a134243e2f0 5 #include "boom.h"
RickYu 2:421fb0670c5c 6 #include "engine.h"
RickYu 0:4d3c9411e8f2 7
RickYu 0:4d3c9411e8f2 8 DigitalOut gpo(D0);
RickYu 0:4d3c9411e8f2 9 DigitalOut led(LED_RED);
RickYu 0:4d3c9411e8f2 10
RickYu 2:421fb0670c5c 11
RickYu 2:421fb0670c5c 12 N5110 lcd(PTC9,PTC0,PTC7,PTD2,PTD1,PTC11);
RickYu 3:1a134243e2f0 13
RickYu 2:421fb0670c5c 14 Gamepad pad;
RickYu 3:1a134243e2f0 15
RickYu 3:1a134243e2f0 16 engine engine;
RickYu 3:1a134243e2f0 17
RickYu 2:421fb0670c5c 18
RickYu 2:421fb0670c5c 19 void init();
RickYu 2:421fb0670c5c 20 void welcome();
RickYu 2:421fb0670c5c 21 void render();
RickYu 2:421fb0670c5c 22
RickYu 2:421fb0670c5c 23
RickYu 2:421fb0670c5c 24
RickYu 0:4d3c9411e8f2 25 int main()
RickYu 0:4d3c9411e8f2 26 {
RickYu 2:421fb0670c5c 27
RickYu 3:1a134243e2f0 28 int fps = 12;
RickYu 2:421fb0670c5c 29
RickYu 2:421fb0670c5c 30 init();
RickYu 2:421fb0670c5c 31 welcome();
RickYu 2:421fb0670c5c 32 render();
RickYu 2:421fb0670c5c 33 wait(1.0f/fps);
RickYu 2:421fb0670c5c 34
RickYu 2:421fb0670c5c 35 while(1){
RickYu 2:421fb0670c5c 36
RickYu 3:1a134243e2f0 37 engine.read_input(pad);
RickYu 3:1a134243e2f0 38 engine.update(pad);
RickYu 2:421fb0670c5c 39 render();
RickYu 2:421fb0670c5c 40 wait(1.0f/fps);
RickYu 2:421fb0670c5c 41 }
RickYu 2:421fb0670c5c 42
RickYu 2:421fb0670c5c 43 }
RickYu 2:421fb0670c5c 44
RickYu 2:421fb0670c5c 45 void init()
RickYu 2:421fb0670c5c 46 {
RickYu 2:421fb0670c5c 47 // need to initialise LCD and Gamepad
RickYu 2:421fb0670c5c 48 lcd.init();
RickYu 2:421fb0670c5c 49 pad.init();
RickYu 2:421fb0670c5c 50
RickYu 2:421fb0670c5c 51
RickYu 2:421fb0670c5c 52 }
RickYu 2:421fb0670c5c 53 void welcome() {
RickYu 2:421fb0670c5c 54
RickYu 2:421fb0670c5c 55 lcd.printString(" TXZ ",0,1);
RickYu 2:421fb0670c5c 56 lcd.printString(" Press Start ",0,4);
RickYu 2:421fb0670c5c 57 lcd.refresh();
RickYu 2:421fb0670c5c 58
RickYu 2:421fb0670c5c 59 // wait flashing LEDs until start button is pressed
RickYu 2:421fb0670c5c 60 while ( pad.check_event(Gamepad::START_PRESSED) == false) {
RickYu 2:421fb0670c5c 61 pad.leds_on();
RickYu 2:421fb0670c5c 62 wait(0.1);
RickYu 2:421fb0670c5c 63 pad.leds_off();
RickYu 2:421fb0670c5c 64 wait(0.1);
RickYu 0:4d3c9411e8f2 65 }
RickYu 2:421fb0670c5c 66 }
RickYu 2:421fb0670c5c 67
RickYu 2:421fb0670c5c 68 void render()
RickYu 2:421fb0670c5c 69 {
RickYu 2:421fb0670c5c 70 // clear screen, re-draw and refresh
RickYu 2:421fb0670c5c 71 lcd.clear();
RickYu 3:1a134243e2f0 72 engine.draw(lcd);
RickYu 2:421fb0670c5c 73 lcd.refresh();
RickYu 2:421fb0670c5c 74 }