/**
******************************************************************************
* @file stm32f4xx_tim.c
* @author MCD Application Team
* @version V1.0.0RC1
* @date 25-August-2011
* @brief This file provides firmware functions to manage the following
* functionalities of the TIM peripheral:
* - TimeBase management
* - Output Compare management
* - Input Capture management
* - Advanced-control timers (TIM1 and TIM8) specific features
* - Interrupts, DMA and flags management
* - Clocks management
* - Synchronization management
* - Specific interface management
* - Specific remapping management
*
* @verbatim
*
* ===================================================================
* How to use this driver
* ===================================================================
* This driver provides functions to configure and program the TIM
* of all STM32F4xx devices.
* These functions are split in 9 groups:
*
* 1. TIM TimeBase management: this group includes all needed functions
* to configure the TM Timebase unit:
* - Set/Get Prescaler
* - Set/Get Autoreload
* - Counter modes configuration
* - Set Clock division
* - Select the One Pulse mode
* - Update Request Configuration
* - Update Disable Configuration
* - Auto-Preload Configuration
* - Enable/Disable the counter
*
* 2. TIM Output Compare management: this group includes all needed
* functions to configure the Capture/Compare unit used in Output
* compare mode:
* - Configure each channel, independently, in Output Compare mode
* - Select the output compare modes
* - Select the Polarities of each channel
* - Set/Get the Capture/Compare register values
* - Select the Output Compare Fast mode
* - Select the Output Compare Forced mode
* - Output Compare-Preload Configuration
* - Clear Output Compare Reference
* - Select the OCREF Clear signal
* - Enable/Disable the Capture/Compare Channels
*
* 3. TIM Input Capture management: this group includes all needed
* functions to configure the Capture/Compare unit used in
* Input Capture mode:
* - Configure each channel in input capture mode
* - Configure Channel1/2 in PWM Input mode
* - Set the Input Capture Prescaler
* - Get the Capture/Compare values
*
* 4. Advanced-control timers (TIM1 and TIM8) specific features
* - Configures the Break input, dead time, Lock level, the OSSI,
* the OSSR State and the AOE(automatic output enable)
* - Enable/Disable the TIM peripheral Main Outputs
* - Select the Commutation event
* - Set/Reset the Capture Compare Preload Control bit
*
* 5. TIM interrupts, DMA and flags management
* - Enable/Disable interrupt sources
* - Get flags status
* - Clear flags/ Pending bits
* - Enable/Disable DMA requests
* - Configure DMA burst mode
* - Select CaptureCompare DMA request
*
* 6. TIM clocks management: this group includes all needed functions
* to configure the clock controller unit:
* - Select internal/External clock
* - Select the external clock mode: ETR(Mode1/Mode2), TIx or ITRx
*
* 7. TIM synchronization management: this group includes all needed
* functions to configure the Synchronization unit:
* - Select Input Trigger
* - Select Output Trigger
* - Select Master Slave Mode
* - ETR Configuration when used as external trigger
*
* 8. TIM specific interface management, this group includes all
* needed functions to use the specific TIM interface:
* - Encoder Interface Configuration
* - Select Hall Sensor
*
* 9. TIM specific remapping management includes the Remapping
* configuration of specific timers
*
* @endverbatim
*
******************************************************************************
* @attention
*
* THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS
* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE
* TIME. AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY
* DIRECT, INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING
* FROM THE CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE
* CODING INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.
*
* <h2><center>© COPYRIGHT 2011 STMicroelectronics</center></h2>
******************************************************************************
*/
/* Includes ------------------------------------------------------------------*/
#include "stm32f4xx_tim.h"
#include "stm32f4xx_rcc.h"
/** @addtogroup STM32F4xx_StdPeriph_Driver
* @{
*/
/** @defgroup TIM
* @brief TIM driver modules
* @{
*/
/* Private typedef -----------------------------------------------------------*/
/* Private define ------------------------------------------------------------*/
/* ---------------------- TIM registers bit mask ------------------------ */
#define SMCR_ETR_MASK ((uint16_t)0x00FF)
#define CCMR_OFFSET ((uint16_t)0x0018)
#define CCER_CCE_SET ((uint16_t)0x0001)
#define CCER_CCNE_SET ((uint16_t)0x0004)
#define CCMR_OC13M_MASK ((uint16_t)0xFF8F)
#define CCMR_OC24M_MASK ((uint16_t)0x8FFF)
/* Private macro -------------------------------------------------------------*/
/* Private variables ---------------------------------------------------------*/
/* Private function prototypes -----------------------------------------------*/
static void TI1_Config(TIM_TypeDef* TIMx, uint16_t TIM_ICPolarity, uint16_t TIM_ICSelection,
uint16_t TIM_ICFilter);
static void TI2_Config(TIM_TypeDef* TIMx, uint16_t TIM_ICPolarity, uint16_t TIM_ICSelection,
uint16_t TIM_ICFilter);
static void TI3_Config(TIM_TypeDef* TIMx, uint16_t TIM_ICPolarity, uint16_t TIM_ICSelection,
uint16_t TIM_ICFilter);
static void TI4_Config(TIM_TypeDef* TIMx, uint16_t TIM_ICPolarity, uint16_t TIM_ICSelection,
uint16_t TIM_ICFilter);
/* Private functions ---------------------------------------------------------*/
/** @defgroup TIM_Private_Functions
* @{
*/
/** @defgroup TIM_Group1 TimeBase management functions
* @brief TimeBase management functions
*
@verbatim
===============================================================================
TimeBase management functions
===============================================================================
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
STM32F407 DAC + DMA + Timer 实现任意波形发生器 (397个子文件)
LCD.uvguix.Administrator 174KB
LED.uvgui.Administrator 91KB
BlankPrj.uvgui.Administrator 89KB
DAC.uvguix.Administrator 87KB
keilkilll.bat 399B
stm32f4xx_tim.c 122KB
stm32f4xx_tim.c 122KB
stm32f4xx_tim.c 122KB
stm32f10x_tim.c 106KB
stm32f4xx_rtc.c 101KB
stm32f4xx_rtc.c 100KB
stm32f4xx_rtc.c 100KB
stm32f4xx_rcc.c 97KB
stm32f4xx_rcc.c 97KB
lcd.c 89KB
lcd.c 86KB
stm32f4xx_rcc.c 73KB
stm32f4xx_adc.c 67KB
stm32f4xx_adc.c 67KB
stm32f4xx_adc.c 67KB
stm32f4xx_flash.c 62KB
stm32f4xx_flash.c 62KB
stm32f4xx_can.c 59KB
stm32f4xx_can.c 59KB
stm32f4xx_can.c 59KB
stm32f4xx_cryp_aes.c 57KB
stm32f4xx_cryp_aes.c 57KB
stm32f4xx_usart.c 57KB
stm32f4xx_usart.c 57KB
stm32f4xx_fmc.c 55KB
stm32f4xx_fmc.c 55KB
stm32f4xx_usart.c 55KB
stm32f4xx_i2c.c 53KB
stm32f4xx_i2c.c 53KB
stm32f4xx_dma.c 52KB
stm32f4xx_dma.c 52KB
stm32f4xx_i2c.c 51KB
stm32f4xx_dma.c 51KB
stm32f4xx_spi.c 51KB
stm32f4xx_spi.c 51KB
stm32f4xx_spi.c 51KB
stm32f10x_rcc.c 50KB
system_stm32f4xx.c 47KB
system_stm32f4xx.c 47KB
stm32f4xx_sai.c 45KB
stm32f4xx_sai.c 45KB
stm32f4xx_fsmc.c 41KB
stm32f4xx_fsmc.c 41KB
stm32f4xx_fsmc.c 41KB
stm32f4xx_ltdc.c 39KB
stm32f4xx_ltdc.c 39KB
stm32f4xx_sdio.c 39KB
stm32f4xx_sdio.c 38KB
stm32f4xx_sdio.c 38KB
stm32f4xx_flash.c 37KB
stm32f4xx_pwr.c 37KB
stm32f4xx_pwr.c 37KB
stm32f4xx_cryp.c 35KB
stm32f4xx_cryp.c 35KB
system_stm32f10x.c 32KB
stm32f4xx_cryp.c 32KB
stm32f10x_dma.c 29KB
stm32f10x_sdio.c 28KB
stm32f4xx_dma2d.c 27KB
stm32f4xx_dma2d.c 27KB
stm32f4xx_dac.c 26KB
selftest.c 26KB
stm32f4xx_dac.c 26KB
stm32f4xx_dac.c 26KB
stm32f4xx_hash.c 26KB
stm32f4xx_hash.c 26KB
stm32f4xx_hash.c 25KB
stm32f4xx_gpio.c 25KB
stm32f4xx_gpio.c 25KB
stm32f4xx_pwr.c 24KB
stm32f10x_gpio.c 22KB
stm32f4xx_cryp_aes.c 21KB
system_stm32f4xx.c 21KB
stm32f4xx_gpio.c 21KB
main.c 19KB
stm32f10x_dac.c 19KB
stm32f4xx_dcmi.c 18KB
stm32f4xx_dcmi.c 18KB
stm32f4xx_dcmi.c 18KB
core_cm3.c 17KB
stm32f4xx_rng.c 14KB
stm32f4xx_rng.c 14KB
stm32f4xx_rng.c 14KB
misc.c 11KB
misc.c 11KB
usb_bsp.c 11KB
misc.c 11KB
stm32f4xx_wwdg.c 10KB
stm32f4xx_cryp_tdes.c 10KB
stm32f4xx_cryp_tdes.c 10KB
stm32f4xx_wwdg.c 10KB
stm32f4xx_wwdg.c 10KB
stm32f4xx_exti.c 10KB
stm32f4xx_cryp_tdes.c 10KB
stm32f4xx_exti.c 10KB
共 397 条
- 1
- 2
- 3
- 4
Coder_BCM
- 粉丝: 648
- 资源: 27
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
- 1
- 2
前往页