1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2024-12-29 04:50:03 +01:00
RIOT/cpu/stm32/include/periph
bors[bot] f47003c1db
Merge #19572
19572: cpu/stm32/periph_pwm: support of complementary timer outputs r=maribu a=gschorcht

### Contribution description

This PR provides the support of complementary timer outputs as PWM channels for advanced timers (TIM1/TIM8).

To use a complementary output of an advanced timer as PWM channel, the output is defined with an offset of 4, i.e. normal outputs are in the range of 0 to 3 (CH1...CH4) and complementary outputs are in the range of 4 to 6 (CH1N...CH3N). If the defined output is less than 4, the normal output is enabled, otherwise the complementary output is enabled.

This change is required to support PWM on boards that have connected the complementary outputs of advanced timers to the PWM connector pins, for example the STM32L496-DISCO board.

### Testing procedure

- Green CI
- Use any STM32 board which supports the `periph_pwm` feature. `tests/periph_pwm` should still work.
- Change the configuration for this board so that either timer TIM1 or TIM8 and a complementary channel is used for any exposed GPIO. `tests/periph_pwm` should also work with such a configuration.

### Issues/PRs references


Co-authored-by: Gunar Schorcht <gunar@schorcht.net>
2023-05-20 09:57:27 +00:00
..
f0 cpu/stm32: add VBAT for stm32 2022-02-21 10:49:43 +01:00
f1 cpu/stm32: Implement gpio_ll for STM32F1 2023-03-20 14:14:07 +01:00
f2 cpu/stm32/f2: add ADC support for f207zg 2022-11-04 18:02:28 -04:00
f3 cpu/stm32: add VBAT for stm32 2022-02-21 10:49:43 +01:00
f4 cpu/stm32: add VBAT for stm32 2022-02-21 10:49:43 +01:00
f7 cpu/stm32/include/periph/f7: add missing ADC_DEVS 2022-04-12 22:39:17 +02:00
g0 cpu/stm32: add VBAT for stm32 2022-02-21 10:49:43 +01:00
g4 cpu/stm32: add VBAT for stm32 2022-02-21 10:49:43 +01:00
l0 cpu/stm32: define EEPROM size for stm32l011k4 2020-10-15 16:24:33 +02:00
l1 cpu/stm32: Add hardening changes to stm32 2021-11-11 15:58:52 -06:00
l4 cpu/stm32/periph_adc: determine number of ADC from CMSIS header 2023-05-10 12:19:19 +02:00
l5 cpu/stm32: add VBAT for stm32 2022-02-21 10:49:43 +01:00
u5 cpu/stm32: add VBAT for stm32 2022-02-21 10:49:43 +01:00
wb cpu/stm32: add VBAT for stm32 2022-02-21 10:49:43 +01:00
wl cpu/stm32: add VBAT for stm32 2022-02-21 10:49:43 +01:00
cpu_backup_ram.h cpu/{cortexm_common, stm32}: add support for backup RAM 2022-01-21 15:53:18 +01:00
cpu_common.h cpu/stm32: group periph definitions by periph type 2022-01-02 20:07:51 +01:00
cpu_dma.h cpu/stm32/periph/dma: fix dma_resume 2022-10-26 09:36:45 -04:00
cpu_eth.h cpu/stm32: group periph definitions by periph type 2022-01-02 20:07:51 +01:00
cpu_gpio_ll.h cpu/stm32: Implement gpio_ll for STM32F1 2023-03-20 14:14:07 +01:00
cpu_gpio.h cpu/stm32: enable usbdev_fs for STM32F1 2022-10-13 12:00:22 +02:00
cpu_i2c.h cpu/stm32/periph/i2c_1: export PERIPH_I2C_MAX_BYTES_PER_FRAME 2023-02-14 17:39:42 +01:00
cpu_ltdc.h cpu/stm32: add support for LTDC periph 2022-01-07 14:32:24 +01:00
cpu_pm.h cpu: include IDLE in PM_NUM_MODES 2022-04-06 12:29:25 +02:00
cpu_pwm.h cpu/stm32/periph_pwm: add doc for complementary timer channels 2023-05-19 16:51:26 +02:00
cpu_qdec.h cpu/stm32/periph_qdec: support pin remap for F1 2022-10-27 14:28:06 +02:00
cpu_spi.h boards/stm32: replace GPIO_UNDEF with SPI_CS_UNDEF 2022-01-06 12:34:09 +01:00
cpu_timer.h cpu/stm32/periph_timer: implement timer_set() 2023-01-03 15:51:06 +01:00
cpu_uart.h cpu/stm32: group periph definitions by periph type 2022-01-02 20:07:51 +01:00
cpu_usbdev.h cpu/stm32/periph/usbdev_fs: support GPIO for USB connect/disconnect 2022-10-05 09:15:29 +02:00
cpu_vbat.h cpu/stm32: add VBAT for stm32 2022-02-21 10:49:43 +01:00
cpu_wdt.h cpu/stm32: group periph definitions by periph type 2022-01-02 20:07:51 +01:00