Committer:
simon
Date:
Tue Dec 01 11:01:48 2009 +0000
Revision:
0:c795e64e9eb0
Child:
1:4115ae4cbc76

        

Who changed what in which revision?

UserRevisionLine numberNew contents of line
simon 0:c795e64e9eb0 1 // Testing PWM channel 0 vs channel 1 behaviour, sford
simon 0:c795e64e9eb0 2
simon 0:c795e64e9eb0 3 #include "mbed.h"
simon 0:c795e64e9eb0 4
simon 0:c795e64e9eb0 5 PwmOut pwm1(p26);
simon 0:c795e64e9eb0 6 PwmOut pwm2(p25);
simon 0:c795e64e9eb0 7
simon 0:c795e64e9eb0 8 int main() {
simon 0:c795e64e9eb0 9
simon 0:c795e64e9eb0 10 uint32_t t = 10000;
simon 0:c795e64e9eb0 11
simon 0:c795e64e9eb0 12 // set period
simon 0:c795e64e9eb0 13 LPC_PWM1->MR0 = t;
simon 0:c795e64e9eb0 14 LPC_PWM1->LER |= 1 << 0;
simon 0:c795e64e9eb0 15
simon 0:c795e64e9eb0 16 while (1) {
simon 0:c795e64e9eb0 17
simon 0:c795e64e9eb0 18 // set pulsewidth to 100%
simon 0:c795e64e9eb0 19 LPC_PWM1->MR1 = t;
simon 0:c795e64e9eb0 20 LPC_PWM1->MR2 = t;
simon 0:c795e64e9eb0 21 LPC_PWM1->LER |= 0x6;
simon 0:c795e64e9eb0 22
simon 0:c795e64e9eb0 23 // wait for update
simon 0:c795e64e9eb0 24 while (LPC_PWM1->LER);
simon 0:c795e64e9eb0 25
simon 0:c795e64e9eb0 26 // set pulsewidth less than 100%
simon 0:c795e64e9eb0 27 LPC_PWM1->MR1 = t - 500;
simon 0:c795e64e9eb0 28 LPC_PWM1->MR2 = t - 500;
simon 0:c795e64e9eb0 29 LPC_PWM1->LER |= 0x6;
simon 0:c795e64e9eb0 30
simon 0:c795e64e9eb0 31 // wait for update
simon 0:c795e64e9eb0 32 while (LPC_PWM1->LER);
simon 0:c795e64e9eb0 33 }
simon 0:c795e64e9eb0 34 }