ELEC2645 (2018/19) / Mbed 2 deprecated el17lw

Dependencies:   mbed

Committer:
lewisgw
Date:
Tue May 07 08:39:38 2019 +0000
Revision:
28:be77ad6c0bda
Parent:
26:4253656c0755
Added a tests class to be run in main to test sprites on the LCD. Updated documentation.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
lewisgw 12:ebaefda53dd0 1 /*
lewisgw 12:ebaefda53dd0 2 ELEC2645 Embedded Systems Project
lewisgw 12:ebaefda53dd0 3 School of Electronic & Electrical Engineering University of Leeds
lewisgw 12:ebaefda53dd0 4 Name: Lewis Wooltorton
lewisgw 12:ebaefda53dd0 5 Username: el17lw
lewisgw 12:ebaefda53dd0 6 Student ID Number: 201122085 Date: March 2019
lewisgw 12:ebaefda53dd0 7 */
lewisgw 12:ebaefda53dd0 8
lewisgw 12:ebaefda53dd0 9 #include "N5110.h"
lewisgw 12:ebaefda53dd0 10 #include "Gamepad.h"
lewisgw 12:ebaefda53dd0 11 #include "mbed.h"
lewisgw 12:ebaefda53dd0 12 #include "Menu.h"
lewisgw 28:be77ad6c0bda 13 #include "Tests.h"
lewisgw 12:ebaefda53dd0 14
lewisgw 12:ebaefda53dd0 15 N5110 lcd(PTC9,PTC0,PTC7,PTD2,PTD1,PTC11);
lewisgw 12:ebaefda53dd0 16 Gamepad gamepad;
lewisgw 12:ebaefda53dd0 17 Menu menu;
lewisgw 28:be77ad6c0bda 18 Tests test; // Create a test object if tests are to be done.
lewisgw 12:ebaefda53dd0 19
lewisgw 12:ebaefda53dd0 20 void init_game();
lewisgw 12:ebaefda53dd0 21
lewisgw 12:ebaefda53dd0 22 int main() {
lewisgw 28:be77ad6c0bda 23 init_game();
lewisgw 26:4253656c0755 24 while(1) {
lewisgw 26:4253656c0755 25 lcd.setContrast(gamepad.read_pot()); // Contrast is controlled by pot.
lewisgw 12:ebaefda53dd0 26 lcd.clear();
lewisgw 28:be77ad6c0bda 27 menu.run(lcd, gamepad); // Comment this out when running tests.
lewisgw 28:be77ad6c0bda 28 // Blelow line is an example of testing sprites. See documentation for
lewisgw 28:be77ad6c0bda 29 // parameters and details.
lewisgw 28:be77ad6c0bda 30 //test.run_tests(1,1,Skate_right,20,20,20,10,30,50,5,lcd);
lewisgw 12:ebaefda53dd0 31 lcd.refresh();
lewisgw 26:4253656c0755 32 wait(0.01);
lewisgw 12:ebaefda53dd0 33 }
lewisgw 12:ebaefda53dd0 34 }
lewisgw 12:ebaefda53dd0 35
lewisgw 12:ebaefda53dd0 36 void init_game() {
lewisgw 28:be77ad6c0bda 37 test.init(20); // argument is the vertical height of test platforms.
lewisgw 12:ebaefda53dd0 38 gamepad.init();
lewisgw 21:20478f086bc2 39 menu.init();
lewisgw 12:ebaefda53dd0 40 lcd.init();
lewisgw 12:ebaefda53dd0 41 lcd.normalMode();
lewisgw 12:ebaefda53dd0 42 lcd.setBrightness(0.5);
lewisgw 21:20478f086bc2 43 }