Mercurial > public > ostc4
view Small_CPU/Inc/rtc.h @ 228:f9ba924d188e div-fixes-4-1
Bugfix: set battery percentage correctly after RTE update
When the RTE is rebooted, the battery percentage on the display is zeroed.
However, when selecting SYS2-reboot-maintenance, the previously known
battery percentage can be manually restored. Interestingly, when
the restore reported a percentage A, choosing that resulted in a
percentage B to be displayed again. With B much smaller than A.
So, rebooting the RTE multiple times resulted in an seemingly
empty battery, while it definitely is not.
The reason for this is a relatively simple bug in the RTE code. This
commit fixes the conversion between the internal LTC2941 registers
and the percentage value to be displayed. Obviously, from and to
the internal registers need to be symmetrical.
Signed-off-by: Jan Mulder <jlmulder@xs4all.nl>
author | Jan Mulder <jlmulder@xs4all.nl> |
---|---|
date | Tue, 02 Apr 2019 14:53:15 +0200 |
parents | 5f11787b4f42 |
children |
line wrap: on
line source
/** ****************************************************************************** * @file rtc.h * @author heinrichs weikamp gmbh * @version V0.0.1 * @date 10-Oct-2014 * @brief header file for rtc control * @verbatim ============================================================================== ##### How to use ##### ============================================================================== @endverbatim ****************************************************************************** * @attention * * <h2><center>© COPYRIGHT(c) 2014 heinrichs weikamp</center></h2> * ****************************************************************************** */ /* Define to prevent recursive inclusion -------------------------------------*/ #ifndef RTC_H #define RTC_H #ifdef __cplusplus extern "C" { #endif /* Includes ------------------------------------------------------------------*/ #define RTC_ASYNCH_PREDIV 0x7F /* LSE as RTC clock */ #define RTC_SYNCH_PREDIV 0x00FF /* LSE as RTC clock */ #include "stm32f4xx_hal.h" void MX_RTC_init(void); void RTC_StopMode_2seconds(void); void RTC_Stop_11ms(void); void RTC_SetTime(RTC_TimeTypeDef stimestructure); void RTC_SetDate(RTC_DateTypeDef sdatestructure); #ifdef __cplusplus } #endif #endif /* RTC_H */ /************************ (C) COPYRIGHT heinrichs weikamp *****END OF FILE****/