/**
******************************************************************************
* @file stm32f4xx_tim.c
* @author MCD Application Team
* @version V1.4.0
* @date 04-August-2014
* @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:
(#) 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 2014 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 "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 #####
===============================================================================
##### TIM Driver: how to use it in Timing(Time base) Mode #####
===============================================================================
[..]
To use the Timer in Timing(Time base) mode, the following steps are mandatory:
(#) Enable TIM clock using RCC_APBxPeriphClockCmd(RCC_APBxPeriph_TIMx, ENABLE) function
(#) Fill the TIM_TimeBaseInitStruct with the desired parameters.
(#) C
没有合适的资源?快使用搜索试试~ 我知道了~
STM32F407模拟IIC OLED驱动代码
共149个文件
h:46个
c:44个
o:14个
1 下载量 180 浏览量
2024-01-26
23:47:09
上传
评论
收藏 628KB 7Z 举报
温馨提示
备用资源
资源推荐
资源详情
资源评论
收起资源包目录
STM32F407模拟IIC OLED驱动代码 (149个子文件)
OLED.uvguix.16428 177KB
OLED.uvguix.Administrator 176KB
OLED.axf 348KB
keilkilll.bat 399B
stm32f4xx_tim.c 122KB
stm32f4xx_rtc.c 100KB
stm32f4xx_rcc.c 97KB
stm32f4xx_adc.c 67KB
stm32f4xx_flash.c 62KB
stm32f4xx_can.c 59KB
stm32f4xx_cryp_aes.c 57KB
stm32f4xx_usart.c 57KB
stm32f4xx_fmc.c 55KB
stm32f4xx_i2c.c 53KB
stm32f4xx_dma.c 52KB
stm32f4xx_spi.c 51KB
system_stm32f4xx.c 47KB
stm32f4xx_sai.c 45KB
stm32f4xx_fsmc.c 41KB
stm32f4xx_ltdc.c 39KB
stm32f4xx_sdio.c 38KB
stm32f4xx_pwr.c 37KB
stm32f4xx_cryp.c 35KB
stm32f4xx_dma2d.c 27KB
stm32f4xx_dac.c 26KB
stm32f4xx_hash.c 26KB
stm32f4xx_gpio.c 25KB
stm32f4xx_dcmi.c 18KB
stm32f4xx_rng.c 14KB
misc.c 11KB
oled.c 11KB
stm32f4xx_cryp_tdes.c 10KB
stm32f4xx_wwdg.c 10KB
stm32f4xx_exti.c 10KB
stm32f4xx_cryp_des.c 10KB
stm32f4xx_hash_sha1.c 10KB
stm32f4xx_hash_md5.c 9KB
stm32f4xx_syscfg.c 9KB
stm32f4xx_iwdg.c 9KB
delay.c 8KB
stm32f4xx_dbgmcu.c 7KB
stm32f4xx_flash_ramfunc.c 5KB
usart.c 5KB
stm32f4xx_it.c 4KB
stm32f4xx_crc.c 4KB
main.c 2KB
sys.c 1KB
led.c 691B
oled.crf 436KB
stm32f4xx_rcc.crf 434KB
main.crf 431KB
usart.crf 430KB
stm32f4xx_usart.crf 428KB
stm32f4xx_gpio.crf 425KB
delay.crf 425KB
system_stm32f4xx.crf 425KB
led.crf 424KB
sys.crf 424KB
stm32f4xx_syscfg.crf 424KB
misc.crf 423KB
stm32f4xx_it.crf 423KB
stm32f4xx_syscfg.d 2KB
stm32f4xx_usart.d 2KB
stm32f4xx_gpio.d 2KB
system_stm32f4xx.d 2KB
stm32f4xx_rcc.d 2KB
stm32f4xx_it.d 2KB
main.d 2KB
oled.d 2KB
usart.d 2KB
delay.d 2KB
led.d 2KB
misc.d 2KB
sys.d 2KB
startup_stm32f40_41xxx.d 67B
OLED_STM32F407ZG.dbgconf 3KB
OLED_OLED.dep 29KB
OLED.uvguix.EVK 72KB
stm32f4xx.h 688KB
core_cm4.h 107KB
stm32f4xx_tim.h 50KB
stm32f4xx_fmc.h 44KB
oledfont.h 40KB
stm32f4xx_rtc.h 40KB
stm32f4xx_adc.h 32KB
stm32f4xx_i2c.h 31KB
stm32f4xx_rcc.h 29KB
stm32f4xx_dma.h 28KB
stm32f4xx_can.h 27KB
stm32f4xx_fsmc.h 27KB
stm32f4xx_sai.h 25KB
stm32f4xx_flash.h 24KB
stm32f4xx_gpio.h 23KB
stm32f4xx_sdio.h 22KB
core_cm4_simd.h 22KB
stm32f4xx_ltdc.h 21KB
stm32f4xx_spi.h 21KB
core_cmInstr.h 20KB
stm32f4xx_dma2d.h 19KB
stm32f4xx_usart.h 18KB
共 149 条
- 1
- 2
资源评论
桂北研猛男
- 粉丝: 55
- 资源: 22
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- MMDF1N05ER2G-VB一款SOP8封装2个N-Channel场效应MOS管
- zipkin-server-3.3.0-exec.jar
- MI9933-VB一款SOP8封装2个P-Channel场效应MOS管
- zipkin-server-2.24.4-exec.jar
- MI4953-VB一款SOP8封装2个P-Channel场效应MOS管
- 基于Akka模拟实现Spark Standalone.pdf
- MI4946-VB一款SOP8封装2个N-Channel场效应MOS管
- 毕业答辩模板(动态模板)苹果IOS星空通用论文答辩模板
- 有效cookie值获取方式汇总
- 基于python实现的英雄联盟知识图谱问答系统源码(期末大作业).zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功