mirror of
https://github.com/qmk/qmk_firmware.git
synced 2025-04-08 23:05:43 +00:00
2.0 KiB
2.0 KiB
Battery Driver
This driver provides support for sampling battery level.
Usage
To use this driver, add the following to your rules.mk
:
BATTERY_DRIVER_REQUIRED = yes
Basic Configuration
Add the following to your config.h
:
Define | Default | Description |
---|---|---|
BATTERY_SAMPLE_INTERVAL |
30000 |
The time between battery samples in milliseconds. |
Driver Configuration
Driver selection can be configured in rules.mk
as BATTERY_DRIVER
. Valid values are adc
(default), vendor
, or custom
. See below for information on individual drivers.
ADC Driver
This is the default battery driver. The default configuration assumes the battery is connected to a ADC capable pin through a voltage divider.
BATTERY_DRIVER = adc
The following #define
s apply only to the adc
driver:
Define | Default | Description |
---|---|---|
BATTERY_PIN |
Not defined | The GPIO pin connected to the voltage divider. |
BATTERY_REF_VOLTAGE_MV |
3300 |
The ADC reverence voltage, in millivolts. |
BATTERY_VOLTAGE_DIVIDER_R1 |
100000 |
The voltage divider resistance, in kOhm. Set to 0 to disable. |
BATTERY_VOLTAGE_DIVIDER_R1 |
100000 |
The voltage divider resistance, in kOhm. Set to 0 to disable. |
BATTERY_ADC_RESOLUTION |
10 |
The ADC resolution configured for the ADC Driver. |
Functions
uint8_t battery_get_percent(void)
Sample battery level.
Return Value
The battery percentage, in the range 0-100.