PPM loopback test of PulsePosition library

Dependencies:   PulsePosition mbed

Committer:
manitou
Date:
Thu Apr 21 16:35:13 2016 +0000
Revision:
0:4685db4893be
initial version of loopback test of PulsePosition library

Who changed what in which revision?

UserRevisionLine numberNew contents of line
manitou 0:4685db4893be 1 // ppmtest port of teensy 3 PulsePosition lib
manitou 0:4685db4893be 2 // use PWM pins on FTM0 D3,D5,D6,D7,D8,D9
manitou 0:4685db4893be 3 #include "mbed.h"
manitou 0:4685db4893be 4 #include "PulsePosition.h"
manitou 0:4685db4893be 5
manitou 0:4685db4893be 6 volatile extern uint32_t ticks;
manitou 0:4685db4893be 7 // Simple loopback test: create 1 output to transmit
manitou 0:4685db4893be 8 // test pulses, and 1 input to receive the pulses
manitou 0:4685db4893be 9 PulsePositionOutput myOut;
manitou 0:4685db4893be 10 PulsePositionInput myIn;
manitou 0:4685db4893be 11
manitou 0:4685db4893be 12 main() {
manitou 0:4685db4893be 13 printf("\nSystemCoreClock %d %s %s\n",SystemCoreClock,__TIME__,__DATE__);
manitou 0:4685db4893be 14 myOut.begin(D3); // connect pins D3 D5
manitou 0:4685db4893be 15 myIn.begin(D5);
manitou 0:4685db4893be 16 printf("%0X\n",PORTA_PCR1);
manitou 0:4685db4893be 17 myOut.write(1, 600.03);
manitou 0:4685db4893be 18 myOut.write(2, 1500);
manitou 0:4685db4893be 19 myOut.write(3, 759.24);
manitou 0:4685db4893be 20 // slots 4 and 5 will default to 1500 us
manitou 0:4685db4893be 21 myOut.write(6, 1234.56);
manitou 0:4685db4893be 22
manitou 0:4685db4893be 23 printf("looping\n");
manitou 0:4685db4893be 24 while(true) {
manitou 0:4685db4893be 25 static int count=0;
manitou 0:4685db4893be 26 int i, num;
manitou 0:4685db4893be 27
manitou 0:4685db4893be 28 // Every time new data arrives, simply print it
manitou 0:4685db4893be 29
manitou 0:4685db4893be 30 num = myIn.available();
manitou 0:4685db4893be 31 if (num > 0) {
manitou 0:4685db4893be 32 count = count + 1;
manitou 0:4685db4893be 33 printf("%d : ",count);
manitou 0:4685db4893be 34 for (i=1; i <= num; i++) {
manitou 0:4685db4893be 35 float val = myIn.read(i);
manitou 0:4685db4893be 36 printf("%f ",val);
manitou 0:4685db4893be 37 }
manitou 0:4685db4893be 38 printf("\n");
manitou 0:4685db4893be 39 }
manitou 0:4685db4893be 40 }
manitou 0:4685db4893be 41 }