nRF24L01, encoder, pca9685, pid

Dependencies:   mbed QEI-1 nRF24L01P xiugai

Committer:
glintligo
Date:
Wed May 02 08:01:38 2018 +0000
Revision:
1:1e3eb2d1496b
Parent:
0:e63858fec119
Child:
2:af377291f3ae
???v1;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
glintligo 0:e63858fec119 1 #include "mbed.h"
glintligo 0:e63858fec119 2 #include "QEI.h"
glintligo 1:1e3eb2d1496b 3 DigitalOut w1(PB_6);
glintligo 1:1e3eb2d1496b 4 DigitalOut w2(PB_7);
glintligo 1:1e3eb2d1496b 5 DigitalOut w3(PB_8);
glintligo 1:1e3eb2d1496b 6 DigitalOut w4(PB_9);
glintligo 1:1e3eb2d1496b 7 PwmOut mypwm1(PA_9);
glintligo 1:1e3eb2d1496b 8 PwmOut mypwm2(PA_8);
glintligo 1:1e3eb2d1496b 9 Serial pc(PB_10, PB_11);
glintligo 1:1e3eb2d1496b 10 Ticker toggle_time_ticker;
glintligo 1:1e3eb2d1496b 11 QEI wheel(PA_2, PA_3, NC, 11, QEI::X4_ENCODING);
glintligo 1:1e3eb2d1496b 12 QEI wheel2(PA_6, PA_7, NC, 11, QEI::X4_ENCODING);
glintligo 1:1e3eb2d1496b 13 int x,y;
glintligo 1:1e3eb2d1496b 14 float a= 0.01, b = 0.00860454;
glintligo 1:1e3eb2d1496b 15 void time_ticker();
glintligo 1:1e3eb2d1496b 16 void serialread();
glintligo 1:1e3eb2d1496b 17 int main()
glintligo 1:1e3eb2d1496b 18 {
glintligo 1:1e3eb2d1496b 19 mypwm1.period_ms(10);
glintligo 1:1e3eb2d1496b 20 mypwm2.period_ms(10);
glintligo 1:1e3eb2d1496b 21 toggle_time_ticker.attach(&time_ticker, 0.2);
glintligo 1:1e3eb2d1496b 22 pc.attach(&serialread);
glintligo 1:1e3eb2d1496b 23 mypwm1.pulsewidth(a);
glintligo 1:1e3eb2d1496b 24 mypwm2.pulsewidth(b);
glintligo 1:1e3eb2d1496b 25 wheel.reset();
glintligo 1:1e3eb2d1496b 26 wheel2.reset();
glintligo 1:1e3eb2d1496b 27 w1 = 0;
glintligo 1:1e3eb2d1496b 28 w2 = 0;
glintligo 1:1e3eb2d1496b 29 w3 = 0;
glintligo 1:1e3eb2d1496b 30 w4 = 0;
glintligo 0:e63858fec119 31 while(1)
glintligo 0:e63858fec119 32 {
glintligo 1:1e3eb2d1496b 33
glintligo 0:e63858fec119 34 }
glintligo 0:e63858fec119 35 }
glintligo 1:1e3eb2d1496b 36
glintligo 1:1e3eb2d1496b 37 void time_ticker(){
glintligo 1:1e3eb2d1496b 38 x = wheel.getPulses();
glintligo 1:1e3eb2d1496b 39 y = wheel2.getPulses();
glintligo 1:1e3eb2d1496b 40 wheel.reset();
glintligo 1:1e3eb2d1496b 41 wheel2.reset();
glintligo 1:1e3eb2d1496b 42 pc.printf("x:%d y:%d\n",x,y);
glintligo 1:1e3eb2d1496b 43 }
glintligo 1:1e3eb2d1496b 44
glintligo 1:1e3eb2d1496b 45 void serialread(){
glintligo 1:1e3eb2d1496b 46 switch (pc.getc())
glintligo 1:1e3eb2d1496b 47 {
glintligo 1:1e3eb2d1496b 48 case '1':
glintligo 1:1e3eb2d1496b 49 w1=0;
glintligo 1:1e3eb2d1496b 50 w4=0;
glintligo 1:1e3eb2d1496b 51 break;
glintligo 1:1e3eb2d1496b 52 case '2':
glintligo 1:1e3eb2d1496b 53 w1=1;
glintligo 1:1e3eb2d1496b 54 w4=1;
glintligo 1:1e3eb2d1496b 55 break;
glintligo 1:1e3eb2d1496b 56 default:
glintligo 1:1e3eb2d1496b 57 break;
glintligo 1:1e3eb2d1496b 58 }
glintligo 1:1e3eb2d1496b 59 }