/*********************************************************************//** * @brief Configures capture input for PWM peripheral * @param[in] pwmId The Id of the expected PWM component * * @param[in] PWM_CaptureConfigStruct Pointer to a PWM_CAPTURECFG_Type structure * that contains the configuration information for the * specified PWM capture input function. * @return None **********************************************************************/ void PWM_ConfigCapture(uint8_t pwmId, PWM_CAPTURECFG_Type *PWM_CaptureConfigStruct) { LPC_PWM_TypeDef* pPwm = PWM_GetPointer(pwmId); if (PWM_CaptureConfigStruct->RisingEdge == ENABLE) { pPwm->CCR |= PWM_CCR_CAP_RISING(PWM_CaptureConfigStruct->CaptureChannel); } else { pPwm->CCR &= (~ PWM_CCR_CAP_RISING(PWM_CaptureConfigStruct->CaptureChannel)) \ & PWM_CCR_BITMASK; } if (PWM_CaptureConfigStruct->FallingEdge == ENABLE) { pPwm->CCR |= PWM_CCR_CAP_FALLING(PWM_CaptureConfigStruct->CaptureChannel); } else { pPwm->CCR &= (~ PWM_CCR_CAP_FALLING(PWM_CaptureConfigStruct->CaptureChannel)) \ & PWM_CCR_BITMASK; } if (PWM_CaptureConfigStruct->IntOnCaption == ENABLE) { pPwm->CCR |= PWM_CCR_INT_ON_CAP(PWM_CaptureConfigStruct->CaptureChannel); } else { pPwm->CCR &= (~ PWM_CCR_INT_ON_CAP(PWM_CaptureConfigStruct->CaptureChannel)) \ & PWM_CCR_BITMASK; } }
/*********************************************************************//** * @brief Configures capture input for PWM peripheral * @param[in] PWMx PWM peripheral selected, should be LPC_PWM1 * @param[in] PWM_CaptureConfigStruct Pointer to a PWM_CAPTURECFG_Type structure * that contains the configuration information for the * specified PWM capture input function. * @return None **********************************************************************/ void PWM_ConfigCapture(LPC_PWM_TypeDef *PWMx, PWM_CAPTURECFG_Type *PWM_CaptureConfigStruct) { CHECK_PARAM(PARAM_PWMx(PWMx)); CHECK_PARAM(PARAM_PWM1_CAPTURE_CHANNEL(PWM_CaptureConfigStruct->CaptureChannel)); CHECK_PARAM(PARAM_FUNCTIONALSTATE(PWM_CaptureConfigStruct->FallingEdge)); CHECK_PARAM(PARAM_FUNCTIONALSTATE(PWM_CaptureConfigStruct->IntOnCaption)); CHECK_PARAM(PARAM_FUNCTIONALSTATE(PWM_CaptureConfigStruct->RisingEdge)); if (PWM_CaptureConfigStruct->RisingEdge == ENABLE) { PWMx->CCR |= PWM_CCR_CAP_RISING(PWM_CaptureConfigStruct->CaptureChannel); } else { PWMx->CCR &= (~PWM_CCR_CAP_RISING(PWM_CaptureConfigStruct->CaptureChannel)) \ & PWM_CCR_BITMASK; } if (PWM_CaptureConfigStruct->FallingEdge == ENABLE) { PWMx->CCR |= PWM_CCR_CAP_FALLING(PWM_CaptureConfigStruct->CaptureChannel); } else { PWMx->CCR &= (~PWM_CCR_CAP_FALLING(PWM_CaptureConfigStruct->CaptureChannel)) \ & PWM_CCR_BITMASK; } if (PWM_CaptureConfigStruct->IntOnCaption == ENABLE) { PWMx->CCR |= PWM_CCR_INT_ON_CAP(PWM_CaptureConfigStruct->CaptureChannel); } else { PWMx->CCR &= (~PWM_CCR_INT_ON_CAP(PWM_CaptureConfigStruct->CaptureChannel)) \ & PWM_CCR_BITMASK; } }