/**
******************************************************************************
* @file stm32f1xx_hal_tim.c
* @author MCD Application Team
* @brief TIM HAL module driver.
* This file provides firmware functions to manage the following
* functionalities of the Timer (TIM) peripheral:
* + TIM Time Base Initialization
* + TIM Time Base Start
* + TIM Time Base Start Interruption
* + TIM Time Base Start DMA
* + TIM Output Compare/PWM Initialization
* + TIM Output Compare/PWM Channel Configuration
* + TIM Output Compare/PWM Start
* + TIM Output Compare/PWM Start Interruption
* + TIM Output Compare/PWM Start DMA
* + TIM Input Capture Initialization
* + TIM Input Capture Channel Configuration
* + TIM Input Capture Start
* + TIM Input Capture Start Interruption
* + TIM Input Capture Start DMA
* + TIM One Pulse Initialization
* + TIM One Pulse Channel Configuration
* + TIM One Pulse Start
* + TIM Encoder Interface Initialization
* + TIM Encoder Interface Start
* + TIM Encoder Interface Start Interruption
* + TIM Encoder Interface Start DMA
* + Commutation Event configuration with Interruption and DMA
* + TIM OCRef clear configuration
* + TIM External Clock configuration
@verbatim
==============================================================================
##### TIMER Generic features #####
==============================================================================
[..] The Timer features include:
(#) 16-bit up, down, up/down auto-reload counter.
(#) 16-bit programmable prescaler allowing dividing (also on the fly) the
counter clock frequency either by any factor between 1 and 65536.
(#) Up to 4 independent channels for:
(++) Input Capture
(++) Output Compare
(++) PWM generation (Edge and Center-aligned Mode)
(++) One-pulse mode output
(#) Synchronization circuit to control the timer with external signals and to interconnect
several timers together.
(#) Supports incremental encoder for positioning purposes
##### How to use this driver #####
==============================================================================
[..]
(#) Initialize the TIM low level resources by implementing the following functions
depending on the selected feature:
(++) Time Base : HAL_TIM_Base_MspInit()
(++) Input Capture : HAL_TIM_IC_MspInit()
(++) Output Compare : HAL_TIM_OC_MspInit()
(++) PWM generation : HAL_TIM_PWM_MspInit()
(++) One-pulse mode output : HAL_TIM_OnePulse_MspInit()
(++) Encoder mode output : HAL_TIM_Encoder_MspInit()
(#) Initialize the TIM low level resources :
(##) Enable the TIM interface clock using __HAL_RCC_TIMx_CLK_ENABLE();
(##) TIM pins configuration
(+++) Enable the clock for the TIM GPIOs using the following function:
__HAL_RCC_GPIOx_CLK_ENABLE();
(+++) Configure these TIM pins in Alternate function mode using HAL_GPIO_Init();
(#) The external Clock can be configured, if needed (the default clock is the
internal clock from the APBx), using the following function:
HAL_TIM_ConfigClockSource, the clock configuration should be done before
any start function.
(#) Configure the TIM in the desired functioning mode using one of the
Initialization function of this driver:
(++) HAL_TIM_Base_Init: to use the Timer to generate a simple time base
(++) HAL_TIM_OC_Init and HAL_TIM_OC_ConfigChannel: to use the Timer to generate an
Output Compare signal.
(++) HAL_TIM_PWM_Init and HAL_TIM_PWM_ConfigChannel: to use the Timer to generate a
PWM signal.
(++) HAL_TIM_IC_Init and HAL_TIM_IC_ConfigChannel: to use the Timer to measure an
external signal.
(++) HAL_TIM_OnePulse_Init and HAL_TIM_OnePulse_ConfigChannel: to use the Timer
in One Pulse Mode.
(++) HAL_TIM_Encoder_Init: to use the Timer Encoder Interface.
(#) Activate the TIM peripheral using one of the start functions depending from the feature used:
(++) Time Base : HAL_TIM_Base_Start(), HAL_TIM_Base_Start_DMA(), HAL_TIM_Base_Start_IT()
(++) Input Capture : HAL_TIM_IC_Start(), HAL_TIM_IC_Start_DMA(), HAL_TIM_IC_Start_IT()
(++) Output Compare : HAL_TIM_OC_Start(), HAL_TIM_OC_Start_DMA(), HAL_TIM_OC_Start_IT()
(++) PWM generation : HAL_TIM_PWM_Start(), HAL_TIM_PWM_Start_DMA(), HAL_TIM_PWM_Start_IT()
(++) One-pulse mode output : HAL_TIM_OnePulse_Start(), HAL_TIM_OnePulse_Start_IT()
(++) Encoder mode output : HAL_TIM_Encoder_Start(), HAL_TIM_Encoder_Start_DMA(), HAL_TIM_Encoder_Start_IT().
(#) The DMA Burst is managed with the two following functions:
HAL_TIM_DMABurst_WriteStart()
HAL_TIM_DMABurst_ReadStart()
*** Callback registration ***
=============================================
[..]
The compilation define USE_HAL_TIM_REGISTER_CALLBACKS when set to 1
allows the user to configure dynamically the driver callbacks.
[..]
Use Function @ref HAL_TIM_RegisterCallback() to register a callback.
@ref HAL_TIM_RegisterCallback() takes as parameters the HAL peripheral handle,
the Callback ID and a pointer to the user callback function.
[..]
Use function @ref HAL_TIM_UnRegisterCallback() to reset a callback to the default
weak function.
@ref HAL_TIM_UnRegisterCallback takes as parameters the HAL peripheral handle,
and the Callback ID.
[..]
These functions allow to register/unregister following callbacks:
(+) Base_MspInitCallback : TIM Base Msp Init Callback.
(+) Base_MspDeInitCallback : TIM Base Msp DeInit Callback.
(+) IC_MspInitCallback : TIM IC Msp Init Callback.
(+) IC_MspDeInitCallback : TIM IC Msp DeInit Callback.
(+) OC_MspInitCallback : TIM OC Msp Init Callback.
(+) OC_MspDeInitCallback : TIM OC Msp DeInit Callback.
(+) PWM_MspInitCallback : TIM PWM Msp Init Callback.
(+) PWM_MspDeInitCallback : TIM PWM Msp DeInit Callback.
(+) OnePulse_MspInitCallback : TIM One Pulse Msp Init Callback.
(+) OnePulse_MspDeInitCallback : TIM One Pulse Msp DeInit Callback.
(+) Encoder_MspInitCallback : TIM Encoder Msp Init Callback.
(+) Encoder_MspDeInitCallback : TIM Encoder Msp DeInit Callback.
(+) HallSensor_MspInitCallback : TIM Hall Sensor Msp Init Callback.
(+) HallSensor_MspDeInitCallback : TIM Hall Sensor Msp DeInit Callback.
(+) PeriodElapsedCallback : TIM Period Elapsed Callback.
(+) PeriodElapsedHalfCpltCallback : TIM Period Elapsed half complete Callback.
(+) TriggerCallback : TIM Trigger Callback.
(+) TriggerHalfCpltCallback : TIM Trigger half complete Callback.
(+) IC_CaptureCallback : TIM Input Capture Callback.
(+) IC_CaptureHalfCpltCallback : TIM Input Capture half complete Callback.
(+) OC_DelayElapsedCallback : TIM Output Compare Delay Elapsed Callback.
(+) PWM_PulseFinishedCallback : TIM PWM Pulse Finished Callback.
(+) PWM_PulseFinishedHalfCpltCallback : TIM PWM Pulse Finished half complete Callback.
(+) ErrorCallback : TIM Error Callback.
(+) CommutationCallb
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
以STM32F103为控制核心,设计一种基于STM32的智能车双轮电机驱动系统。整个系统由STM32F103、直流电机、电机驱动模块(如TB6612)、电源等主要部分组成。该系统可以通过PWM控制电机转速实现小车的前进、后退和转向。基本要求:1、用Proteus完成整体硬件设计原理图; 2、基于MDK5编写软件,编译出所需的实际程序;3、以仿真模拟的方式作为最后测试结果,实现基于STM32的智能车电机控制系统设计;
资源推荐
资源详情
资源评论
收起资源包目录
基于STM32的智能车双轮电机驱动系统 (143个子文件)
demo.uvguix.Administrator 89KB
demo.hex.asm 21B
demo.axf 504KB
demo_uvprojx.bak 18KB
demo_uvoptx.bak 13KB
stm32f1xx_hal_tim.c 242KB
stm32f1xx_hal_tim_ex.c 79KB
stm32f1xx_hal_rcc.c 49KB
stm32f1xx_hal_flash_ex.c 36KB
stm32f1xx_hal_rcc_ex.c 30KB
stm32f1xx_hal_flash.c 30KB
stm32f1xx_hal_dma.c 28KB
stm32f1xx_hal_gpio.c 21KB
stm32f1xx_hal_pwr.c 21KB
stm32f1xx_hal.c 20KB
stm32f1xx_hal_cortex.c 19KB
stm32f1xx_hal_exti.c 15KB
system_stm32f1xx.c 15KB
main.c 12KB
stm32f1xx_it.c 7KB
stm32f1xx_hal_msp.c 4KB
stm32f1xx_hal_gpio_ex.c 4KB
stm32f1xx_hal_tim.crf 590KB
stm32f1xx_hal_tim_ex.crf 554KB
stm32f1xx_hal_rcc.crf 541KB
stm32f1xx_hal_dma.crf 536KB
stm32f1xx_hal_flash_ex.crf 534KB
stm32f1xx_hal_flash.crf 533KB
main.crf 533KB
stm32f1xx_hal_gpio.crf 532KB
stm32f1xx_hal_exti.crf 532KB
stm32f1xx_hal_pwr.crf 532KB
stm32f1xx_hal_rcc_ex.crf 531KB
stm32f1xx_hal.crf 530KB
stm32f1xx_hal_msp.crf 530KB
stm32f1xx_it.crf 530KB
stm32f1xx_hal_cortex.crf 530KB
system_stm32f1xx.crf 529KB
stm32f1xx_hal_gpio_ex.crf 529KB
stm32f1xx_hal_flash_ex.d 2KB
stm32f1xx_hal_gpio_ex.d 2KB
stm32f1xx_hal_cortex.d 2KB
stm32f1xx_hal_tim_ex.d 2KB
stm32f1xx_hal_rcc_ex.d 2KB
stm32f1xx_hal_flash.d 2KB
stm32f1xx_hal_exti.d 2KB
stm32f1xx_hal_gpio.d 2KB
stm32f1xx_hal_msp.d 2KB
stm32f1xx_hal_tim.d 2KB
stm32f1xx_hal_dma.d 2KB
stm32f1xx_hal_rcc.d 2KB
stm32f1xx_hal_pwr.d 2KB
system_stm32f1xx.d 2KB
stm32f1xx_it.d 2KB
stm32f1xx_hal.d 2KB
main.d 2KB
startup_stm32f103x6.d 51B
demo_STM32F103C6_1.0.0.dbgconf 7KB
demo_demo.dep 41KB
demo_demo.dep 41KB
stm32f103x6.h 823KB
stm32_hal_legacy.h 209KB
core_cm33.h 171KB
core_armv8mml.h 165KB
core_cm7.h 145KB
core_cm4.h 121KB
stm32f1xx_hal_tim.h 120KB
core_cm3.h 109KB
core_sc300.h 108KB
core_cm23.h 102KB
stm32f1xx_hal_rcc_ex.h 99KB
core_armv8mbl.h 96KB
stm32f1xx_hal_rcc.h 67KB
cmsis_gcc.h 61KB
cmsis_armclang.h 55KB
core_cm0plus.h 49KB
core_sc000.h 46KB
core_cm1.h 42KB
core_cm0.h 41KB
stm32f1xx_hal_flash_ex.h 36KB
stm32f1xx_hal_gpio_ex.h 35KB
cmsis_iccarm.h 28KB
cmsis_armcc.h 28KB
stm32f1xx_hal_dma.h 18KB
stm32f1xx_hal_cortex.h 17KB
stm32f1xx_hal_conf.h 15KB
stm32f1xx_hal_dma_ex.h 13KB
stm32f1xx_hal_exti.h 12KB
stm32f1xx_hal_pwr.h 12KB
stm32f1xx_hal_gpio.h 12KB
mpu_armv7.h 11KB
stm32f1xx_hal.h 11KB
mpu_armv8.h 11KB
stm32f1xx.h 10KB
stm32f1xx_hal_tim_ex.h 10KB
stm32f1xx_hal_flash.h 9KB
cmsis_compiler.h 9KB
stm32f1xx_hal_def.h 8KB
tz_context.h 3KB
main.h 2KB
共 143 条
- 1
- 2
果粒橙果冻
- 粉丝: 3
- 资源: 2
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 基于matlab实现图像处理,本程序使用背景差分法对来往车辆进行检测和跟踪.rar
- 基于matlab实现视频监控中车型识别代码,自己写的,希望和大家多多交流.rar
- sdk.config
- 基于matlab实现配电网三相潮流计算方法,对几种常用的配电网潮流计算方法进行了对比分析.rar
- 基于matlab实现配电网潮流 经典33节点 前推回代法潮流计算 回代电流 前推电压 带注释.rar
- 基于matlab实现模拟退火遗传算法的车辆调度问题研究,用MATLAB语言加以实现.rar
- 基于matlab实现蒙特卡洛的的移动传感器节点定位算法仿真代码.rar
- 华中数控系统818用户说明书
- 基于matlab实现卡尔曼滤波器完成多传感器数据融合 对多个机器人的不同传感器数据进行融合估计足球精确位置.rar
- 基于matlab实现进行简单车辆识别-车辆检测.rar
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
- 1
- 2
- 3
- 4
- 5
前往页