Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
stm32:peripherals:timer_compare [2021/10/11 08:26] – frtt | stm32:peripherals:timer_compare [2022/12/28 08:00] (current) – ruan | ||
---|---|---|---|
Line 2: | Line 2: | ||
\\ {{timer_output.svg}} \\ \\ | \\ {{timer_output.svg}} \\ \\ | ||
- | |||
- | ===== Programming Example ===== | ||
- | |||
- | The code snippet bellow shows how to configure and use a GPIO pin as input. | ||
- | |||
- | <code c> | ||
- | #include " | ||
- | |||
- | RCC-> | ||
- | RCC-> | ||
- | |||
- | /* configure output */ | ||
- | GPIOA-> | ||
- | GPIOA-> | ||
- | |||
- | /* configure basic timer */ | ||
- | TIM2-> | ||
- | TIM2-> | ||
- | |||
- | /* configure timer output */ | ||
- | TIM2-> | ||
- | TIM2-> | ||
- | |||
- | TIM2-> | ||
- | </ | ||
- | \\ | ||
- | |||
- | > {{logo_hal.svg? | ||
- | > [[https:// | ||
- | > [[https:// | ||
- | \\ | ||
===== Configuration Registers ===== | ===== Configuration Registers ===== | ||
- | ==== CCMR1/2 ==== | + | ==== TIMx_CCMR1/2 - Capture/ |
- | + | ||
- | Capture/ | + | |
\\ {{timer_reg_ccmr1.svg}} {{timer_reg_ccmr2.svg}} \\ \\ | \\ {{timer_reg_ccmr1.svg}} {{timer_reg_ccmr2.svg}} \\ \\ | ||
Line 78: | Line 45: | ||
|::: | |//*Note: CCxS bits are writable only when the channel is OFF (CCxE = ‘0’ in TIMx_CCER).// | |::: | |//*Note: CCxS bits are writable only when the channel is OFF (CCxE = ‘0’ in TIMx_CCER).// | ||
- | ==== DIER ==== | + | ==== TIMx_DIER - DMA / Interrupt enable register |
- | + | ||
- | DMA / Interrupt enable register | + | |
\\ {{timer_reg_dier.svg}} \\ \\ | \\ {{timer_reg_dier.svg}} \\ \\ | ||
Line 90: | Line 55: | ||
|::: |1|CCx interrupt enabled| | |::: |1|CCx interrupt enabled| | ||
- | ==== CCER ==== | + | ==== TIMx_CCER - Capture/ |
- | + | ||
- | Capture/ | + | |
\\ {{timer_reg_ccer.svg}} \\ \\ | \\ {{timer_reg_ccer.svg}} \\ \\ | ||
Line 107: | Line 70: | ||
|::: |1|Capture/ | |::: |1|Capture/ | ||
- | ==== CCRx ==== | + | ==== TIMx_CCRx - Capture/ |
- | + | ||
- | Capture/ | + | |
\\ {{timer_reg_ccrx.svg}} \\ \\ | \\ {{timer_reg_ccrx.svg}} \\ \\ | ||
Line 116: | Line 77: | ||
|CCRx|15: | |CCRx|15: | ||
- | ===== Legend ===== | + | ==== TIMx_BDTR - Break and dead-time register |
+ | |||
+ | \\ {{timer_reg_bdtr.svg}} \\ \\ | ||
+ | |||
+ | |< 100% 5em 5em >| | ||
+ | |MOE|0|OC and OCN outputs are disabled or forced to idle state. (reset state)| | ||
+ | |:::|1| OC and OCN outputs are enabled if their respective enable bits are set (CCxE, CCxNE in TIMx_CCER register).| | ||
- | \\ {{legende.svg}} \\ \\ | + | ===== Programming Example ===== |
+ | |||
+ | The code snippet below shows how to configure and use a GPIO pin as input. | ||
+ | |||
+ | <code c> | ||
+ | #include " | ||
+ | |||
+ | RCC-> | ||
+ | RCC-> | ||
+ | |||
+ | /* configure output */ | ||
+ | GPIOA-> | ||
+ | GPIOA-> | ||
+ | |||
+ | /* configure basic timer */ | ||
+ | TIM2-> | ||
+ | TIM2-> | ||
+ | |||
+ | /* configure timer output */ | ||
+ | TIM2-> | ||
+ | TIM2-> | ||
+ | |||
+ | TIM2-> | ||
+ | </ | ||
+ | \\ |