Doxygen comments added

Dependencies:   mbed Gamepad N5110

Committer:
rafeh
Date:
Thu Apr 11 21:34:53 2019 +0000
Revision:
2:9f5714571c41
Parent:
1:beceda7046fb
Child:
3:5409b50b01b0
Added the bird and made some start on the pipes

Who changed what in which revision?

UserRevisionLine numberNew contents of line
rafeh 0:43364ffd7cf6 1 /*
rafeh 0:43364ffd7cf6 2 ELEC2645 Embedded Systems Project
rafeh 0:43364ffd7cf6 3 School of Electronic & Electrical Engineering
rafeh 0:43364ffd7cf6 4 University of Leeds
rafeh 0:43364ffd7cf6 5 Name: Rafeh Ishtiaq
rafeh 0:43364ffd7cf6 6 Username: el17ri
rafeh 0:43364ffd7cf6 7 Student ID Number: 201062291
rafeh 0:43364ffd7cf6 8 Date: 20/03/2019
rafeh 0:43364ffd7cf6 9 */
rafeh 0:43364ffd7cf6 10
rafeh 0:43364ffd7cf6 11 #include "mbed.h"
rafeh 0:43364ffd7cf6 12 #include "N5110.h"
rafeh 0:43364ffd7cf6 13 #include "Gamepad.h"
rafeh 0:43364ffd7cf6 14
rafeh 0:43364ffd7cf6 15 N5110 lcd(PTC9,PTC0,PTC7,PTD2,PTD1,PTC11);
rafeh 0:43364ffd7cf6 16 Gamepad pad;
rafeh 2:9f5714571c41 17 int xaxis=35;
rafeh 2:9f5714571c41 18 int yaxis=20;
rafeh 1:beceda7046fb 19 const int bird [40][40] =
rafeh 1:beceda7046fb 20 {
rafeh 1:beceda7046fb 21 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
rafeh 1:beceda7046fb 22 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
rafeh 1:beceda7046fb 23 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
rafeh 1:beceda7046fb 24 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
rafeh 1:beceda7046fb 25 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
rafeh 1:beceda7046fb 26 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
rafeh 1:beceda7046fb 27 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
rafeh 1:beceda7046fb 28 0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,0,1,0,1,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,
rafeh 1:beceda7046fb 29 0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,
rafeh 1:beceda7046fb 30 0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0,0,0,0,0,0,0,0,
rafeh 1:beceda7046fb 31 0,0,0,0,0,0,0,0,0,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,
rafeh 1:beceda7046fb 32 0,0,0,0,0,0,0,0,0,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0,0,0,0,0,0,
rafeh 1:beceda7046fb 33 0,0,0,0,0,0,0,0,1,1,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,
rafeh 1:beceda7046fb 34 0,0,0,0,0,0,0,0,1,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
rafeh 1:beceda7046fb 35 0,0,0,0,0,0,0,1,1,0,1,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,
rafeh 1:beceda7046fb 36 0,0,0,0,0,0,0,1,0,0,1,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,1,1,1,1,1,1,1,1,
rafeh 1:beceda7046fb 37 0,0,0,0,0,0,1,1,0,0,1,1,0,1,1,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,0,1,0,0,0,1,1,
rafeh 1:beceda7046fb 38 0,0,0,0,0,0,1,1,0,0,0,0,0,1,1,0,0,0,0,0,0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,1,1,
rafeh 1:beceda7046fb 39 0,0,0,0,0,0,1,1,0,0,0,0,0,0,1,0,0,0,0,0,0,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,
rafeh 1:beceda7046fb 40 0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,
rafeh 1:beceda7046fb 41 0,1,1,1,0,1,1,0,1,1,0,1,1,1,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,
rafeh 1:beceda7046fb 42 0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,0,0,0,
rafeh 1:beceda7046fb 43 1,1,1,1,0,1,0,1,0,1,0,1,0,1,1,1,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0,1,1,0,0,
rafeh 1:beceda7046fb 44 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,
rafeh 1:beceda7046fb 45 1,1,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,
rafeh 1:beceda7046fb 46 0,1,1,1,0,0,1,0,0,0,1,0,0,1,1,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,
rafeh 1:beceda7046fb 47 0,0,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,1,0,0,0,0,0,0,0,1,0,0,1,0,0,1,1,1,0,0,0,0,
rafeh 1:beceda7046fb 48 0,0,0,0,0,0,1,0,1,1,0,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,1,1,1,1,1,1,1,1,0,0,0,0,0,0,
rafeh 1:beceda7046fb 49 0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,1,0,0,0,1,1,0,0,0,0,0,0,
rafeh 1:beceda7046fb 50 0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,
rafeh 1:beceda7046fb 51 0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,1,1,1,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,
rafeh 1:beceda7046fb 52 0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,0,0,0,0,0,1,1,1,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,
rafeh 1:beceda7046fb 53 0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,0,1,0,1,1,1,1,1,0,1,1,1,1,0,0,0,0,0,0,0,0,
rafeh 1:beceda7046fb 54 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,
rafeh 1:beceda7046fb 55 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
rafeh 1:beceda7046fb 56 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
rafeh 1:beceda7046fb 57 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
rafeh 1:beceda7046fb 58 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
rafeh 1:beceda7046fb 59 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
rafeh 1:beceda7046fb 60 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
rafeh 0:43364ffd7cf6 61
rafeh 1:beceda7046fb 62 };
rafeh 0:43364ffd7cf6 63
rafeh 2:9f5714571c41 64 const int moving [9][9] =
rafeh 2:9f5714571c41 65 {
rafeh 2:9f5714571c41 66 0,0,0,0,0,0,0,0,0,
rafeh 2:9f5714571c41 67 0,0,0,1,1,0,0,0,0,
rafeh 2:9f5714571c41 68 0,0,1,1,1,1,0,0,0,
rafeh 2:9f5714571c41 69 0,1,1,1,1,1,1,0,0,
rafeh 2:9f5714571c41 70 0,1,1,1,1,1,1,1,1,
rafeh 2:9f5714571c41 71 0,1,1,1,1,1,1,1,1,
rafeh 2:9f5714571c41 72 0,1,1,1,1,1,1,1,0,
rafeh 2:9f5714571c41 73 0,0,1,1,1,1,1,0,0,
rafeh 2:9f5714571c41 74 0,0,0,1,1,1,0,0,0,
rafeh 2:9f5714571c41 75
rafeh 2:9f5714571c41 76 };
rafeh 2:9f5714571c41 77
rafeh 0:43364ffd7cf6 78 void welcome();
rafeh 2:9f5714571c41 79 void start(int xaxis,int yaxis);
rafeh 0:43364ffd7cf6 80 int main() {
rafeh 0:43364ffd7cf6 81 lcd.init();
rafeh 0:43364ffd7cf6 82 pad.init();
rafeh 0:43364ffd7cf6 83 lcd.clear();
rafeh 1:beceda7046fb 84 lcd.setContrast(0.5);
rafeh 1:beceda7046fb 85 welcome();
rafeh 2:9f5714571c41 86 if (pad.check_event(Gamepad::START_PRESSED) == false) {
rafeh 2:9f5714571c41 87 lcd.clear();
rafeh 2:9f5714571c41 88
rafeh 2:9f5714571c41 89 while(1) {
rafeh 2:9f5714571c41 90 lcd.drawRect(0,44,84,4,FILL_BLACK);
rafeh 2:9f5714571c41 91 int height = rand() % (20 + 1 - 2) + 2;
rafeh 2:9f5714571c41 92 lcd.drawRect(40,0,5,height,FILL_BLACK);
rafeh 2:9f5714571c41 93 lcd.drawSprite(xaxis,yaxis,9,9,(int*)moving);
rafeh 2:9f5714571c41 94 yaxis=yaxis+2;
rafeh 2:9f5714571c41 95 if (pad.check_event(Gamepad::A_PRESSED) == true) {
rafeh 2:9f5714571c41 96 yaxis=yaxis-16;
rafeh 2:9f5714571c41 97 }
rafeh 2:9f5714571c41 98 wait(0.05);
rafeh 2:9f5714571c41 99 //wait(0.1);
rafeh 2:9f5714571c41 100 lcd.refresh();
rafeh 2:9f5714571c41 101 lcd.clear();
rafeh 2:9f5714571c41 102 }
rafeh 2:9f5714571c41 103 }
rafeh 2:9f5714571c41 104 }
rafeh 0:43364ffd7cf6 105
rafeh 2:9f5714571c41 106
rafeh 0:43364ffd7cf6 107
rafeh 0:43364ffd7cf6 108 void welcome() {
rafeh 1:beceda7046fb 109 lcd.drawSprite(0,0,40,40,(int*)bird);
rafeh 1:beceda7046fb 110 lcd.printString(" Flappy ",40,0);
rafeh 1:beceda7046fb 111 lcd.printString(" Bird ",40,1);
rafeh 1:beceda7046fb 112 lcd.printString(" Press ",40,3);
rafeh 1:beceda7046fb 113 lcd.printString(" Start ",40,4);
rafeh 1:beceda7046fb 114 lcd.refresh();
rafeh 1:beceda7046fb 115 while ( pad.check_event(Gamepad::START_PRESSED) == false) {
rafeh 1:beceda7046fb 116 pad.leds_on();
rafeh 1:beceda7046fb 117 wait(0.1);
rafeh 1:beceda7046fb 118 pad.leds_off();
rafeh 1:beceda7046fb 119 wait(0.1);
rafeh 1:beceda7046fb 120 }
rafeh 2:9f5714571c41 121 }
rafeh 1:beceda7046fb 122
rafeh 2:9f5714571c41 123 void start(int xaxis,int yaxis) {
rafeh 2:9f5714571c41 124 lcd.refresh();
rafeh 2:9f5714571c41 125 lcd.drawSprite(xaxis,yaxis,9,9,(int*)moving);
rafeh 2:9f5714571c41 126 yaxis=yaxis-1;
rafeh 0:43364ffd7cf6 127
rafeh 2:9f5714571c41 128 }