Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
main.cpp
00001 #include "mbed.h" 00002 00003 PwmOut led( LED1 ); 00004 PwmOut out( p21 ); 00005 Serial pc( USBTX, USBRX ); 00006 00007 #define PWM_CHANGE_STEPS 0.05 00008 #define PERIOD_CHANGE_FACTOR 2.0 00009 00010 int main() 00011 { 00012 float period = 0.001; 00013 float pwm = 0.5; 00014 00015 printf( "\r\n\r\nPwmOut period test\r\n" ); 00016 printf( " use arrow key to change parameters : \r\n left/right for period, up/down for PWM ratio\r\n" ); 00017 00018 out.period( period ); 00019 out = pwm; 00020 led = pwm; 00021 00022 printf( "period = %12g sec, pwm = %3.0f\r", period, pwm * 100.0 ); 00023 fflush( stdout ); 00024 00025 while(1) { 00026 if ( pc.readable() ) { 00027 switch ( pc.getc() ) { 00028 case 0x1B : 00029 if ( 0x5B == pc.getc() ) 00030 // arrow key pressed 00031 switch ( pc.getc() ) { 00032 case 0x44 : // left arrow 00033 period /= PERIOD_CHANGE_FACTOR; 00034 break; 00035 case 0x43 : // right arrow 00036 period *= PERIOD_CHANGE_FACTOR; 00037 break; 00038 case 0x41 : // up arrow 00039 pwm += (pwm >= (1 - PWM_CHANGE_STEPS)) ? 0.0 : PWM_CHANGE_STEPS; 00040 break; 00041 case 0x42 : // down arrow 00042 pwm -= (pwm <= PWM_CHANGE_STEPS) ? 0.0 : PWM_CHANGE_STEPS; 00043 break; 00044 default : 00045 break; 00046 } 00047 } 00048 out.period( period ); 00049 out = pwm; 00050 led = pwm; 00051 00052 printf( "period = %12g sec, pwm = %3.0f\r", period, pwm * 100.0 ); 00053 fflush( stdout ); 00054 } 00055 } 00056 } 00057
Generated on Fri Jul 15 2022 02:26:04 by
1.7.2