Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Revision 0:180cf3834ece, committed 2014-02-13
- Comitter:
- nleoni
- Date:
- Thu Feb 13 08:03:28 2014 +0000
- Commit message:
- /joystickAppBoard class; //Written by Napoleon Leoni; February 2014; //Simple class object to handle joystick state for the mbed application board; //5 way Joystick ALPS SKRHADE010; //Down:p12; Left:p13 Centre:p14 Up:p15 Right:p16;
Changed in this revision
| joystickAppBoard.cpp | Show annotated file Show diff for this revision Revisions of this file |
| joystickAppBoard.h | Show annotated file Show diff for this revision Revisions of this file |
diff -r 000000000000 -r 180cf3834ece joystickAppBoard.cpp
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/joystickAppBoard.cpp Thu Feb 13 08:03:28 2014 +0000
@@ -0,0 +1,86 @@
+//joystickAppBoard class
+//Written by Napoleon Leoni; February 2014
+//Simple class object to handle joystick state for the mbed application board
+//5 way Joystick ALPS SKRHADE010
+//Down:p12; Left:p13 Centre:p14 Up:p15 Right:p16
+
+#include "joystickAppBoard.h"
+
+// Joystick state definitions
+//#define JOYSTICKDOWN 0x01 //0b00001 d1
+//#define JOYSTICKLEFT 0x02 //0b00010 d2
+//#define JOYSTICKCENTER 0x04 //0b00100 d4
+//#define JOYSTICKUP 0x08 //0b01000 d8
+//#define JOYSTICKRIGHT 0x10 //0b10000 d16
+
+//***************************** TESTING ********************************************************//
+// TEST TEST DESCRIPTION STATUS //
+// 1 getJoystickState yields the right hex value as shown above PASS //
+// 2 Joystick posistion (up, down center, leff, right) are all PASS //
+// properly identified when the Joystick is actuated //
+//**********************************************************************************************//
+
+//**********************************************************************************************//
+// void joystickAppBoard::joystickAppBoard(void){ //
+// Constructor, uses the predefined pins for the mbed app board to generater a BusIn object //
+// to read the joystick state
+// Inputs: void //
+//**********************************************************************************************//
+ joystickAppBoard::joystickAppBoard(){
+ this->joystickPins = new BusIn(p12,p13,p14,p15,p16);
+ return;
+ }
+
+//**********************************************************************************************//
+// void joystickAppBoard::readJoystick(void){ //
+// reads and stores the current Joystick state as defined by an integer where each bit //
+// represents one of the joystick directions //
+// Inputs: void //
+//**********************************************************************************************//
+ void joystickAppBoard::readJoystick(void){
+ this->joystickState=this->joystickPins->read();
+ }
+
+//**********************************************************************************************//
+// int joystickAppBoard::getJoystickState(void){ //
+// returns the current Joystick states as defined above //
+// Inputs: void //
+//**********************************************************************************************//
+ int joystickAppBoard::getJoystickState(void){
+ return this->joystickState;
+ }
+
+//**********************************************************************************************//
+// int joystickAppBoard::isJoystickUp(void){ //
+// returns true if Joystick is up //
+// Inputs: void //
+//**********************************************************************************************//
+ bool joystickAppBoard::isJoystickUp(void){ return ( (this->joystickState) & JOYSTICKUP); }
+
+//**********************************************************************************************//
+// int joystickAppBoard::isJoystickDown(void){ //
+// returns true if Joystick is down //
+// Inputs: void //
+//**********************************************************************************************//
+ bool joystickAppBoard::isJoystickDown(void){ return ( (this->joystickState) & JOYSTICKDOWN); }
+
+//**********************************************************************************************//
+// int joystickAppBoard::isJoystickLeft(void){ //
+// returns true if Joystick is left //
+// Inputs: void //
+//**********************************************************************************************//
+ bool joystickAppBoard::isJoystickLeft(void){ return ( (this->joystickState) & JOYSTICKLEFT); }
+
+//**********************************************************************************************//
+// int joystickAppBoard::isJoystickRight(void){ //
+// returns true if Joystick is left //
+// Inputs: void //
+//**********************************************************************************************//
+ bool joystickAppBoard::isJoystickRight(void){ return ( (this->joystickState) & JOYSTICKRIGHT); }
+
+//**********************************************************************************************//
+// int joystickAppBoard::isJoystickCenter(void){ //
+// returns true if Joystick is center //
+// Inputs: void //
+//**********************************************************************************************//
+ bool joystickAppBoard::isJoystickCenter(void){ return ( (this->joystickState) & JOYSTICKCENTER); }
diff -r 000000000000 -r 180cf3834ece joystickAppBoard.h
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/joystickAppBoard.h Thu Feb 13 08:03:28 2014 +0000
@@ -0,0 +1,45 @@
+//joystickAppBoard class
+//Written by Napoleon Leoni; February 2014
+//Simple class object to handle joystick state for the mbed application board
+//5 way Joystick ALPS SKRHADE010
+//Down:p12; Left:p13 Centre:p14 Up:p15 Right:p16
+
+#include "mbed.h"
+#include <BusIn.h>
+
+#ifndef JOYAPPPCB
+#define JOYAPPPCB
+// Joystick state definitions
+#define JOYSTICKDOWN 0x01 //0b00001 d1
+#define JOYSTICKLEFT 0x02 //0b00010 d2
+#define JOYSTICKCENTER 0x04 //0b00100 d4
+#define JOYSTICKUP 0x08 //0b01000 d8
+#define JOYSTICKRIGHT 0x10 //0b10000 d16
+
+//***************************** TESTING ********************************************************//
+// TEST TEST DESCRIPTION STATUS //
+// 1 getJoystickState yields the right hex value as shown above PASS //
+// 2 Joystick posistion (up, down center, leff, right) are all PASS //
+// properly identified when the Joystick is actuated //
+//**********************************************************************************************//
+
+class joystickAppBoard{
+ //members
+ private:
+ BusIn *joystickPins;//this will be defined using all 5 pins fo joystick Busin(12,13,14,15,16)
+ int joystickState;
+ //methods
+
+ public:
+ joystickAppBoard();
+ void readJoystick();
+ int getJoystickState(void);
+ bool isJoystickUp();
+ bool isJoystickDown();
+ bool isJoystickLeft();
+ bool isJoystickRight();
+ bool isJoystickCenter();
+
+};
+
+#endif
\ No newline at end of file