My ELEC2645 project. Nikollao Sulollari. 200804685

Dependencies:   N5110 SoftPWM mbed

Fork of Treasure_Hunt by ELEC2645 (2015/16)

Committer:
Nikollao
Date:
Mon Mar 21 09:29:46 2016 +0000
Revision:
2:af5b5d42e835
Child:
3:d2cc054e8605
improve your man control and menu

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Nikollao 2:af5b5d42e835 1 DigitalOut r_led(LED_RED);
Nikollao 2:af5b5d42e835 2 DigitalOut g_led(LED_GREEN);
Nikollao 2:af5b5d42e835 3 DigitalOut b_led(LED_BLUE);
Nikollao 2:af5b5d42e835 4
Nikollao 2:af5b5d42e835 5 // K64F on-board switches
Nikollao 2:af5b5d42e835 6 InterruptIn sw2(SW2);
Nikollao 2:af5b5d42e835 7 InterruptIn sw3(SW3);
Nikollao 2:af5b5d42e835 8
Nikollao 2:af5b5d42e835 9 #define DIRECTION_TOLERANCE 0.05
Nikollao 2:af5b5d42e835 10
Nikollao 2:af5b5d42e835 11 InterruptIn button(PTB2);
Nikollao 2:af5b5d42e835 12 AnalogIn xPot(PTB3);
Nikollao 2:af5b5d42e835 13 AnalogIn yPot(PTB10);
Nikollao 2:af5b5d42e835 14 PwmOut speaker(PTC11);
Nikollao 2:af5b5d42e835 15
Nikollao 2:af5b5d42e835 16
Nikollao 2:af5b5d42e835 17 volatile int rectY;
Nikollao 2:af5b5d42e835 18 volatile int rectX ;
Nikollao 2:af5b5d42e835 19 volatile int circleX;
Nikollao 2:af5b5d42e835 20 volatile int circleY;
Nikollao 2:af5b5d42e835 21 volatile int heroX;
Nikollao 2:af5b5d42e835 22 volatile int heroY;
Nikollao 2:af5b5d42e835 23
Nikollao 2:af5b5d42e835 24 volatile int level = 0;
Nikollao 2:af5b5d42e835 25 volatile int count = 0;
Nikollao 2:af5b5d42e835 26 volatile int reset = 0;
Nikollao 2:af5b5d42e835 27 volatile int g_timer_flag = 0;
Nikollao 2:af5b5d42e835 28 volatile int g_game_timer_flag = 0;
Nikollao 2:af5b5d42e835 29 volatile int g_sw2_flag = 0;
Nikollao 2:af5b5d42e835 30 volatile int g_sw3_flag = 0;
Nikollao 2:af5b5d42e835 31 volatile int g_button_flag = 0;
Nikollao 2:af5b5d42e835 32
Nikollao 2:af5b5d42e835 33 void error();
Nikollao 2:af5b5d42e835 34 // setup serial port
Nikollao 2:af5b5d42e835 35 void init_serial();
Nikollao 2:af5b5d42e835 36 // set-up the on-board LEDs and switches
Nikollao 2:af5b5d42e835 37 void init_K64F();
Nikollao 2:af5b5d42e835 38 void init_game();
Nikollao 2:af5b5d42e835 39 void timer_isr();
Nikollao 2:af5b5d42e835 40 void game_timer_isr();
Nikollao 2:af5b5d42e835 41 void sw2_isr();
Nikollao 2:af5b5d42e835 42 void sw3_isr();
Nikollao 2:af5b5d42e835 43 void button_isr();
Nikollao 2:af5b5d42e835 44 void timeout_isr();
Nikollao 2:af5b5d42e835 45
Nikollao 2:af5b5d42e835 46 void calibrateJoystick();
Nikollao 2:af5b5d42e835 47 void updateJoystick();
Nikollao 2:af5b5d42e835 48
Nikollao 2:af5b5d42e835 49 void enemyRect();
Nikollao 2:af5b5d42e835 50 void enemyCircle();
Nikollao 2:af5b5d42e835 51 void hero();
Nikollao 2:af5b5d42e835 52 void guidance();
Nikollao 2:af5b5d42e835 53 void obstacles();
Nikollao 2:af5b5d42e835 54 int menu();
Nikollao 2:af5b5d42e835 55
Nikollao 2:af5b5d42e835 56 enum DirectionName {
Nikollao 2:af5b5d42e835 57 UP,
Nikollao 2:af5b5d42e835 58 DOWN,
Nikollao 2:af5b5d42e835 59 LEFT,
Nikollao 2:af5b5d42e835 60 RIGHT,
Nikollao 2:af5b5d42e835 61 CENTRE,
Nikollao 2:af5b5d42e835 62 UP_LEFT,
Nikollao 2:af5b5d42e835 63 UP_RIGHT,
Nikollao 2:af5b5d42e835 64 DOWN_LEFT,
Nikollao 2:af5b5d42e835 65 DOWN_RIGHT
Nikollao 2:af5b5d42e835 66 };
Nikollao 2:af5b5d42e835 67