ELEC2645 (2017/18) / Mbed 2 deprecated el17yw

Dependencies:   mbed

Committer:
RickYu
Date:
Mon Apr 23 21:10:55 2018 +0000
Revision:
11:7027f69672fc
Parent:
9:d217a636c18d
Child:
18:78001ecadcb2
enhance the log in surface

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 6:46d0caedf217 6 #include "money.h"
RickYu 2:421fb0670c5c 7 #include "engine.h"
RickYu 0:4d3c9411e8f2 8
RickYu 0:4d3c9411e8f2 9 DigitalOut gpo(D0);
RickYu 0:4d3c9411e8f2 10 DigitalOut led(LED_RED);
RickYu 0:4d3c9411e8f2 11
RickYu 2:421fb0670c5c 12
RickYu 2:421fb0670c5c 13 N5110 lcd(PTC9,PTC0,PTC7,PTD2,PTD1,PTC11);
RickYu 3:1a134243e2f0 14
RickYu 2:421fb0670c5c 15 Gamepad pad;
RickYu 3:1a134243e2f0 16
RickYu 3:1a134243e2f0 17 engine engine;
RickYu 3:1a134243e2f0 18
RickYu 2:421fb0670c5c 19
RickYu 2:421fb0670c5c 20 void init();
RickYu 2:421fb0670c5c 21 void welcome();
RickYu 2:421fb0670c5c 22 void render();
RickYu 2:421fb0670c5c 23
RickYu 2:421fb0670c5c 24
RickYu 2:421fb0670c5c 25
RickYu 0:4d3c9411e8f2 26 int main()
RickYu 0:4d3c9411e8f2 27 {
RickYu 2:421fb0670c5c 28
RickYu 11:7027f69672fc 29
RickYu 2:421fb0670c5c 30 init();
RickYu 2:421fb0670c5c 31 welcome();
RickYu 2:421fb0670c5c 32 render();
RickYu 11:7027f69672fc 33
RickYu 2:421fb0670c5c 34
RickYu 2:421fb0670c5c 35 while(1){
RickYu 2:421fb0670c5c 36
RickYu 3:1a134243e2f0 37 engine.read_input(pad);
RickYu 11:7027f69672fc 38 engine.update(pad,lcd);
RickYu 2:421fb0670c5c 39 render();
RickYu 9:d217a636c18d 40 wait(0.1);
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 7:1964f649676e 47 //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 11:7027f69672fc 55 lcd.printString(" How to be",0,0);
RickYu 11:7027f69672fc 56 lcd.printString(" A",0,1);
RickYu 11:7027f69672fc 57 lcd.printString(" Millionaire",0,2);
RickYu 2:421fb0670c5c 58 lcd.printString(" Press Start ",0,4);
RickYu 2:421fb0670c5c 59 lcd.refresh();
RickYu 2:421fb0670c5c 60
RickYu 7:1964f649676e 61 //LEDs keep flashing until start button is pressed
RickYu 2:421fb0670c5c 62 while ( pad.check_event(Gamepad::START_PRESSED) == false) {
RickYu 2:421fb0670c5c 63 pad.leds_on();
RickYu 2:421fb0670c5c 64 wait(0.1);
RickYu 2:421fb0670c5c 65 pad.leds_off();
RickYu 2:421fb0670c5c 66 wait(0.1);
RickYu 0:4d3c9411e8f2 67 }
RickYu 2:421fb0670c5c 68 }
RickYu 2:421fb0670c5c 69
RickYu 2:421fb0670c5c 70 void render()
RickYu 2:421fb0670c5c 71 {
RickYu 2:421fb0670c5c 72 // clear screen, re-draw and refresh
RickYu 2:421fb0670c5c 73 lcd.clear();
RickYu 3:1a134243e2f0 74 engine.draw(lcd);
RickYu 2:421fb0670c5c 75 lcd.refresh();
RickYu 2:421fb0670c5c 76 }