Расчет летнего времени только по дате

Я работаю с Arduino и чипом часов реального времени. Чип компенсирует високосные годы и тому подобное, поэтому на нем всегда будет правильная дата, но он не поддерживает летнее время, я полагаю, из-за региональных проблем. Часы могут показать мне день, месяц и год (на основе 1) и день недели (с воскресенья = 0 до субботы = 6).

Поскольку мне нужно сравнить дату и время, введенные пользователем, мне нужно знать дату и время, скорректированные с учетом летнего времени. Если текущая дата находится в переходе на летнее время, я могу просто добавить час к времени на часах, и у меня есть то, что мне нужно.

Сложная часть - определить, перейду ли я на летнее время или нет, потому что оно меняется с из года в год. Меня волнует только то, что он работает в моем месте (Горное время). Похоже, что для моей платформы нет полных библиотек дат, и я чувствую, что в любом случае это было бы излишним. Есть ли простая формула, чтобы определить, нахожусь ли я в DST или нет?

17
задан dannysauer 27 February 2016 в 01:42
поделиться