gpt4 book ai didi

c - MCU 上的时间/日期实现

转载 作者:太空宇宙 更新时间:2023-11-04 08:14:57 25 4
gpt4 key购买 nike

<分区>

我正在研究 MCU,我的目标是在 MCU 上实现时间/日期。

我使用每秒滴答一次的计时器并将其存储在大小足以存储 136 年的 uint32_t count 上。我想以 2000 作为引用,最大值应该是 2099。

这是我的数据结构:

typedef struct
{
uint8_t sec; // Seconds. [0-60] (1 leap second)
uint8_t min; // Minutes. [0-59]
uint8_t hour; // Hours. [0-23]
uint8_t day; // Day. [1-31]
uint8_t month; // Month. [0-11]
uint8_t year; // Year - from 2000. [00-99]
} osal_time_t;

使用最少的资源将秒数 (uint32_t count) 正确转换为分/时/日/月/年的最佳方法是什么?

时间、小时和年份看似简单,但一天变得棘手,有 28-29-30-31 天,2 月是每 4 年的 29。

我看到了 linux 源代码实现,但我认为它是设计一个操作系统,而不是一个不起眼的 MCU 的最佳选择。

任何人都可以提示我应该在 MCU 中使用哪种算法,以便它需要最小。资源?

举个例子,这个http://www.mathcats.com/explore/elapsedtime.html是用什么算法算出来的?

如果您有任何代码片段,我将不胜感激。

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com