Przykładu kodu Ci nie podam bo to tylko pomysł na algorytm
Generalnie wygląda to tak:
Założenia: rozdzielczość 1 minuta.
1 bit reprezentuje więc jedną minutę.
w ciągu doby jest 24*60 = 1440 minut
1 minuta = 1 bit więc
1440 bitów= 180 bajtów.
i
Rezerwujesz sobie więc obszar pamięci 180 bajtów i traktujesz go jak 1440 pojedyńczych bitów.
bit = 0 - oznacza że triak jest wyłączony, bit = 1 oznacza że triak jest włączony.
Trzeba napisać procedury to obsługujące, przeliczanie czasu na numer minuty(bitu), sprawdzanie i ustawianie danego bitu i jeszcze kilka innych przy okazji.
Idąc dalej można zrobić nawet timer tygodniowy z 1 minutową rozdzielczością. Teoretycznie potrzeba na to 7560 bajtów.