na początek możesz wprowadzić jednego delay'a , np 1000ms,
i zliczać zmienną na końcu pętli.
jeżeli zliczy do 30, to wystawia flagę 1, (bo minęło 30 sekund).
jeżeli ta flaga jest wystawiona to w pętli if'em wykonać polecenie i flagę wyzerować kasując jednocześnie flagę na 0. i czekać następne 30 sek.

..........................................................
innym sposobem jest zliczanie do większej 9ilości i sprawdzanie reszty z dzielenia.
jeżeli reszta z dzielenia przez 30 jest równa 0 to wystaw flagę_1 ("flaga_co_30_s") np.

...........................................................
potem (następny sposób) to załączyć timer i za jego pomocą wykonywać odliczanie czasu niejako w tle działającego programu.

...........................................................
Tomek20NT napisał(a):
Z czego polecacie się uczyć początkującemu proramować?
polecam
https://www.sklep.atnel.pl/pl/p/Mikrokontrolery-AVR-Jezyk-C-podstawy-programowania-PL-Ksiazka-Pendrive/75i blog
http://www.mirekk36.blogspot.com/Ja na tych żeruję. i mknę do przodu. też od podstaw.

no i ocvzywiście nasze forum ATNEL.
------------------------ [ Dodano po: 1 minucie ]i edytuj pierwszy post. wklej kod w syntax C . ważne.