/**
******************************************************************************
* @file stm32h7xx_hal_hrtim.c
* @author MCD Application Team
* @brief TIM HAL module driver.
* This file provides firmware functions to manage the following
* functionalities of the High Resolution Timer (HRTIM) peripheral:
* + HRTIM Initialization
* + Timer Time Base Unit Configuration
* + Simple Time Base Start/Stop
* + Simple Time Base Start/Stop Interrupt
* + Simple Time Base Start/Stop DMA Request
* + Simple Output Compare/PWM Channel Configuration
* + Simple Output Compare/PWM Channel Start/Stop Interrupt
* + Simple Output Compare/PWM Channel Start/Stop DMA Request
* + Simple Input Capture Channel Configuration
* + Simple Input Capture Channel Start/Stop Interrupt
* + Simple Input Capture Channel Start/Stop DMA Request
* + Simple One Pulse Channel Configuration
* + Simple One Pulse Channel Start/Stop Interrupt
* + HRTIM External Synchronization Configuration
* + HRTIM Burst Mode Controller Configuration
* + HRTIM Burst Mode Controller Enabling
* + HRTIM External Events Conditioning Configuration
* + HRTIM Faults Conditioning Configuration
* + HRTIM Faults Enabling
* + HRTIM ADC trigger Configuration
* + Waveform Timer Configuration
* + Waveform Event Filtering Configuration
* + Waveform Dead Time Insertion Configuration
* + Waveform Chopper Mode Configuration
* + Waveform Compare Unit Configuration
* + Waveform Capture Unit Configuration
* + Waveform Output Configuration
* + Waveform Counter Start/Stop
* + Waveform Counter Start/Stop Interrupt
* + Waveform Counter Start/Stop DMA Request
* + Waveform Output Enabling
* + Waveform Output Level Set/Get
* + Waveform Output State Get
* + Waveform Burst DMA Operation Configuration
* + Waveform Burst DMA Operation Start
* + Waveform Timer Counter Software Reset
* + Waveform Capture Software Trigger
* + Waveform Burst Mode Controller Software Trigger
* + Waveform Timer Pre-loadable Registers Update Enabling
* + Waveform Timer Pre-loadable Registers Software Update
* + Waveform Timer Delayed Protection Status Get
* + Waveform Timer Burst Status Get
* + Waveform Timer Push-Pull Status Get
* + Peripheral State Get
@verbatim
==============================================================================
##### Simple mode v.s. waveform mode #####
==============================================================================
[..] The HRTIM HAL API is split into 2 categories:
(#)Simple functions: these functions allow for using a HRTIM timer as a
general purpose timer with high resolution capabilities.
HRTIM simple modes are managed through the set of functions named
HAL_HRTIM_Simple<Function>. These functions are similar in name and usage
to the one defined for the TIM peripheral. When a HRTIM timer operates in
simple mode, only a very limited set of HRTIM features are used.
Following simple modes are proposed:
(++)Output compare mode,
(++)PWM output mode,
(++)Input capture mode,
(++)One pulse mode.
(#)Waveform functions: These functions allow taking advantage of the HRTIM
flexibility to produce numerous types of control signal. When a HRTIM timer
operates in waveform mode, all the HRTIM features are accessible without
any restriction. HRTIM waveform modes are managed through the set of
functions named HAL_HRTIM_Waveform<Function>
##### How to use this driver #####
==============================================================================
[..]
(#)Initialize the HRTIM low level resources by implementing the
HAL_HRTIM_MspInit() function:
(##)Enable the HRTIM clock source using __HRTIMx_CLK_ENABLE()
(##)Connect HRTIM pins to MCU I/Os
(+++) Enable the clock for the HRTIM GPIOs using the following
function: __HAL_RCC_GPIOx_CLK_ENABLE()
(+++) Configure these GPIO pins in Alternate Function mode using
HAL_GPIO_Init()
(##)When using DMA to control data transfer (e.g HAL_HRTIM_SimpleBaseStart_DMA())
(+++)Enable the DMAx interface clock using __DMAx_CLK_ENABLE()
(+++)Initialize the DMA handle
(+++)Associate the initialized DMA handle to the appropriate DMA
handle of the HRTIM handle using __HAL_LINKDMA()
(+++)Initialize the DMA channel using HAL_DMA_Init()
(+++)Configure the priority and enable the NVIC for the transfer
complete interrupt on the DMA channel using HAL_NVIC_SetPriority()
and HAL_NVIC_EnableIRQ()
(##)In case of using interrupt mode (e.g HAL_HRTIM_SimpleBaseStart_IT())
(+++)Configure the priority and enable the NVIC for the concerned
HRTIM interrupt using HAL_NVIC_SetPriority() and HAL_NVIC_EnableIRQ()
(#)Initialize the HRTIM HAL using HAL_HRTIM_Init(). The HRTIM configuration
structure (field of the HRTIM handle) specifies which global interrupt of
whole HRTIM must be enabled (Burst mode period, System fault, Faults).
It also contains the HRTIM external synchronization configuration. HRTIM
can act as a master (generating a synchronization signal) or as a slave
(waiting for a trigger to be synchronized).
(#) Configure HRTIM resources shared by all HRTIM timers
(##)Burst Mode Controller:
(+++)HAL_HRTIM_BurstModeConfig(): configures the HRTIM burst mode
controller: operating mode (continuous or one-shot mode), clock
(source, prescaler) , trigger(s), period, idle duration.
(##)External Events Conditioning:
(+++)HAL_HRTIM_EventConfig(): configures the conditioning of an
external event channel: source, polarity, edge-sensitivity.
External event can be used as triggers (timer reset, input
capture, burst mode, ADC triggers, delayed protection)
They can also be used to set or reset timer outputs. Up to
10 event channels are available.
(+++)HAL_HRTIM_EventPrescalerConfig(): configures the external
event sampling clock (used for digital filtering).
(##)Fault Conditioning:
(+++)HAL_HRTIM_FaultConfig(): configures the conditioning of a
fault channel: source, polarity, edge-sensitivity. Fault
channels are used to disable the outputs in case of an
abnormal operation. Up to 5 fault channels are available.
(+++)HAL_HRTIM_FaultPrescalerConfig(): configures the fault
sampling clock (used for digital filtering).
(+++)HAL_HRTIM_FaultModeCtl(): Enables or disables fault input(s)
circuitry. By default all fault inputs are disabled.
(##)ADC trigger:
(+++)HAL_HRTIM_ADCTriggerConfig(): configures the source triggering
the update of the ADC trigger register and the ADC trigger.
4 independent triggers are available to start both the regular
and the injected sequencers of the 2 ADCs
(#) Configure HRTIM timer time base using HAL_HRTIM_TimeBaseConfig(). This
funct
没有合适的资源?快使用搜索试试~ 我知道了~
基于事件总线的嵌入式操作系统
共2537个文件
h:1052个
c:829个
s:266个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 150 浏览量
2023-06-15
16:11:02
上传
评论
收藏 22.62MB ZIP 举报
温馨提示
EventOS,是一个面向单片机、事件驱动的嵌入式开发平台。它主要有两大技术特色:一是事件驱动,二是分布式。EventOS的目标,是开发一个企业级的嵌入式开发平台,以事件总线为核心,打造一个统一、分布式的嵌入式技术生态,涵盖RTOS内核、IO框架、设备框架、文件系统和中间件,为广大企业用户和嵌入式开发者们,提供搞可靠性的、高性能的、现代且高开发效率的嵌入式开发环境
资源推荐
资源详情
资源评论
收起资源包目录
基于事件总线的嵌入式操作系统 (2537个子文件)
x_build.bat 388B
x_build.bat 267B
x_build.bat 267B
clear.bat 210B
x_build.bat 194B
stm32h7xx_hal_hrtim.c 315KB
stm32f7xx_hal_tim.c 246KB
stm32h7xx_hal_tim.c 245KB
stm32f7xx_hal_tim.c 244KB
stm32f1xx_hal_i2c.c 238KB
stm32f4xx_hal_tim.c 238KB
stm32f1xx_hal_tim.c 235KB
stm32f4xx_hal_i2c.c 234KB
stm32f4xx_hal_fmpi2c.c 230KB
stm32f4xx_hal_cryp.c 228KB
stm32f7xx_hal_cryp.c 228KB
stm32f7xx_hal_i2c.c 220KB
tasks.c 215KB
stm32h7xx_hal_i2c.c 215KB
stm32f7xx_hal_i2c.c 215KB
stm32h7xx_hal_fdcan.c 204KB
stm32h7xx_hal_cryp.c 166KB
stm32h7xx_hal_adc.c 157KB
stm32f4xx_hal_rcc_ex.c 152KB
stm32h7xx_hal_uart.c 151KB
gd32f30x_enet.c 150KB
stm32f4xx_hal_dfsdm.c 150KB
gd32f4xx_enet.c 144KB
stm32h7xx_hal_jpeg.c 138KB
stm32f7xx_hal_spi.c 137KB
stm32f7xx_hal_jpeg.c 137KB
stm32f4xx_rcc.c 131KB
stm32f4xx_rcc.c 131KB
stm32f4xx_rcc.c 131KB
stm32f4xx_hal_uart.c 129KB
stm32f4xx_hal_hash.c 129KB
stm32h7xx_hal_dfsdm.c 129KB
stm32f7xx_hal_uart.c 129KB
stm32f1xx_hal_uart.c 128KB
stm32f7xx_hal_hash.c 128KB
stm32h7xx_hal_hash.c 126KB
gd32f10x_enet.c 125KB
gd32f20x_enet.c 125KB
stm32f1xx_hal_spi.c 124KB
stm32h7xx_hal_mmc.c 123KB
stm32f7xx_hal_dfsdm.c 123KB
stm32h7xx_hal_sd.c 122KB
stm32h7xx_hal_usart.c 122KB
stm32h7xx_hal_smartcard.c 122KB
stm32h7xx_hal_rcc_ex.c 121KB
stm32f4xx_hal_spi.c 121KB
stm32h7xx_hal_spi.c 121KB
stm32f4xx_tim.c 119KB
stm32f4xx_tim.c 119KB
stm32f4xx_tim.c 119KB
queue.c 118KB
stm32f7xx_hal_smartcard.c 110KB
stm32h7xx_hal_ospi.c 108KB
stm32h7xx_hal_eth.c 102KB
stm32h7xx_hal_irda.c 101KB
stm32f7xx_hal_usart.c 100KB
stm32h7xx_hal_adc_ex.c 99KB
stm32f4xx_hal_sd.c 99KB
stm32f4xx_hal_fmpsmbus.c 99KB
stm32f7xx_hal_irda.c 99KB
stm32f4xx_hal_usart.c 99KB
stm32f1xx_hal_usart.c 98KB
stm32f7xx_hal_sd.c 97KB
stm32f1xx_hal_sd.c 96KB
eos_kernel.c 95KB
stm32h7xx_hal_tim_ex.c 94KB
stm32f4xx_hal_qspi.c 93KB
stm32f4xx_hal_smbus.c 93KB
stm32f7xx_hal_smbus.c 93KB
stm32h7xx_hal_smbus.c 93KB
stm32f4xx_hal_irda.c 93KB
stm32f4xx_hal_mmc.c 92KB
stm32f1xx_hal_irda.c 92KB
stm32h7xx_hal_sai.c 91KB
stm32f7xx_hal_mmc.c 90KB
stm32f1xx_hal_adc.c 90KB
stm32f1xx_hal_mmc.c 90KB
stm32f7xx_hal_qspi.c 89KB
stm32h7xx_hal_rtc_ex.c 88KB
stm32h7xx_hal_fmac.c 87KB
stm32h7xx_hal_qspi.c 86KB
stm32f7xx_hal_tim_ex.c 86KB
gd32f4xx_timer.c 85KB
stm32f7xx_hal_dsi.c 85KB
stm32f4xx_hal_dsi.c 85KB
stm32h7xx_hal_dsi.c 85KB
stm32f7xx_hal_tim_ex.c 84KB
gd32f30x_timer.c 83KB
gd32f10x_timer.c 83KB
gd32f20x_timer.c 83KB
stm32f4xx_hal_smartcard.c 83KB
stm32f1xx_hal_smartcard.c 82KB
gd32vf103_timer.c 81KB
stm32f4xx_hal_tim_ex.c 81KB
stm32h7xx_hal_i2s.c 80KB
共 2537 条
- 1
- 2
- 3
- 4
- 5
- 6
- 26
资源评论
Java程序员-张凯
- 粉丝: 1w+
- 资源: 6746
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功