Library for ELEC2645 Gamepad PCB. University of Leeds

Dependents:   Project_MaZe1_copy Labirint Game_Controller_Project 200943373MAZE ... more

Committer:
eencae
Date:
Sat Feb 04 15:31:44 2017 +0000
Revision:
0:a6288c29b936
Child:
1:6d25cd49059b
Initial commit. Untested. Under development.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
eencae 0:a6288c29b936 1 #include "Gamepad.h"
eencae 0:a6288c29b936 2
eencae 0:a6288c29b936 3 Gamepad::Gamepad()
eencae 0:a6288c29b936 4 {
eencae 0:a6288c29b936 5 led_1 = new PwmOut(PTA1);
eencae 0:a6288c29b936 6 led_2 = new PwmOut(PTA2);
eencae 0:a6288c29b936 7 led_3 = new PwmOut(PTC2);
eencae 0:a6288c29b936 8 led_4 = new PwmOut(PTC3);
eencae 0:a6288c29b936 9 led_5 = new PwmOut(PTC4);
eencae 0:a6288c29b936 10 led_6 = new PwmOut(PTD3);
eencae 0:a6288c29b936 11
eencae 0:a6288c29b936 12 lcd = new N5110(PTC9,PTC0,PTC7,PTD2,PTD1,PTC11);
eencae 0:a6288c29b936 13 joystick = new Joystick(PTB10,PTB11,PTC16);
eencae 0:a6288c29b936 14
eencae 0:a6288c29b936 15 button_A = new InterruptIn(PTB9);
eencae 0:a6288c29b936 16 button_B = new InterruptIn(D10);
eencae 0:a6288c29b936 17 button_X = new InterruptIn(PTC17);
eencae 0:a6288c29b936 18 button_Y = new InterruptIn(PTC12); // changed pin
eencae 0:a6288c29b936 19 button_back = new InterruptIn(PTB19);
eencae 0:a6288c29b936 20 button_start = new InterruptIn(PTC5);
eencae 0:a6288c29b936 21 button_L = new InterruptIn(PTB18);
eencae 0:a6288c29b936 22 button_R = new InterruptIn(PTB3);
eencae 0:a6288c29b936 23
eencae 0:a6288c29b936 24 buzzer = new PwmOut(PTC10);
eencae 0:a6288c29b936 25 pot = new AnalogIn(PTB2);
eencae 0:a6288c29b936 26
eencae 0:a6288c29b936 27 }
eencae 0:a6288c29b936 28
eencae 0:a6288c29b936 29 void Gamepad::init()
eencae 0:a6288c29b936 30 {
eencae 0:a6288c29b936 31 lcd->init();
eencae 0:a6288c29b936 32 joystick->init();
eencae 0:a6288c29b936 33 }
eencae 0:a6288c29b936 34
eencae 0:a6288c29b936 35 void Gamepad::leds_off()
eencae 0:a6288c29b936 36 {
eencae 0:a6288c29b936 37 led_1->write(1.0);
eencae 0:a6288c29b936 38 led_2->write(1.0);
eencae 0:a6288c29b936 39 led_3->write(1.0);
eencae 0:a6288c29b936 40 led_4->write(1.0);
eencae 0:a6288c29b936 41 led_5->write(1.0);
eencae 0:a6288c29b936 42 led_6->write(1.0);
eencae 0:a6288c29b936 43 }
eencae 0:a6288c29b936 44
eencae 0:a6288c29b936 45 void Gamepad::leds_on()
eencae 0:a6288c29b936 46 {
eencae 0:a6288c29b936 47 led_1->write(0.0);
eencae 0:a6288c29b936 48 led_2->write(0.0);
eencae 0:a6288c29b936 49 led_3->write(0.0);
eencae 0:a6288c29b936 50 led_4->write(0.0);
eencae 0:a6288c29b936 51 led_5->write(0.0);
eencae 0:a6288c29b936 52 led_6->write(0.0);
eencae 0:a6288c29b936 53 }