From 02939ab1d831ab7bb02edb28cb0b21fb61bced56 Mon Sep 17 00:00:00 2001 From: tmk Date: Thu, 4 Sep 2014 05:30:00 +0900 Subject: Add battery management --- keyboard/hhkb_rn42/rn42/battery.h | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 keyboard/hhkb_rn42/rn42/battery.h (limited to 'keyboard/hhkb_rn42/rn42/battery.h') diff --git a/keyboard/hhkb_rn42/rn42/battery.h b/keyboard/hhkb_rn42/rn42/battery.h new file mode 100644 index 0000000000..60fc8adfcb --- /dev/null +++ b/keyboard/hhkb_rn42/rn42/battery.h @@ -0,0 +1,34 @@ +#ifndef POWER_H +#define POWER_H + +#include +#include + +typedef enum { + FULL_CHARGED, + CHARGING, + DISCHARGING, + LOW_VOLTAGE, +} battery_status_t; + +typedef enum { + LED_CHARGER = 0, + LED_ON, + LED_OFF, + LED_TOGGLE, +} battery_led_t; + +/* Battery API */ +void battery_init(void); +void battery_led(battery_led_t val); +bool battery_charging(void); +uint16_t battery_voltage(void); +battery_status_t battery_status(void); + +#define BATTERY_VOLTAGE_LOW_LIMIT 3500 +#define BATTERY_VOLTAGE_LOW_RECOVERY 3700 +// ADC offset:16, resolution:5mV +#define BATTERY_ADC_OFFSET 16 +#define BATTERY_ADC_RESOLUTION 5 + +#endif -- cgit v1.2.3 From 3b81ffc16c8cdf260c25f0778d32c721af4f105c Mon Sep 17 00:00:00 2001 From: tmk Date: Thu, 4 Sep 2014 17:08:23 +0900 Subject: Monitor battery and alert low voltage --- keyboard/hhkb_rn42/rn42/battery.h | 1 + 1 file changed, 1 insertion(+) (limited to 'keyboard/hhkb_rn42/rn42/battery.h') diff --git a/keyboard/hhkb_rn42/rn42/battery.h b/keyboard/hhkb_rn42/rn42/battery.h index 60fc8adfcb..180d4dcfaa 100644 --- a/keyboard/hhkb_rn42/rn42/battery.h +++ b/keyboard/hhkb_rn42/rn42/battery.h @@ -9,6 +9,7 @@ typedef enum { CHARGING, DISCHARGING, LOW_VOLTAGE, + UNKNOWN, } battery_status_t; typedef enum { -- cgit v1.2.3