Blog

Matrix Clock

Posted by steen.nick on March 14, 2013 at 4:05 PM

From now on, I'll post my projects on this blog, which might be easier to read, and a lot more simple to update for me. Starting with this clock project I've been working on:

This projects started out as a simple 8x8 matrix, which is fairly simple. Using an Arduino and 2 74HC595 shift registers, I was able to acheive a very high framerate without any flicker on the LED matrix. Usually, to drive an LED matrix like this, each LED is driven one by one, resulting in 64 loops for one screen refreshment. I drive one colum at a time, resulting in 8 loops for one screen refreshment, thus the time needed for this refreshment is 8 times smaller. Also, using the regular shiftout and digitalWrite was banned from my code, since I only use low(er) level C commands, such as PORTB |= _BV(PB0) to set pin 8 at HIGH, and PORTB &= ~_BV(PB0) to set pin 8 low. This instruction needs 1/8th of the time of digitalWrite.

 

The result of all this experimenting led me to the idea of making a clock out of it, since 8x8 is enough pixels to display text. I also realised I was only using 5 pins of the arduino; 3 for the daisy chained shift registers, and 2 for two buttons (one to set the mode of the clock, one to switch to settings), the code only took up 7kB and the speed was only 16MHz. This mad me think of porting it to a ATtiny85, which I did. After some troubles to link the compiler correctly to the Arduino IDE, I managed to realise this idea. The alfa-stage prototype is now running on a breadboard, with this ATtiny85 and 2 74HC595's.

 

I couldn't resist to make a 3D render of what it should become when finished, and this step isn't far away anymore.


A friend of mine made the aluminum base, and I created a small but working protoboard, ported the source to ATtiny85, the LED's arrived yesterday, and everything is set up to be finished.


Categories: Arduino & other microcontollers

Post a Comment

Oops!

Oops, you forgot something.

Oops!

The words you entered did not match the given text. Please try again.

Already a member? Sign In

11 Comments

Reply Michaelled
4:07 AM on October 13, 2017 
http://onlinenewpharma365.com - lose weight with thyroid disorder
, hello and buy!, hello and buy!
Reply Michaelled
3:07 AM on October 13, 2017 
http://onlinenewpharma365.com - healthcare receivable specialists inc
, hello and buy!, hello and buy!
Reply Michaelled
2:07 AM on October 13, 2017 
http://onlinenewpharma365.com - yeast infection of the skin
, hello and buy!, hello and buy!
Reply Michaelled
5:16 AM on October 12, 2017 
http://cialisnewpilles367.com - electrical specialist moscow id
, hello and buy!, hello and buy!
Reply Michaelled
7:48 AM on October 11, 2017 
http://cialisnewpilles367.com - low t4 and low tsh
, hello and buy!, hello and buy!
Reply Michaelled
6:41 AM on October 11, 2017 
http://cialisnewpilles367.com - oral thrush treatment diflucan dose
, hello and buy!, hello and buy!
Reply Michaelled
5:18 AM on October 11, 2017 
http://cialisnewpilles367.com - how long does it take for azithromycin to clear up chlamydia
, hello and buy!, hello and buy!
Reply Michaelled
4:08 AM on October 11, 2017 
http://levitrafromuzaz.com - 05 31 generic version of xanax xr approved htm
, hello and buy!, hello and buy!
Reply steen.nick
4:31 AM on November 16, 2013 
Robert says...
Hi, Great project and would like to build one for myself, please can you help me as I am quit a newbie with regard to Arduino and ATtiny micro processors but I cannot seem to find the download for the #include avr/pgmspace.h library and hope you could help.
Kind Regards Robert

I am so very sorry for this late reply, but a lot came in between me and this website for the last couple of months.
Now, pgmspace.h should be included in the Arduino binaries, so you shouldn't be downloading them again. Check "%Arduino Dir%\hardware\tools\avr\avr\include\avr" and look for pgmspace.h, it should be there.
The ultimate 'help file' about programing the ATtiny is this site: http://hlt.media.mit.edu/?p=1695 it's where I got my information too for the first time, all necessary links are given and explained there.
Reply Robert
3:30 PM on September 27, 2013 
Hi, Great project and would like to build one for myself, please can you help me as I am quit a newbie with regard to Arduino and ATtiny micro processors but I cannot seem to find the download for the #include avr/pgmspace.h library and hope you could help.
Kind Regards Robert
Reply Robert
3:23 PM on September 27, 2013 
Hi, Great project and would like to build one for myself, please can you help me as I am quit a newbie with regard to Arduino and ATtiny micro processors but I cannot seem to find the download for the #include library and hope you could help.
Kind Regards Robert