To change PWM duty, we need to call the following function:
TIM2_SetCompareX(pwm_duty); // where X represents channel ID (1, 2 or 3)
Note that in STM8 micros, there is a trade-off between duty cycle and PWM frequency. If the PWM
resolution, i.e. duty cycle is big then PWM frequency is small and vice-versa. This is true for all timers.
Demo
Video link: https://www.youtube.com/watch?v=BPS5unUHDz4