/**
******************************************************************************
* @file stm32f30x_tim.c
* @author MCD Application Team
* @version V1.0.1
* @date 23-October-2012
* @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 stm32f30x devices.
These functions are split in 9 groups:
(#) 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
(#) 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
(#) 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
(#) 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
(#) 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
(#) 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
(#) 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
(#) TIM specific interface management, this group includes all
needed functions to use the specific TIM interface:
(++) Encoder Interface Configuration
(++) Select Hall Sensor
(#) TIM specific remapping management includes the Remapping
configuration of specific timers
@endverbatim
******************************************************************************
* @attention
*
* <h2><center>© COPYRIGHT 2012 STMicroelectronics</center></h2>
*
* Licensed under MCD-ST Liberty SW License Agreement V2, (the "License");
* You may not use this file except in compliance with the License.
* You may obtain a copy of the License at:
*
* http://www.st.com/software_license_agreement_liberty_v2
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*
******************************************************************************
*/
/* Includes ------------------------------------------------------------------*/
#include "stm32f30x_tim.h"
#include "stm32f30x_rcc.h"
/** @addtogroup STM32F30x_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 ((uint32_t)0xFFFEFF8F)
#define CCMR_OC24M_MASK ((uint32_t)0xFEFF8FFF)
/* 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 #####
===============================================================================
*** TIM Driver: how to use it in T
没有合适的资源?快使用搜索试试~ 我知道了~
资源详情
资源评论
资源推荐
收起资源包目录
ADC.rar (78个子文件)
ADC
Utilities
STM32_EVAL
Common
stm32_eval_legacy.h 8KB
STM32303C_EVAL
stm32303c_eval.h 14KB
stm32303c_eval.c 25KB
Libraries
CMSIS
Include
core_cm0.h 31KB
core_cm3.h 91KB
arm_common_tables.h 1KB
core_cm4.h 100KB
core_sc000.h 38KB
arm_math.h 235KB
core_cmFunc.h 15KB
core_cmInstr.h 17KB
core_cm4_simd.h 21KB
core_sc300.h 90KB
Device
ST
STM32F30x
Include
system_stm32f30x.h 2KB
stm32f30x.h 476KB
Release_Notes.html 10KB
Source
Templates
iar
startup_stm32f30x.s 22KB
system_stm32f30x.c 14KB
TrueSTUDIO
startup_stm32f30x.s 13KB
gcc_ride7
startup_stm32f30x.s 13KB
arm
startup_stm32f30x.s 26KB
STM32F30x_StdPeriph_Driver
inc
stm32f30x_usart.h 26KB
stm32f30x_tim.h 60KB
stm32f30x_syscfg.h 13KB
stm32f30x_can.h 27KB
stm32f30x_rcc.h 27KB
stm32f30x_exti.h 12KB
stm32f30x_spi.h 23KB
stm32f30x_gpio.h 14KB
stm32f30x_iwdg.h 5KB
stm32f30x_pwr.h 6KB
stm32f30x_adc.h 47KB
stm32f30x_wwdg.h 3KB
stm32f30x_comp.h 21KB
stm32f30x_crc.h 5KB
stm32f30x_flash.h 12KB
stm32f30x_dac.h 15KB
stm32f30x_opamp.h 11KB
stm32f30x_dbgmcu.h 4KB
stm32f30x_misc.h 9KB
stm32f30x_i2c.h 18KB
stm32f30x_rtc.h 39KB
stm32f30x_dma.h 21KB
src
stm32f30x_rtc.c 95KB
stm32f30x_rcc.c 65KB
stm32f30x_dac.c 25KB
stm32f30x_flash.c 39KB
stm32f30x_dma.c 38KB
stm32f30x_can.c 57KB
stm32f30x_spi.c 56KB
stm32f30x_crc.c 10KB
stm32f30x_pwr.c 20KB
stm32f30x_comp.c 24KB
stm32f30x_tim.c 145KB
stm32f30x_misc.c 9KB
stm32f30x_gpio.c 19KB
stm32f30x_adc.c 91KB
stm32f30x_opamp.c 23KB
stm32f30x_wwdg.c 10KB
stm32f30x_usart.c 85KB
stm32f30x_i2c.c 55KB
stm32f30x_syscfg.c 18KB
stm32f30x_iwdg.c 11KB
stm32f30x_dbgmcu.c 7KB
stm32f30x_exti.c 13KB
Project
stm32f30x_conf.h 3KB
system_stm32f30x.c 14KB
main.c 7KB
stm32f30x_it.h 2KB
stm32f30x_it.c 4KB
systick.c 3KB
main.h 2KB
MDK-ARM
Output
ExtDll.iex 19B
Project.htm 36KB
listing
startup_stm32f30x.lst 80KB
Project.uvproj 21KB
Project.uvopt 22KB
systick.h 1KB
共 78 条
- 1
周楷雯
- 粉丝: 80
- 资源: 1万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0