ELEC2645 (2015/16) / Mbed 2 deprecated el14jpps_2645_Ping_Pong_Project

Dependencies:   N5110 Ping_Pong beep mbed Servo

Committer:
el14jpps
Date:
Sat Apr 15 18:47:27 2017 +0000
Revision:
9:80898ce9d4d5
Parent:
5:722864843189
sencod

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 9:80898ce9d4d5 24 buzzer.beep(500,0.5);
el14jpps 0:bf56ee79c09e 25 lcd1.printString("LOADING. ",5,2);
el14jpps 0:bf56ee79c09e 26 wait(1);
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 9:80898ce9d4d5 31 buzzer.beep(500,0.5);
el14jpps 0:bf56ee79c09e 32 lcd1.printString("LOADING.. ",5,2);
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 9:80898ce9d4d5 38 buzzer.beep(500,0.5);
el14jpps 0:bf56ee79c09e 39 lcd1.printString("LOADING...",5,2);
el14jpps 0:bf56ee79c09e 40 // buzzer.beep(900,0.5);
el14jpps 0:bf56ee79c09e 41 lcd1.setBrightness(1);
el14jpps 0:bf56ee79c09e 42 wait(1);
el14jpps 0:bf56ee79c09e 43 lcd1.setBrightness(0);
el14jpps 0:bf56ee79c09e 44 wait(1);
el14jpps 0:bf56ee79c09e 45 lcd1.printString("LOADING...",5,2);
el14jpps 0:bf56ee79c09e 46 // buzzer.beep(800,0.5);
el14jpps 0:bf56ee79c09e 47 lcd1.setBrightness(1.0);
el14jpps 0:bf56ee79c09e 48
el14jpps 0:bf56ee79c09e 49
el14jpps 0:bf56ee79c09e 50
el14jpps 5:722864843189 51 /** the following funtions are to make different buzzer increase in size to make it look like a explosion.*/
el14jpps 0:bf56ee79c09e 52 lcd1.drawCircle(WIDTH/2,HEIGHT/2,8,1); // x,y,radius,black fill.
el14jpps 0:bf56ee79c09e 53 buzzer.beep(500,0.5);
el14jpps 5:722864843189 54 lcd1.drawCircle(WIDTH/2,HEIGHT/2,10,2); /** x,y,radius,white fill.*/
el14jpps 0:bf56ee79c09e 55 wait(0.020);
el14jpps 0:bf56ee79c09e 56 buzzer.beep(600,0.2);
el14jpps 5:722864843189 57 lcd1.drawCircle(WIDTH/2,HEIGHT/2,15,1); /** x,y,radius,transparent with outline.*/
el14jpps 0:bf56ee79c09e 58 wait(0.030);
el14jpps 0:bf56ee79c09e 59 buzzer.beep(700,0.2);
el14jpps 0:bf56ee79c09e 60 lcd1.drawCircle(WIDTH/2,HEIGHT/2,20,0);
el14jpps 0:bf56ee79c09e 61 wait(0.020);
el14jpps 0:bf56ee79c09e 62 buzzer.beep(800,0.2);
el14jpps 5:722864843189 63 lcd1.drawCircle(WIDTH/2,HEIGHT/2,25,1); /** x,y,radius,white fill.*/
el14jpps 0:bf56ee79c09e 64 wait(0.030);
el14jpps 0:bf56ee79c09e 65 buzzer.beep(900,0.2);
el14jpps 5:722864843189 66 lcd1.drawCircle(WIDTH/2,HEIGHT/2,30,1); /** x,y,radius,transparent with outline.*/
el14jpps 0:bf56ee79c09e 67 wait(0.020);
el14jpps 0:bf56ee79c09e 68 buzzer.beep(1000,0.2);
el14jpps 0:bf56ee79c09e 69 lcd1.drawCircle(WIDTH/2,HEIGHT/2,35,2);
el14jpps 0:bf56ee79c09e 70 wait(0.030);
el14jpps 0:bf56ee79c09e 71 buzzer.beep(1200,0.2);
el14jpps 5:722864843189 72 lcd1.drawCircle(WIDTH/2,HEIGHT/2,40,1); /** x,y,radius,white fill.*/
el14jpps 0:bf56ee79c09e 73 wait(0.020);
el14jpps 0:bf56ee79c09e 74 buzzer.beep(1300,0.2);
el14jpps 5:722864843189 75 lcd1.drawCircle(WIDTH/2,HEIGHT/2,45,0); /** x,y,radius,transparent with outline.*/
el14jpps 0:bf56ee79c09e 76 wait(0.030);
el14jpps 0:bf56ee79c09e 77 buzzer.beep(1400,0.2);
el14jpps 0:bf56ee79c09e 78 lcd1.drawCircle(WIDTH/2,HEIGHT/2,50,2);
el14jpps 0:bf56ee79c09e 79 wait(0.020);
el14jpps 0:bf56ee79c09e 80 buzzer.beep(1500,0.2);
el14jpps 0:bf56ee79c09e 81
el14jpps 5:722864843189 82 lcd1.refresh(); /** need to refresh screen after drawing buzzer.*/
el14jpps 0:bf56ee79c09e 83 lcd1.clear();
el14jpps 0:bf56ee79c09e 84
el14jpps 0:bf56ee79c09e 85 }
el14jpps 0:bf56ee79c09e 86 void tone1()
el14jpps 0:bf56ee79c09e 87 {
el14jpps 0:bf56ee79c09e 88
el14jpps 0:bf56ee79c09e 89 buzzer.beep(1500,0.1);
el14jpps 0:bf56ee79c09e 90 wait(0.3);
el14jpps 0:bf56ee79c09e 91 buzzer.beep(1500,0.2);
el14jpps 0:bf56ee79c09e 92 buzzer.beep(1500,0.3);
el14jpps 0:bf56ee79c09e 93 buzzer.beep(1500,0.4);
el14jpps 0:bf56ee79c09e 94 buzzer.beep(1500,0.5);
el14jpps 0:bf56ee79c09e 95
el14jpps 0:bf56ee79c09e 96 }
el14jpps 0:bf56ee79c09e 97 void tone2()
el14jpps 0:bf56ee79c09e 98 {
el14jpps 0:bf56ee79c09e 99 buzzer.beep(400,0.5);
el14jpps 0:bf56ee79c09e 100 wait(0.1);
el14jpps 0:bf56ee79c09e 101 buzzer.beep(600,0.4);
el14jpps 0:bf56ee79c09e 102 wait(0.1);
el14jpps 0:bf56ee79c09e 103 buzzer.beep(500,0.3);
el14jpps 0:bf56ee79c09e 104 wait(0.1);
el14jpps 0:bf56ee79c09e 105 buzzer.beep(400,0.2);
el14jpps 0:bf56ee79c09e 106 wait(0.1);
el14jpps 0:bf56ee79c09e 107
el14jpps 0:bf56ee79c09e 108 }