Exemplo n.º 1
0
/**
  * @brief  Initializes the TIM4 Time Base Unit according to the specified parameters.
  * @param  TIM4_Prescaler : This parameter can be any of the @Ref TIM2_Prescaler_TypeDef enumeration.
  * @param  TIM4_Period : This parameter must be a value between 0x00 and 0xFF.
  * @retval None
  */
void TIM4_TimeBaseInit(TIM4_Prescaler_TypeDef TIM4_Prescaler,
                       uint8_t TIM4_Period)
{
  /* Check TIM4 prescaler value */
  assert_param(IS_TIM4_Prescaler(TIM4_Prescaler));
  /* Set the Autoreload value */
  TIM4->ARR = (uint8_t)(TIM4_Period);
  /* Set the Prescaler value */
  TIM4->PSCR = (uint8_t)(TIM4_Prescaler);
}
Exemplo n.º 2
0
/**
  * @brief  Initializes the TIM4 Time Base Unit according to the specified parameters.
  * @param  TIM4_Prescaler: Prescaler
  *          This parameter can be one of the following values:
  *            @arg TIM4_Prescaler_1: Time base Prescaler = 1 (No effect)
  *            @arg TIM4_Prescaler_2: Time base Prescaler = 2
  *            @arg TIM4_Prescaler_4: Time base Prescaler = 4
  *            @arg TIM4_Prescaler_8: Time base Prescaler = 8
  *            @arg TIM4_Prescaler_16: Time base Prescaler = 16
  *            @arg TIM4_Prescaler_32: Time base Prescaler = 32
  *            @arg TIM4_Prescaler_64: Time base Prescaler = 64
  *            @arg TIM4_Prescaler_128: Time base Prescaler = 128
  *            @arg TIM4_Prescaler_256: Time base Prescaler = 256
  *            @arg TIM4_Prescaler_512: Time base Prescaler = 512
  *            @arg TIM4_Prescaler_1024: Time base Prescaler = 1024
  *            @arg TIM4_Prescaler_2048: Time base Prescaler = 2048
  *            @arg TIM4_Prescaler_4096: Time base Prescaler = 4096
  *            @arg TIM4_Prescaler_8192: Time base Prescaler = 8192
  *            @arg TIM4_Prescaler_16384: Time base Prescaler = 16384
  *            @arg TIM4_Prescaler_32768: Time base Prescaler = 32768                              
  * @param  TIM4_Period: This parameter must be a value between 0x00 and 0xFF.
  * @retval None
  */
void TIM4_TimeBaseInit(TIM4_Prescaler_TypeDef TIM4_Prescaler,
                       uint8_t TIM4_Period)
{
  /* Check TIM4 prescaler value */
  assert_param(IS_TIM4_Prescaler(TIM4_Prescaler));
  /* Set the Autoreload value */
  TIM4->ARR = (uint8_t)(TIM4_Period);
  /* Set the Prescaler value */
  TIM4->PSCR = (uint8_t)(TIM4_Prescaler);

  /* Generate an update event to reload the Prescaler value immediately */
  TIM4->EGR = TIM4_EventSource_Update;
}
Exemplo n.º 3
0
/**
  * @brief  Configures the TIM4 Prescaler.
  * @param  Prescaler: Specifies the Prescaler Register value
  *          This parameter can be one of the following values:
  *            @arg TIM4_Prescaler_1: Time base Prescaler = 1 (No effect)
  *            @arg TIM4_Prescaler_2: Time base Prescaler = 2
  *            @arg TIM4_Prescaler_4: Time base Prescaler = 4
  *            @arg TIM4_Prescaler_8: Time base Prescaler = 8
  *            @arg TIM4_Prescaler_16: Time base Prescaler = 16
  *            @arg TIM4_Prescaler_32: Time base Prescaler = 32
  *            @arg TIM4_Prescaler_64: Time base Prescaler = 64
  *            @arg TIM4_Prescaler_128: Time base Prescaler = 128
  *            @arg TIM4_Prescaler_256: Time base Prescaler = 256
  *            @arg TIM4_Prescaler_512: Time base Prescaler = 512
  *            @arg TIM4_Prescaler_1024: Time base Prescaler = 1024
  *            @arg TIM4_Prescaler_2048: Time base Prescaler = 2048
  *            @arg TIM4_Prescaler_4096: Time base Prescaler = 4096
  *            @arg TIM4_Prescaler_8192: Time base Prescaler = 8192
  *            @arg TIM4_Prescaler_16384: Time base Prescaler = 16384
  *            @arg TIM4_Prescaler_32768: Time base Prescaler = 32768
  * @param  TIM4_PSCReloadMode: Specifies the TIM4 Prescaler Reload mode.
  *          This parameter can be one of the following values:
  *            @arg TIM4_PSCReloadMode_Update: Prescaler value is reloaded at every update
  *            @arg TIM4_PSCReloadMode_Immediate: Prescaler value is reloaded immediatly
  * @retval None
  */
void TIM4_PrescalerConfig(TIM4_Prescaler_TypeDef Prescaler,
                          TIM4_PSCReloadMode_TypeDef TIM4_PSCReloadMode)
{
    /* Check the parameters */
    assert_param(IS_TIM4_Prescaler_RELOAD(TIM4_PSCReloadMode));
    assert_param(IS_TIM4_Prescaler(Prescaler));

    /* Set the Prescaler value */
    TIM4->PSCR = (uint8_t) Prescaler;

    /* Set or reset the UG Bit */
    if (TIM4_PSCReloadMode == TIM4_PSCReloadMode_Immediate) {
        TIM4->EGR |= TIM4_EGR_UG ;
    } else {
        TIM4->EGR &= (uint8_t)(~TIM4_EGR_UG) ;
    }
}