
Final Commit
Dependencies: mbed
main.cpp
- Committer:
- JRM1986
- Date:
- 2018-04-12
- Revision:
- 14:c3a435597196
- Parent:
- 13:72bc2579e85e
- Child:
- 16:85ca9feccf3f
File content as of revision 14:c3a435597196:
#include "mbed.h" #include "FXOS8700CQ.h" #include "Gamepad.h" #include "N5110.h" #include "Testing.h" #include "SnakeEngine.h" #define FOOD_X 20 #define FOOD_Y 20 struct UserInput { Direction d; }; /* ELEC2645 Embedded Systems Project School of Electronic & Electrical Engineering University of Leeds Name: Joshua Robert Marshall Username: ll13jrm Student ID Number: 200764543 Date: 28/02/2018 */ // ----- Objects ----- SnakeEngine snake_engine; Gamepad pad; Snake snake; N5110 lcd(PTC9,PTC0,PTC7,PTD2,PTD1,PTC11); Testing test1; // ----- Prototypes ----- void init(); void update_game(UserInput input); void render(); void start_menu(); int main() { init(); render(); wait(1.5); while(1) { snake_engine.get_input(pad); snake_engine.update(pad); render(); wait(0.2); /* if(test1.update_snake_test(W, E)) { printf("Passed direction test1 \n"); } else { printf("Failed direction test \n"); } if(test1.position_test(E, N)) { printf("Passed position test1 \n"); } else { printf("Failed position test \n"); } */ } } // initialies all classes and libraries void init() { // need to initialise LCD and Gamepad lcd.init(); pad.init(); // initialise the game with food, snake... snake_engine.init(43, 23); } // this function draws each frame on the LCD void render() { // clear screen, re-draw and refresh lcd.clear(); snake_engine.draw(lcd); lcd.refresh(); } void start_menu() { // brings up start menu, levels, scores }