A program which test the PWMAverage library internally: just connect pins 23, 29 and 30 short and check it on the terminal
main.cpp@1:195f900732fe, 2012-08-29 (annotated)
- Committer:
- p07gbar
- Date:
- Wed Aug 29 12:03:06 2012 +0000
- Revision:
- 1:195f900732fe
- Parent:
- 0:24cbafca7f70
Working
Who changed what in which revision?
User | Revision | Line number | New 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 | } |