A game for Lab 4 of ECE 4180
Dependencies: 4DGL-uLCD-SE LSM9DS1_Library SDFileSystem mbed-rtos mbed wave_player
Diff: InputHandler.cpp
- Revision:
- 2:623f29bad35c
- Parent:
- 0:6a49493943be
- Child:
- 3:27889fffc2f7
--- a/InputHandler.cpp Thu Mar 10 20:10:35 2016 +0000 +++ b/InputHandler.cpp Thu Mar 10 22:51:12 2016 +0000 @@ -3,16 +3,15 @@ #define START_THREAD 1 InputHandler::InputHandler(PinName sda, PinName scl, uint8_t xgAddr, uint8_t mAddr, PinName digitalIn) - :thread(&InputHandler::threadStarter, this, osPriorityNormal,1024), - imu(sda, scl, xgAddr, mAddr), + :imu(sda, scl, xgAddr, mAddr), pushButton(digitalIn, PullUp) { imu.begin(); // imu.calibrate(1); } -void InputHandler::start() { - thread.signal_set(START_THREAD); +Thread* InputHandler::start() { + return new Thread(&InputHandler::threadStarter, this, osPriorityNormal,1024); } float InputHandler::getXAccel() { @@ -49,7 +48,6 @@ } void InputHandler::retrieveInputs() { - thread.signal_wait(START_THREAD); while(true) { imu.readAccel(); @@ -59,7 +57,7 @@ yAccel = -imu.calcAccel(imu.ay); zAccel = -imu.calcAccel(imu.az); isPushed = pushButton.read() == 0; - //printf("xAccel: %.6f\n\ryAccel: %.6f\n\risPushed: %s", xAccel, yAccel, isPushed ? "true" : "false"); + //printf("\t\txAccel: %.6f\n\ryAccel: %.6f\n\risPushed: %s", xAccel, yAccel, isPushed ? "true" : "false"); stdio_mutex.unlock(); Thread::wait(20); // ~60Hz