Mercurial > public > ostc4
view Small_CPU/Inc/rtc.h @ 328:4fe5400567e7 I2C_Improvment
Set I2C speed to 88kHz, use digital filter only and reworked idle clock recovery
The errata describes a possible problem in operation between 88kHz and 100kHz => Set speed as recommended as work around.
Based on reference implementation only one filter should be use. Choice was digital because only drawback is lag of wakeup functionality which is not used
I2C communication may be randomly interrupted e.g. by a RTE reset or firmware update => reworked recovery function to get I2C devices in idle state again (Clk and SDA HIGH)
author | ideenmodellierer |
---|---|
date | Wed, 17 Jul 2019 22:42: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****/