Page 1 of 1

HUGE 2560 LED dot matrix - Open source BASIC code

PostPosted: Fri Jun 09, 2017 2:00 am
by Janke

Here is the ControlBASIC code to generate "pixel data" for a really HUGE, 2 x 20 module LED matrix using the ubiquitous MAX7219 modules. It contains data for both the standard, small font (usually called "5x7", even though some of my letters have a differing width), as well as a BIG font, using the full height of the display.

The photo shows examples of both fonts. The little aluminum box on the right is a 6000 mAh "USB travel charger" which can supply power to the display for several hours; at minimum brightness, the current draw is about 350-500 mA. You can of course also use a standard mains powered USB charger, or any other stable 5 volt source (min. 1 Amp).

Note that I have epoxy-glued the LED modules to each other, as well as to an aluminum profile frame, encircling them all and keeping the whole package together. Black adhesive plastic covers the aluminum on the front side, and keeps a red filter foil in place (without the foil, the readability suffers, especially in bright light).

This time, I've connected the modules "straight" as opposed to diagonally in an earlier version - however, this requires a quite time-consuming rotation of the font data before display (in fact, 2560 calculations, one for each LED!!!) If you connect the modules diagonally (see my previous posts), you can remove the "convertupper" and "convertlower" subroutines, and speed up the generation of a screenfull of text by some 3 seconds.

One caveat: If you set the brightness to much more than the minimum (as set in my code), the power draw will increase significantly (to well over 1000 mA), so you might need to filter the power to the EzSBC1 better than I have - as is, using too high a LED brightness may reset the EzSBC1 board...

Re: HUGE 2560 LED dot matrix - Open source BASIC code

PostPosted: Mon Jun 19, 2017 9:08 am
by Janke
Here's another large font for the huge display (will of course work with a smaller one, too) - it is optimized for readability from far away, and also as narrow as possible, in order to fit more text in the available space. The caps are 13 pixels high, so there are 3 pixels at the bottom reserved for descenders, not seen in this example text. Most letters are 6 pixels wide, but the range is 2 to 8 pixels.

Just replace the two last DIMs in the previous code, and this new font will be displayed instead.