[COLOR=#005032][COLOR=#005032]PWM_TIMERCFG_Type [/COLOR][/COLOR]PWMCfgDat; [COLOR=#005032][COLOR=#005032]PWM_MATCHCFG_Type[/COLOR][/COLOR] PWMMatchCfgDat; [COLOR=#3f7f5f][COLOR=#3f7f5f]/* Initialize PWM peripheral in timer mode, prescale value = 1 (absolute value - tick value) */[/COLOR][/COLOR] PWMCfgDat.[COLOR=#0000c0][COLOR=#0000c0]PrescaleOption[/COLOR][/COLOR] = [I][COLOR=#0000c0][COLOR=#0000c0]PWM_TIMER_PRESCALE_TICKVAL[/COLOR][/COLOR][/I]; PWMCfgDat.[COLOR=#0000c0][COLOR=#0000c0]PrescaleValue[/COLOR][/COLOR] = 1; PWM_Init(LPC_PWM1, [I][COLOR=#0000c0][COLOR=#0000c0]PWM_MODE_TIMER[/COLOR][/COLOR][/I], ([B][COLOR=#7f0055][COLOR=#7f0055]void[/COLOR][/COLOR][/B] *) &PWMCfgDat); [COLOR=#3f7f5f][COLOR=#3f7f5f]/* Set PWM frequency @ 1kHz */[/COLOR][/COLOR] PWM_MatchUpdate(LPC_PWM1, 0, 25000, [I][COLOR=#0000c0][COLOR=#0000c0]PWM_MATCH_UPDATE_NOW[/COLOR][/COLOR][/I]); PWMMatchCfgDat.[COLOR=#0000c0][COLOR=#0000c0]IntOnMatch[/COLOR][/COLOR] = [I][COLOR=#0000c0][COLOR=#0000c0]DISABLE[/COLOR][/COLOR][/I]; PWMMatchCfgDat.[COLOR=#0000c0][COLOR=#0000c0]MatchChannel[/COLOR][/COLOR] = 0; PWMMatchCfgDat.[COLOR=#0000c0][COLOR=#0000c0]ResetOnMatch[/COLOR][/COLOR] = [I][COLOR=#0000c0][COLOR=#0000c0]ENABLE[/COLOR][/COLOR][/I]; PWMMatchCfgDat.[COLOR=#0000c0][COLOR=#0000c0]StopOnMatch[/COLOR][/COLOR] = [I][COLOR=#0000c0][COLOR=#0000c0]DISABLE[/COLOR][/COLOR][/I]; PWM_ConfigMatch(LPC_PWM1, &PWMMatchCfgDat); [COLOR=#3f7f5f][COLOR=#3f7f5f]/* Set match value for PWM channel 1 = 1/4 rate*/[/COLOR][/COLOR] PWM_MatchUpdate(LPC_PWM1, 1, 6250, [I][COLOR=#0000c0][COLOR=#0000c0]PWM_MATCH_UPDATE_NOW[/COLOR][/COLOR][/I]); PWMMatchCfgDat.[COLOR=#0000c0][COLOR=#0000c0]IntOnMatch[/COLOR][/COLOR] = [I][COLOR=#0000c0][COLOR=#0000c0]DISABLE[/COLOR][/COLOR][/I]; PWMMatchCfgDat.[COLOR=#0000c0][COLOR=#0000c0]MatchChannel[/COLOR][/COLOR] = 1; PWMMatchCfgDat.[COLOR=#0000c0][COLOR=#0000c0]ResetOnMatch[/COLOR][/COLOR] = [I][COLOR=#0000c0][COLOR=#0000c0]DISABLE[/COLOR][/COLOR][/I]; PWMMatchCfgDat.[COLOR=#0000c0][COLOR=#0000c0]StopOnMatch[/COLOR][/COLOR] = [I][COLOR=#0000c0][COLOR=#0000c0]DISABLE[/COLOR][/COLOR][/I]; PWM_ConfigMatch(LPC_PWM1, &PWMMatchCfgDat); [COLOR=#3f7f5f][COLOR=#3f7f5f]/* Enable PWM Channel Output */[/COLOR][/COLOR] PWM_ChannelCmd(LPC_PWM1, 1, [I][COLOR=#0000c0][COLOR=#0000c0]ENABLE[/COLOR][/COLOR][/I]); PWM_ResetCounter(LPC_PWM1); PWM_CounterCmd(LPC_PWM1, [I][COLOR=#0000c0][COLOR=#0000c0]ENABLE[/COLOR][/COLOR][/I]); PWM_Cmd(LPC_PWM1, [I][COLOR=#0000c0][COLOR=#0000c0]ENABLE[/COLOR][/COLOR][/I]); |