test
Dependencies: MMA8451Q RN42 mbed-rtos mbed
main.cpp
- Committer:
- trisjph
- Date:
- 2013-12-16
- Revision:
- 0:6152f4e4c841
File content as of revision 0:6152f4e4c841:
#include "mbed.h" #include "rtos.h" #define MMA8451_I2C_ADDRESS (0x1d<<1) #include "MMA8451Q.h" #include "RN42.h" #define PI 3.14159265 PwmOut led1(LED1); MMA8451Q acc(PTE25, PTE24, MMA8451_I2C_ADDRESS); AnalogIn ain(PTC2); Serial pc(USBTX, USBRX); //USBMouseKeyboard key_mouse; Mutex BT_mutex; //USBHID key_mouse; void click_thread(void const *args) { int press; while(true) { if( (ain.read()>0.3) && (press == 0) ) { press = 1; led1 != led1; pc.printf("%i\n", press); BT_mutex.lock(); //key_mouse.press(MOUSE_LEFT); BT_mutex.unlock(); } else if ( (ain.read()<0.3) && (press == 1) ) { press = 0; pc.printf("%i\n", press); BT_mutex.lock(); // key_mouse.release(MOUSE_LEFT); BT_mutex.unlock(); } Thread::wait(100); } } void mouse_thread(void const *args) { while(true) { BT_mutex.lock(); RN42_mouse(-acc.getAccX()*100, acc.getAccY()*100); BT_mutex.unlock(); Thread::wait(10); } } void heartbeat_thread(void const *args) { int i; led1.period(0.001); while(true) { for(i=0; i<180; i++) { led1 = sin(i*PI/180); Thread::wait(10); } } } int main() { pc.baud(115200); RN42_init(); //RN42_HID(); //RN42_connect(); //Thread click(click_thread); Thread mouse(mouse_thread); Thread heartbeat(heartbeat_thread); led1 = 1.0; while (true) { } }