A program which test the PWMAverage library internally: just connect pins 23, 29 and 30 short and check it on the terminal

Dependencies:   PWMAverage mbed

Committer:
p07gbar
Date:
Wed Aug 29 12:03:06 2012 +0000
Revision:
1:195f900732fe
Parent:
0:24cbafca7f70
Working

Who changed what in which revision?

UserRevisionLine numberNew contents of line
p07gbar 0:24cbafca7f70 1 // A program which test the PWMAverage library internally: just connect pins 23, 29 and 30 short and check it on the terminal
p07gbar 0:24cbafca7f70 2
p07gbar 0:24cbafca7f70 3 #include "mbed.h"
p07gbar 0:24cbafca7f70 4 #include "PWMAverage.h"
p07gbar 0:24cbafca7f70 5
p07gbar 0:24cbafca7f70 6 DigitalOut myled(LED1);
p07gbar 0:24cbafca7f70 7 DigitalIn button (p17);
p07gbar 0:24cbafca7f70 8 PwmOut out(p23);
p07gbar 0:24cbafca7f70 9 AnalogIn in(p19);
p07gbar 0:24cbafca7f70 10
p07gbar 0:24cbafca7f70 11 float val;
p07gbar 0:24cbafca7f70 12 float increment = 0.01;
p07gbar 0:24cbafca7f70 13
p07gbar 0:24cbafca7f70 14 PWMAverage pa(p29,p30);
p07gbar 0:24cbafca7f70 15 Timer tmr;
p07gbar 0:24cbafca7f70 16
p07gbar 0:24cbafca7f70 17 int main()
p07gbar 0:24cbafca7f70 18 {
p07gbar 0:24cbafca7f70 19 button.mode(PullDown);
p07gbar 0:24cbafca7f70 20
p07gbar 0:24cbafca7f70 21 out.period(0.0001);
p07gbar 0:24cbafca7f70 22 printf("Ready\n\r");
p07gbar 0:24cbafca7f70 23 val = 0;
p07gbar 0:24cbafca7f70 24 while(1)
p07gbar 0:24cbafca7f70 25 {
p07gbar 0:24cbafca7f70 26
p07gbar 0:24cbafca7f70 27 val += increment;
p07gbar 0:24cbafca7f70 28
p07gbar 0:24cbafca7f70 29 if(val >= 1) return;
p07gbar 0:24cbafca7f70 30
p07gbar 0:24cbafca7f70 31 out = val;
p07gbar 0:24cbafca7f70 32
p07gbar 0:24cbafca7f70 33 pa.reset();
p07gbar 0:24cbafca7f70 34 pa.start();
p07gbar 0:24cbafca7f70 35 tmr.start();
p07gbar 0:24cbafca7f70 36 myled=1;
p07gbar 0:24cbafca7f70 37
p07gbar 0:24cbafca7f70 38 wait(0.5);
p07gbar 0:24cbafca7f70 39
p07gbar 0:24cbafca7f70 40 pa.stop();
p07gbar 0:24cbafca7f70 41 tmr.stop();
p07gbar 0:24cbafca7f70 42 myled=0;
p07gbar 0:24cbafca7f70 43
p07gbar 0:24cbafca7f70 44 printf("PWMAverage read: %.4f, PWM wrote:%.4f\n\r",pa.read(),val);
p07gbar 0:24cbafca7f70 45 wait(0.1);
p07gbar 0:24cbafca7f70 46 }
p07gbar 0:24cbafca7f70 47
p07gbar 0:24cbafca7f70 48 }