More culling TS80P
This commit is contained in:
@@ -1198,7 +1198,7 @@ HAL_StatusTypeDef HAL_ADC_Start_DMA(ADC_HandleTypeDef *hadc, uint32_t *pData, ui
|
||||
hadc->DMA_Handle->XferHalfCpltCallback = ADC_DMAHalfConvCplt;
|
||||
|
||||
/* Set the DMA error callback */
|
||||
hadc->DMA_Handle->XferErrorCallback = ADC_DMAError;
|
||||
// hadc->DMA_Handle->XferErrorCallback = ADC_DMAError;
|
||||
|
||||
/* Manage ADC and DMA start: ADC overrun interruption, DMA start, ADC */
|
||||
/* start (in case of SW start): */
|
||||
@@ -1455,19 +1455,19 @@ __weak void HAL_ADC_LevelOutOfWindowCallback(ADC_HandleTypeDef *hadc) {
|
||||
*/
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief ADC error callback in non blocking mode
|
||||
* (ADC conversion with interruption or transfer by DMA)
|
||||
* @param hadc: ADC handle
|
||||
* @retval None
|
||||
*/
|
||||
__weak void HAL_ADC_ErrorCallback(ADC_HandleTypeDef *hadc) {
|
||||
/* Prevent unused argument(s) compilation warning */
|
||||
UNUSED(hadc);
|
||||
/* NOTE : This function should not be modified. When the callback is needed,
|
||||
function HAL_ADC_ErrorCallback must be implemented in the user file.
|
||||
*/
|
||||
}
|
||||
// /**
|
||||
// * @brief ADC error callback in non blocking mode
|
||||
// * (ADC conversion with interruption or transfer by DMA)
|
||||
// * @param hadc: ADC handle
|
||||
// * @retval None
|
||||
// */
|
||||
// __weak void HAL_ADC_ErrorCallback(ADC_HandleTypeDef *hadc) {
|
||||
// /* Prevent unused argument(s) compilation warning */
|
||||
// UNUSED(hadc);
|
||||
// /* NOTE : This function should not be modified. When the callback is needed,
|
||||
// function HAL_ADC_ErrorCallback must be implemented in the user file.
|
||||
// */
|
||||
// }
|
||||
|
||||
/**
|
||||
* @}
|
||||
@@ -1823,24 +1823,24 @@ void ADC_DMAHalfConvCplt(DMA_HandleTypeDef *hdma) {
|
||||
HAL_ADC_ConvHalfCpltCallback(hadc);
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief DMA error callback
|
||||
* @param hdma: pointer to DMA handle.
|
||||
* @retval None
|
||||
*/
|
||||
void ADC_DMAError(DMA_HandleTypeDef *hdma) {
|
||||
/* Retrieve ADC handle corresponding to current DMA handle */
|
||||
ADC_HandleTypeDef *hadc = (ADC_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent;
|
||||
// /**
|
||||
// * @brief DMA error callback
|
||||
// * @param hdma: pointer to DMA handle.
|
||||
// * @retval None
|
||||
// */
|
||||
// void ADC_DMAError(DMA_HandleTypeDef *hdma) {
|
||||
// /* Retrieve ADC handle corresponding to current DMA handle */
|
||||
// ADC_HandleTypeDef *hadc = (ADC_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent;
|
||||
|
||||
/* Set ADC state */
|
||||
SET_BIT(hadc->State, HAL_ADC_STATE_ERROR_DMA);
|
||||
// /* Set ADC state */
|
||||
// SET_BIT(hadc->State, HAL_ADC_STATE_ERROR_DMA);
|
||||
|
||||
/* Set ADC error code to DMA error */
|
||||
SET_BIT(hadc->ErrorCode, HAL_ADC_ERROR_DMA);
|
||||
// /* Set ADC error code to DMA error */
|
||||
// SET_BIT(hadc->ErrorCode, HAL_ADC_ERROR_DMA);
|
||||
|
||||
/* Error callback */
|
||||
HAL_ADC_ErrorCallback(hadc);
|
||||
}
|
||||
// /* Error callback */
|
||||
// HAL_ADC_ErrorCallback(hadc);
|
||||
// }
|
||||
|
||||
/**
|
||||
* @}
|
||||
|
||||
@@ -603,29 +603,29 @@ void HAL_DMA_IRQHandler(DMA_HandleTypeDef *hdma) {
|
||||
}
|
||||
|
||||
/* Transfer Error Interrupt management **************************************/
|
||||
else if ((RESET != (flag_it & (DMA_FLAG_TE1 << hdma->ChannelIndex))) && (RESET != (source_it & DMA_IT_TE))) {
|
||||
/* When a DMA transfer error occurs */
|
||||
/* A hardware clear of its EN bits is performed */
|
||||
/* Disable ALL DMA IT */
|
||||
__HAL_DMA_DISABLE_IT(hdma, (DMA_IT_TC | DMA_IT_HT | DMA_IT_TE));
|
||||
// else if ((RESET != (flag_it & (DMA_FLAG_TE1 << hdma->ChannelIndex))) && (RESET != (source_it & DMA_IT_TE))) {
|
||||
// /* When a DMA transfer error occurs */
|
||||
// /* A hardware clear of its EN bits is performed */
|
||||
// /* Disable ALL DMA IT */
|
||||
// __HAL_DMA_DISABLE_IT(hdma, (DMA_IT_TC | DMA_IT_HT | DMA_IT_TE));
|
||||
|
||||
/* Clear all flags */
|
||||
hdma->DmaBaseAddress->IFCR = (DMA_ISR_GIF1 << hdma->ChannelIndex);
|
||||
// /* Clear all flags */
|
||||
// hdma->DmaBaseAddress->IFCR = (DMA_ISR_GIF1 << hdma->ChannelIndex);
|
||||
|
||||
/* Update error code */
|
||||
hdma->ErrorCode = HAL_DMA_ERROR_TE;
|
||||
// /* Update error code */
|
||||
// hdma->ErrorCode = HAL_DMA_ERROR_TE;
|
||||
|
||||
/* Change the DMA state */
|
||||
hdma->State = HAL_DMA_STATE_READY;
|
||||
// /* Change the DMA state */
|
||||
// hdma->State = HAL_DMA_STATE_READY;
|
||||
|
||||
/* Process Unlocked */
|
||||
__HAL_UNLOCK(hdma);
|
||||
// /* Process Unlocked */
|
||||
// __HAL_UNLOCK(hdma);
|
||||
|
||||
if (hdma->XferErrorCallback != NULL) {
|
||||
/* Transfer error callback */
|
||||
hdma->XferErrorCallback(hdma);
|
||||
}
|
||||
}
|
||||
// if (hdma->XferErrorCallback != NULL) {
|
||||
// /* Transfer error callback */
|
||||
// hdma->XferErrorCallback(hdma);
|
||||
// }
|
||||
// }
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
@@ -3338,108 +3338,25 @@ void HAL_TIM_IRQHandler(TIM_HandleTypeDef *htim) {
|
||||
/* Capture compare 1 event */
|
||||
if (__HAL_TIM_GET_FLAG(htim, TIM_FLAG_CC1) != RESET) {
|
||||
if (__HAL_TIM_GET_IT_SOURCE(htim, TIM_IT_CC1) != RESET) {
|
||||
{
|
||||
__HAL_TIM_CLEAR_IT(htim, TIM_IT_CC1);
|
||||
htim->Channel = HAL_TIM_ACTIVE_CHANNEL_1;
|
||||
|
||||
/* Input capture event */
|
||||
if ((htim->Instance->CCMR1 & TIM_CCMR1_CC1S) != 0x00U) {
|
||||
#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1)
|
||||
htim->IC_CaptureCallback(htim);
|
||||
#else
|
||||
// HAL_TIM_IC_CaptureCallback(htim);
|
||||
#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */
|
||||
}
|
||||
/* Output compare event */
|
||||
else {
|
||||
#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1)
|
||||
htim->OC_DelayElapsedCallback(htim);
|
||||
htim->PWM_PulseFinishedCallback(htim);
|
||||
#else
|
||||
// HAL_TIM_OC_DelayElapsedCallback(htim);
|
||||
// HAL_TIM_PWM_PulseFinishedCallback(htim);
|
||||
#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */
|
||||
}
|
||||
htim->Channel = HAL_TIM_ACTIVE_CHANNEL_CLEARED;
|
||||
}
|
||||
{ __HAL_TIM_CLEAR_IT(htim, TIM_IT_CC1); }
|
||||
}
|
||||
}
|
||||
/* Capture compare 2 event */
|
||||
if (__HAL_TIM_GET_FLAG(htim, TIM_FLAG_CC2) != RESET) {
|
||||
if (__HAL_TIM_GET_IT_SOURCE(htim, TIM_IT_CC2) != RESET) {
|
||||
__HAL_TIM_CLEAR_IT(htim, TIM_IT_CC2);
|
||||
htim->Channel = HAL_TIM_ACTIVE_CHANNEL_2;
|
||||
/* Input capture event */
|
||||
if ((htim->Instance->CCMR1 & TIM_CCMR1_CC2S) != 0x00U) {
|
||||
#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1)
|
||||
htim->IC_CaptureCallback(htim);
|
||||
#else
|
||||
// HAL_TIM_IC_CaptureCallback(htim);
|
||||
#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */
|
||||
}
|
||||
/* Output compare event */
|
||||
else {
|
||||
#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1)
|
||||
htim->OC_DelayElapsedCallback(htim);
|
||||
htim->PWM_PulseFinishedCallback(htim);
|
||||
#else
|
||||
// HAL_TIM_OC_DelayElapsedCallback(htim);
|
||||
// HAL_TIM_PWM_PulseFinishedCallback(htim);
|
||||
#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */
|
||||
}
|
||||
htim->Channel = HAL_TIM_ACTIVE_CHANNEL_CLEARED;
|
||||
}
|
||||
}
|
||||
/* Capture compare 3 event */
|
||||
if (__HAL_TIM_GET_FLAG(htim, TIM_FLAG_CC3) != RESET) {
|
||||
if (__HAL_TIM_GET_IT_SOURCE(htim, TIM_IT_CC3) != RESET) {
|
||||
__HAL_TIM_CLEAR_IT(htim, TIM_IT_CC3);
|
||||
htim->Channel = HAL_TIM_ACTIVE_CHANNEL_3;
|
||||
/* Input capture event */
|
||||
if ((htim->Instance->CCMR2 & TIM_CCMR2_CC3S) != 0x00U) {
|
||||
#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1)
|
||||
htim->IC_CaptureCallback(htim);
|
||||
#else
|
||||
// HAL_TIM_IC_CaptureCallback(htim);
|
||||
#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */
|
||||
}
|
||||
/* Output compare event */
|
||||
else {
|
||||
#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1)
|
||||
htim->OC_DelayElapsedCallback(htim);
|
||||
htim->PWM_PulseFinishedCallback(htim);
|
||||
#else
|
||||
// HAL_TIM_OC_DelayElapsedCallback(htim);
|
||||
// HAL_TIM_PWM_PulseFinishedCallback(htim);
|
||||
#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */
|
||||
}
|
||||
htim->Channel = HAL_TIM_ACTIVE_CHANNEL_CLEARED;
|
||||
}
|
||||
}
|
||||
/* Capture compare 4 event */
|
||||
if (__HAL_TIM_GET_FLAG(htim, TIM_FLAG_CC4) != RESET) {
|
||||
if (__HAL_TIM_GET_IT_SOURCE(htim, TIM_IT_CC4) != RESET) {
|
||||
__HAL_TIM_CLEAR_IT(htim, TIM_IT_CC4);
|
||||
htim->Channel = HAL_TIM_ACTIVE_CHANNEL_4;
|
||||
/* Input capture event */
|
||||
if ((htim->Instance->CCMR2 & TIM_CCMR2_CC4S) != 0x00U) {
|
||||
#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1)
|
||||
htim->IC_CaptureCallback(htim);
|
||||
#else
|
||||
// HAL_TIM_IC_CaptureCallback(htim);
|
||||
#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */
|
||||
}
|
||||
/* Output compare event */
|
||||
else {
|
||||
#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1)
|
||||
htim->OC_DelayElapsedCallback(htim);
|
||||
htim->PWM_PulseFinishedCallback(htim);
|
||||
#else
|
||||
// HAL_TIM_OC_DelayElapsedCallback(htim);
|
||||
// HAL_TIM_PWM_PulseFinishedCallback(htim);
|
||||
#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */
|
||||
}
|
||||
htim->Channel = HAL_TIM_ACTIVE_CHANNEL_CLEARED;
|
||||
}
|
||||
}
|
||||
/* TIM Update event */
|
||||
@@ -4836,19 +4753,19 @@ uint32_t HAL_TIM_ReadCapturedValue(TIM_HandleTypeDef *htim, uint32_t Channel) {
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* @brief Period elapsed callback in non-blocking mode
|
||||
* @param htim TIM handle
|
||||
* @retval None
|
||||
*/
|
||||
__weak void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim) {
|
||||
/* Prevent unused argument(s) compilation warning */
|
||||
UNUSED(htim);
|
||||
// /**
|
||||
// * @brief Period elapsed callback in non-blocking mode
|
||||
// * @param htim TIM handle
|
||||
// * @retval None
|
||||
// */
|
||||
// __weak void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim) {
|
||||
// /* Prevent unused argument(s) compilation warning */
|
||||
// UNUSED(htim);
|
||||
|
||||
/* NOTE : This function should not be modified, when the callback is needed,
|
||||
the HAL_TIM_PeriodElapsedCallback could be implemented in the user file
|
||||
*/
|
||||
}
|
||||
// /* NOTE : This function should not be modified, when the callback is needed,
|
||||
// the HAL_TIM_PeriodElapsedCallback could be implemented in the user file
|
||||
// */
|
||||
// }
|
||||
|
||||
/**
|
||||
* @brief Period elapsed half complete callback in non-blocking mode
|
||||
@@ -5626,12 +5543,6 @@ static void TIM_DMADelayPulseCplt(DMA_HandleTypeDef *hdma) {
|
||||
/* nothing to do */
|
||||
}
|
||||
|
||||
#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1)
|
||||
htim->PWM_PulseFinishedCallback(htim);
|
||||
#else
|
||||
// HAL_TIM_PWM_PulseFinishedCallback(htim);
|
||||
#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */
|
||||
|
||||
htim->Channel = HAL_TIM_ACTIVE_CHANNEL_CLEARED;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user