DS3231 MAX7219 interrupts

… also known as DS3231 part III. (Have you seen Part I and Part II ?)


It is pretty natural to start playing with interrupts as we write program for the clock. There are 3 (in UNO, other boards have different number) internal timer based interrupts. Timer0 and Timer2 are based on 8 bits counters, so I decided to use Timer1 here with 16 bits. The prescaler set to 64 and match register to 2499 did the trick (one could use as well 256;624 or 8;19999 pairs for Timer1 looking for 100Hz refresh).

Continue reading DS3231 MAX7219 interrupts

TM1637 4 digits

This is pretty simple 4 digits (and a colon between 2-digit groups) display. Natural use would be to display time (see here), but I decided to show a sample used for IR Remote codes testing.


Here is the initial state before anything was sent to the receiver.

Label Ready 😉 was obtained by adressing single segments (as described for instance in document on forum.arduino.cc

Continue reading TM1637 4 digits