if (millis() % 1000 < Period - 1)
{GetTime();}
  else
{syncTime();}
	 
	
	
		
	
 Можете обьяснить, зачемтак делать?
это же безумно кривой код...
Вы хотя бы задумывались, как он работает?
Первая часть условия if - millis() % 1000 - означает что Период у вас не может быть длиннее секунды.
Предположим, период Period = 500
Тогда получается. что каждую миллисекунду первые 500мс вы читаете время с RTC - (зачем???)
А в вторую половину секунду - с максимально взможной частотой долбите запросами NTP сервер
Такое впечатление, что вы этот код где-то списали и не понимаете в нем ни буквы.
Вам что нужно - раз в period сделать синхронизацию времени с сервера? - так что мешает сделать это классически через миллис?