diff options
| author | dragonn <[email protected]> | 2023-12-19 21:17:42 +0100 |
|---|---|---|
| committer | dragonn <[email protected]> | 2023-12-19 21:17:42 +0100 |
| commit | 871ed538b1fb0836bdc12f5d59dbc7f5fea53920 (patch) | |
| tree | dfe2c29e2be4ee05c4a7774c872079fe548e0a35 /embassy-stm32/src/rtc | |
| parent | e5912972ec550c0a1443e250a88d4737badce902 (diff) | |
fix stm32 rtc year from 1970 base 2000
Diffstat (limited to 'embassy-stm32/src/rtc')
| -rw-r--r-- | embassy-stm32/src/rtc/mod.rs | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/embassy-stm32/src/rtc/mod.rs b/embassy-stm32/src/rtc/mod.rs index 11b252139..40cd752a2 100644 --- a/embassy-stm32/src/rtc/mod.rs +++ b/embassy-stm32/src/rtc/mod.rs | |||
| @@ -130,7 +130,7 @@ impl RtcTimeProvider { | |||
| 130 | let weekday = day_of_week_from_u8(dr.wdu()).map_err(RtcError::InvalidDateTime)?; | 130 | let weekday = day_of_week_from_u8(dr.wdu()).map_err(RtcError::InvalidDateTime)?; |
| 131 | let day = bcd2_to_byte((dr.dt(), dr.du())); | 131 | let day = bcd2_to_byte((dr.dt(), dr.du())); |
| 132 | let month = bcd2_to_byte((dr.mt() as u8, dr.mu())); | 132 | let month = bcd2_to_byte((dr.mt() as u8, dr.mu())); |
| 133 | let year = bcd2_to_byte((dr.yt(), dr.yu())) as u16 + 1970_u16; | 133 | let year = bcd2_to_byte((dr.yt(), dr.yu())) as u16 + 2000_u16; |
| 134 | 134 | ||
| 135 | DateTime::from(year, month, day, weekday, hour, minute, second).map_err(RtcError::InvalidDateTime) | 135 | DateTime::from(year, month, day, weekday, hour, minute, second).map_err(RtcError::InvalidDateTime) |
| 136 | }) | 136 | }) |
| @@ -261,7 +261,7 @@ impl Rtc { | |||
| 261 | let (dt, du) = byte_to_bcd2(t.day() as u8); | 261 | let (dt, du) = byte_to_bcd2(t.day() as u8); |
| 262 | let (mt, mu) = byte_to_bcd2(t.month() as u8); | 262 | let (mt, mu) = byte_to_bcd2(t.month() as u8); |
| 263 | let yr = t.year() as u16; | 263 | let yr = t.year() as u16; |
| 264 | let yr_offset = (yr - 1970_u16) as u8; | 264 | let yr_offset = (yr - 2000_u16) as u8; |
| 265 | let (yt, yu) = byte_to_bcd2(yr_offset); | 265 | let (yt, yu) = byte_to_bcd2(yr_offset); |
| 266 | 266 | ||
| 267 | use crate::pac::rtc::vals::Ampm; | 267 | use crate::pac::rtc::vals::Ampm; |
