DipCortex PwmOut Example

Dependencies:   mbed

Fork of DipCortex-PWM by Carl - SolderSplash Labs

PwmOut Example for the DipCortex

Mbed PwmOut library can use the following pins :

Timer/Match Register	Pinout Options
CT16B0/MR0	p15 (P0_8) and p19 (p1_13)
CT16B0/MR1	p16 (P0_9) and p20 (p1_14)
CT16B0/MR2	p27 (P1_15) and p27 (p1_15)

CT16B1/MR0	p24 (P0_21)
CT16B1/MR1	p9 (P0_22) and p38 (P1_23)

CT32B0/MR0	p17 (P1_24) and p26 (P0_18)
CT32B0/MR1	p29 (P1_25) and p25 (P0_19)
CT32B0/MR2	p35 (P1_26)

Please refer to the Pin Out diagram for the WiFi DipCortex to avoid Pins used to communicate with the CC3000 http://www.soldersplash.co.uk/products/wifi-dipcortex/

Committer:
SolderSplashLabs
Date:
Wed Feb 05 01:28:51 2014 +0000
Revision:
1:a4fac4fed052
Parent:
0:287341b775cc
Child:
2:ab9790e6d19e
work in progress

Who changed what in which revision?

UserRevisionLine numberNew contents of line
SolderSplashLabs 0:287341b775cc 1 #include "mbed.h"
SolderSplashLabs 0:287341b775cc 2
SolderSplashLabs 0:287341b775cc 3 PwmOut pwm1(P1_24);
SolderSplashLabs 0:287341b775cc 4 PwmOut pwm2(P1_25);
SolderSplashLabs 0:287341b775cc 5 PwmOut pwm3(P1_26);
SolderSplashLabs 0:287341b775cc 6
SolderSplashLabs 0:287341b775cc 7 PwmOut pwm4(P0_8);
SolderSplashLabs 0:287341b775cc 8 PwmOut pwm5(P0_9);
SolderSplashLabs 0:287341b775cc 9 PwmOut pwm6(P1_15);
SolderSplashLabs 0:287341b775cc 10
SolderSplashLabs 0:287341b775cc 11 PwmOut pwm7(P0_21);
SolderSplashLabs 0:287341b775cc 12 PwmOut pwm8(P0_22);
SolderSplashLabs 0:287341b775cc 13
SolderSplashLabs 0:287341b775cc 14 int main ( void )
SolderSplashLabs 0:287341b775cc 15 {
SolderSplashLabs 1:a4fac4fed052 16 float pwmStep = 0;
SolderSplashLabs 1:a4fac4fed052 17
SolderSplashLabs 0:287341b775cc 18 // Pwm1, 2 and 3 share a timer so use the same period
SolderSplashLabs 0:287341b775cc 19 pwm1.period_ms(20);
SolderSplashLabs 0:287341b775cc 20 pwm4.period_ms(20);
SolderSplashLabs 0:287341b775cc 21 pwm7.period_ms(20);
SolderSplashLabs 0:287341b775cc 22
SolderSplashLabs 0:287341b775cc 23 while (1)
SolderSplashLabs 0:287341b775cc 24 {
SolderSplashLabs 1:a4fac4fed052 25 pwmStep += 0.01;
SolderSplashLabs 1:a4fac4fed052 26
SolderSplashLabs 1:a4fac4fed052 27 if(pwmStep >= 1.0) {
SolderSplashLabs 1:a4fac4fed052 28 pwmStep = 0;
SolderSplashLabs 0:287341b775cc 29 }
SolderSplashLabs 0:287341b775cc 30
SolderSplashLabs 1:a4fac4fed052 31 pwm1 = pwmStep;
SolderSplashLabs 1:a4fac4fed052 32 pwm2 = pwmStep;
SolderSplashLabs 1:a4fac4fed052 33 pwm3 = pwmStep;
SolderSplashLabs 0:287341b775cc 34
SolderSplashLabs 1:a4fac4fed052 35 pwm4 = pwmStep;
SolderSplashLabs 1:a4fac4fed052 36 pwm5 = pwmStep;
SolderSplashLabs 1:a4fac4fed052 37 pwm6 = pwmStep;
SolderSplashLabs 0:287341b775cc 38
SolderSplashLabs 1:a4fac4fed052 39 pwm7 = pwmStep;
SolderSplashLabs 1:a4fac4fed052 40 pwm8 = pwmStep;
SolderSplashLabs 1:a4fac4fed052 41
SolderSplashLabs 0:287341b775cc 42 wait(0.1);
SolderSplashLabs 0:287341b775cc 43 }
SolderSplashLabs 0:287341b775cc 44 }