WIRELESS MOUSE CODE FOR RECEIVER USING NRF MODULE

Dependencies:   MMA8451Q TSI USBDevice mbed nRF24L01P

Fork of kl25Z_nRF_RX by Eduvance SIT2017

Committer:
saitejarao
Date:
Sun Mar 18 16:05:36 2018 +0000
Revision:
4:47d9d6c2d7e9
Parent:
3:f3e27d1b37ad
WIRELESS MOUSE RX

Who changed what in which revision?

UserRevisionLine numberNew contents of line
ganeshgore 2:9f401852272c 1 #include "mbed.h"
ganeshgore 2:9f401852272c 2 #include "nRF24L01P.h"
saitejarao 4:47d9d6c2d7e9 3 #include "MMA8451Q.h"
saitejarao 4:47d9d6c2d7e9 4 #include "TSISensor.h"
saitejarao 4:47d9d6c2d7e9 5 #include "USBMouse.h"
saitejarao 4:47d9d6c2d7e9 6 #define MMA8451_addr (0X1d<<1)
saitejarao 4:47d9d6c2d7e9 7 USBMouse mouse;
saitejarao 4:47d9d6c2d7e9 8 MMA8451Q acc(PTE25,PTE24,MMA8451_addr);
saitejarao 4:47d9d6c2d7e9 9 TSISensor tsi;
saitejarao 4:47d9d6c2d7e9 10 Serial pc(USBTX, USBRX);
saitejarao 4:47d9d6c2d7e9 11 nRF24L01P my_nrf24l01p(PTD2, PTD3, PTD1, PTD0, PTD5, PTD4);
ganeshgore 2:9f401852272c 12
saitejarao 4:47d9d6c2d7e9 13 int main()
saitejarao 4:47d9d6c2d7e9 14 {
saitejarao 4:47d9d6c2d7e9 15 char count[4];
saitejarao 4:47d9d6c2d7e9 16 char RxDataCnt;
saitejarao 4:47d9d6c2d7e9 17 float x,y;
saitejarao 4:47d9d6c2d7e9 18 char temp;
ganeshgore 2:9f401852272c 19 my_nrf24l01p.powerUp();
saitejarao 4:47d9d6c2d7e9 20 my_nrf24l01p.setRfFrequency(2400);
ganeshgore 2:9f401852272c 21
saitejarao 4:47d9d6c2d7e9 22 RxDataCnt = 4;
ganeshgore 2:9f401852272c 23 my_nrf24l01p.setTransferSize( RxDataCnt );
ganeshgore 2:9f401852272c 24
ganeshgore 2:9f401852272c 25 my_nrf24l01p.setReceiveMode();
ganeshgore 2:9f401852272c 26 my_nrf24l01p.enable();
ganeshgore 2:9f401852272c 27
saitejarao 4:47d9d6c2d7e9 28 while (1)
saitejarao 4:47d9d6c2d7e9 29 {
ganeshgore 2:9f401852272c 30
saitejarao 4:47d9d6c2d7e9 31 if ( my_nrf24l01p.readable() )
saitejarao 4:47d9d6c2d7e9 32 {
saitejarao 4:47d9d6c2d7e9 33 temp = my_nrf24l01p.read( NRF24L01P_PIPE_P0, count, RxDataCnt );
saitejarao 4:47d9d6c2d7e9 34 // pc.printf( "Cnt %d = %d %d %d %d\r\n",temp,count[0],count[1],count[2],count[3]);
saitejarao 4:47d9d6c2d7e9 35 y=count[0];
saitejarao 4:47d9d6c2d7e9 36 x=count[1];
saitejarao 4:47d9d6c2d7e9 37 y=(y/50.0f)-(float)2;
saitejarao 4:47d9d6c2d7e9 38 x=(x/50.0f)-(float)2;
saitejarao 4:47d9d6c2d7e9 39 mouse.move(-1.0f*y*20.0f,x*20.0f);
saitejarao 4:47d9d6c2d7e9 40 if(count[2]==1)
saitejarao 4:47d9d6c2d7e9 41 {
saitejarao 4:47d9d6c2d7e9 42 mouse.press(MOUSE_LEFT);
saitejarao 4:47d9d6c2d7e9 43 }
saitejarao 4:47d9d6c2d7e9 44 else if(count[3]==1)
saitejarao 4:47d9d6c2d7e9 45 {
saitejarao 4:47d9d6c2d7e9 46 mouse.press(MOUSE_RIGHT);
saitejarao 4:47d9d6c2d7e9 47 }
saitejarao 4:47d9d6c2d7e9 48 else
saitejarao 4:47d9d6c2d7e9 49 {
saitejarao 4:47d9d6c2d7e9 50 mouse.release(MOUSE_LEFT);
saitejarao 4:47d9d6c2d7e9 51 mouse.release(MOUSE_RIGHT);
saitejarao 4:47d9d6c2d7e9 52 }
saitejarao 4:47d9d6c2d7e9 53
saitejarao 4:47d9d6c2d7e9 54 wait_ms(50);
ganeshgore 2:9f401852272c 55 }
ganeshgore 2:9f401852272c 56 }
ganeshgore 2:9f401852272c 57 }