~ruther/qmk_firmware

dd887eae360098cd13939d252c772bb95735e0e9 — Daniel Schaefer 1 year, 8 months ago 911c715
[Core] Allow customizing PWM frequency (#21717)

* [Core] Allow customizing PWM frequency

Some frequencies can cause audible noise. Changing the frequency
eliminates that.

Signed-off-by: Daniel Schaefer <dhs@frame.work>

* docs/feature-backlight: Mention PWM frequency

Signed-off-by: Daniel Schaefer <dhs@frame.work>

---------

Signed-off-by: Daniel Schaefer <dhs@frame.work>
2 files changed, 4 insertions(+), 1 deletions(-)

M docs/feature_backlight.md
M platforms/chibios/chibios_config.h
M docs/feature_backlight.md => docs/feature_backlight.md +1 -0
@@ 39,6 39,7 @@ Add the following to your `config.h`:
|`BACKLIGHT_LIMIT_VAL`        |`255`             |The maximum duty cycle of the backlight -- `255` allows for full brightness, any lower will decrease the maximum.|
|`BACKLIGHT_DEFAULT_LEVEL`    |`BACKLIGHT_LEVELS`|The default backlight level to use upon clearing the EEPROM                                                      |
|`BACKLIGHT_DEFAULT_BREATHING`|*Not defined*     |Whether to enable backlight breathing upon clearing the EEPROM                                                   |
|`BACKLIGHT_PWM_PERIOD`       |2048Hz            |Defaults to `BACKLIGHT_PWM_COUNTER_FREQUENCY / 2048`, which results in a PWM frequency of 2048Hz.                |

Unless you are designing your own keyboard, you generally should not need to change the `BACKLIGHT_PIN` or `BACKLIGHT_ON_STATE`.


M platforms/chibios/chibios_config.h => platforms/chibios/chibios_config.h +3 -1
@@ 37,7 37,9 @@
#        define BACKLIGHT_PAL_MODE (PAL_MODE_ALTERNATE_PWM | PAL_RP_PAD_DRIVE12 | PAL_RP_GPIO_OE)
#    endif
#    define BACKLIGHT_PWM_COUNTER_FREQUENCY 1000000
#    define BACKLIGHT_PWM_PERIOD BACKLIGHT_PWM_COUNTER_FREQUENCY / 2048
#    ifndef BACKLIGHT_PWM_PERIOD
#        define BACKLIGHT_PWM_PERIOD BACKLIGHT_PWM_COUNTER_FREQUENCY / 2048
#    endif

#    ifndef AUDIO_PWM_PAL_MODE
#        define AUDIO_PWM_PAL_MODE (PAL_MODE_ALTERNATE_PWM | PAL_RP_PAD_DRIVE12 | PAL_RP_GPIO_OE)

Do not follow this link