ELEC2645 (2015/16) / Mbed 2 deprecated el14jpps_2645_Ping_Pong_Project

Dependencies:   N5110 Ping_Pong beep mbed Servo

Committer:
el14jpps
Date:
Thu May 05 11:56:13 2016 +0000
Revision:
5:722864843189
Parent:
0:bf56ee79c09e
Child:
9:80898ce9d4d5
My ELEC2645 Project Jefferson Sanchez 200883251

Who changed what in which revision?

UserRevisionLine numberNew contents of line
el14jpps 0:bf56ee79c09e 1 /**
el14jpps 0:bf56ee79c09e 2 @file menu.h
el14jpps 0:bf56ee79c09e 3 @brief Header file containing funtions used for my menu .
el14jpps 5:722864843189 4 @code The library N5110 belongs to Dr Evans
el14jpps 0:bf56ee79c09e 5
el14jpps 0:bf56ee79c09e 6 */
el14jpps 0:bf56ee79c09e 7 #include "N5110.h"
el14jpps 0:bf56ee79c09e 8 #include "beep.h"
el14jpps 0:bf56ee79c09e 9 N5110 lcd1(PTE26 , PTA0 , PTC4 , PTD0 , PTD2 , PTD1 , PTC3);
el14jpps 0:bf56ee79c09e 10 Beep buzzer(PTA2);
el14jpps 0:bf56ee79c09e 11
el14jpps 0:bf56ee79c09e 12 void pongGame();
el14jpps 0:bf56ee79c09e 13 /** This is a funtion made for the whole code
el14jpps 0:bf56ee79c09e 14 */
el14jpps 0:bf56ee79c09e 15 void gameOfLife();
el14jpps 0:bf56ee79c09e 16 void calibrateJoystick();
el14jpps 0:bf56ee79c09e 17 void updateJoystick();
el14jpps 0:bf56ee79c09e 18 void menu_intro()
el14jpps 0:bf56ee79c09e 19 {
el14jpps 0:bf56ee79c09e 20 lcd1.init(); // This funtion is used to inisicalise the lcd
el14jpps 0:bf56ee79c09e 21 lcd1.setBrightness(0);
el14jpps 0:bf56ee79c09e 22 wait(1);
el14jpps 0:bf56ee79c09e 23 lcd1.setBrightness(1);
el14jpps 0:bf56ee79c09e 24 lcd1.printString("LOADING. ",5,2);
el14jpps 0:bf56ee79c09e 25 wait(1);
el14jpps 0:bf56ee79c09e 26 //buzzer.beep(1500,0.5);
el14jpps 0:bf56ee79c09e 27 lcd1.setBrightness(0);
el14jpps 0:bf56ee79c09e 28 wait(1);
el14jpps 0:bf56ee79c09e 29 lcd1.setBrightness(1);
el14jpps 0:bf56ee79c09e 30 lcd1.clear();
el14jpps 0:bf56ee79c09e 31 lcd1.printString("LOADING.. ",5,2);
el14jpps 0:bf56ee79c09e 32 // buzzer.beep(1000,0.5);
el14jpps 0:bf56ee79c09e 33 lcd1.setBrightness(1);
el14jpps 0:bf56ee79c09e 34 wait(1);
el14jpps 0:bf56ee79c09e 35 lcd1.setBrightness(0);
el14jpps 0:bf56ee79c09e 36 wait(1);
el14jpps 0:bf56ee79c09e 37 lcd1.clear();
el14jpps 0:bf56ee79c09e 38 lcd1.printString("LOADING...",5,2);
el14jpps 0:bf56ee79c09e 39 // buzzer.beep(900,0.5);
el14jpps 0:bf56ee79c09e 40 lcd1.setBrightness(1);
el14jpps 0:bf56ee79c09e 41 wait(1);
el14jpps 0:bf56ee79c09e 42 lcd1.setBrightness(0);
el14jpps 0:bf56ee79c09e 43 wait(1);
el14jpps 0:bf56ee79c09e 44 lcd1.printString("LOADING...",5,2);
el14jpps 0:bf56ee79c09e 45 // buzzer.beep(800,0.5);
el14jpps 0:bf56ee79c09e 46 lcd1.setBrightness(1.0);
el14jpps 0:bf56ee79c09e 47
el14jpps 0:bf56ee79c09e 48
el14jpps 0:bf56ee79c09e 49
el14jpps 5:722864843189 50 /** the following funtions are to make different buzzer increase in size to make it look like a explosion.*/
el14jpps 0:bf56ee79c09e 51 lcd1.drawCircle(WIDTH/2,HEIGHT/2,8,1); // x,y,radius,black fill.
el14jpps 0:bf56ee79c09e 52 buzzer.beep(500,0.5);
el14jpps 5:722864843189 53 lcd1.drawCircle(WIDTH/2,HEIGHT/2,10,2); /** x,y,radius,white fill.*/
el14jpps 0:bf56ee79c09e 54 wait(0.020);
el14jpps 0:bf56ee79c09e 55 buzzer.beep(600,0.2);
el14jpps 5:722864843189 56 lcd1.drawCircle(WIDTH/2,HEIGHT/2,15,1); /** x,y,radius,transparent with outline.*/
el14jpps 0:bf56ee79c09e 57 wait(0.030);
el14jpps 0:bf56ee79c09e 58 buzzer.beep(700,0.2);
el14jpps 0:bf56ee79c09e 59 lcd1.drawCircle(WIDTH/2,HEIGHT/2,20,0);
el14jpps 0:bf56ee79c09e 60 wait(0.020);
el14jpps 0:bf56ee79c09e 61 buzzer.beep(800,0.2);
el14jpps 5:722864843189 62 lcd1.drawCircle(WIDTH/2,HEIGHT/2,25,1); /** x,y,radius,white fill.*/
el14jpps 0:bf56ee79c09e 63 wait(0.030);
el14jpps 0:bf56ee79c09e 64 buzzer.beep(900,0.2);
el14jpps 5:722864843189 65 lcd1.drawCircle(WIDTH/2,HEIGHT/2,30,1); /** x,y,radius,transparent with outline.*/
el14jpps 0:bf56ee79c09e 66 wait(0.020);
el14jpps 0:bf56ee79c09e 67 buzzer.beep(1000,0.2);
el14jpps 0:bf56ee79c09e 68 lcd1.drawCircle(WIDTH/2,HEIGHT/2,35,2);
el14jpps 0:bf56ee79c09e 69 wait(0.030);
el14jpps 0:bf56ee79c09e 70 buzzer.beep(1200,0.2);
el14jpps 5:722864843189 71 lcd1.drawCircle(WIDTH/2,HEIGHT/2,40,1); /** x,y,radius,white fill.*/
el14jpps 0:bf56ee79c09e 72 wait(0.020);
el14jpps 0:bf56ee79c09e 73 buzzer.beep(1300,0.2);
el14jpps 5:722864843189 74 lcd1.drawCircle(WIDTH/2,HEIGHT/2,45,0); /** x,y,radius,transparent with outline.*/
el14jpps 0:bf56ee79c09e 75 wait(0.030);
el14jpps 0:bf56ee79c09e 76 buzzer.beep(1400,0.2);
el14jpps 0:bf56ee79c09e 77 lcd1.drawCircle(WIDTH/2,HEIGHT/2,50,2);
el14jpps 0:bf56ee79c09e 78 wait(0.020);
el14jpps 0:bf56ee79c09e 79 buzzer.beep(1500,0.2);
el14jpps 0:bf56ee79c09e 80
el14jpps 5:722864843189 81 lcd1.refresh(); /** need to refresh screen after drawing buzzer.*/
el14jpps 0:bf56ee79c09e 82 lcd1.clear();
el14jpps 0:bf56ee79c09e 83
el14jpps 0:bf56ee79c09e 84 }
el14jpps 0:bf56ee79c09e 85 void tone1()
el14jpps 0:bf56ee79c09e 86 {
el14jpps 0:bf56ee79c09e 87
el14jpps 0:bf56ee79c09e 88 buzzer.beep(1500,0.1);
el14jpps 0:bf56ee79c09e 89 wait(0.3);
el14jpps 0:bf56ee79c09e 90 buzzer.beep(1500,0.2);
el14jpps 0:bf56ee79c09e 91 buzzer.beep(1500,0.3);
el14jpps 0:bf56ee79c09e 92 buzzer.beep(1500,0.4);
el14jpps 0:bf56ee79c09e 93 buzzer.beep(1500,0.5);
el14jpps 0:bf56ee79c09e 94
el14jpps 0:bf56ee79c09e 95 }
el14jpps 0:bf56ee79c09e 96 void tone2()
el14jpps 0:bf56ee79c09e 97 {
el14jpps 0:bf56ee79c09e 98 buzzer.beep(400,0.5);
el14jpps 0:bf56ee79c09e 99 wait(0.1);
el14jpps 0:bf56ee79c09e 100 buzzer.beep(600,0.4);
el14jpps 0:bf56ee79c09e 101 wait(0.1);
el14jpps 0:bf56ee79c09e 102 buzzer.beep(500,0.3);
el14jpps 0:bf56ee79c09e 103 wait(0.1);
el14jpps 0:bf56ee79c09e 104 buzzer.beep(400,0.2);
el14jpps 0:bf56ee79c09e 105 wait(0.1);
el14jpps 0:bf56ee79c09e 106
el14jpps 0:bf56ee79c09e 107 }