Scrolling text w/ Maxim MAX7219 and stringed 8x8 LED Matrixes #1051
Replies: 2 comments
-
Posted at 2020-06-06 by @allObjects ...continuation: I know that Espruino Graphics Object has already nice features to draw texts, lines and shapes, move them around and display on various devices. Speed is tough most of the time critical... For a smooth scrolling text with no clipping issues is kind of easy when taking just one line - 8 bit height - and cofiguring vertical byte storage layout in the buffer. But that is not enough... the displaying hardware has to support a similar topography... Unfortunately, the MAX7219 and the wiring of the board are not very supporting of my lean approach. I use the MAX8219 module from Epruino modules library, butI feed only part of the Graphics buffer. Since that requires quite some amount and not trivial bit manipulating I resorted to inline Compiled C to fill the display buffer that I move as a view port over the actual graphics buffer. This way I can have any length of text - limited by the memory - and have to transform only the part that is displayed. To make it work with simple data structures and logic, I force the buffers and argument passing array to be flat arrays. The Uint32Array needs 6+ elements at construction time to get flat. I did some timing:
I made a thought exercise with a TM1640 - see playing with ArrayBuffer and led matrix... - and am almost settled with the conclusion that it is a it is a better device thane the MAX7219 (may be I will think different after having an opportunity to actually play with it). The inline C is a first shot... that probably could get some more attention. But so far I'm happy with it and glad this C-option is available.
Work leading up to this implementation and more detail discussion you can find in these other threads: |
Beta Was this translation helpful? Give feedback.
-
Posted at 2020-06-07 by @allObjects From initial version, I looked into different fonts... The implementation with single line of 8x8 modules, font size is limited to fonts with height of max. 8 pixel. Below a clip and some shots with Font6x8. PS: It's quite fun and difficult at the same time to capture a 'clean' frame with complete 'Espruino'. Lag of shutter (due to focus? light adjustment/aperture). and (time) of exposure create all kinds of funny looks as attached below. In some shots you can even see the scanning of the optical sensor: some dots have different colors: nothing, yellow, red,... Of course, I could have stopped the scroll... (...but would that not be cheating?)Attachments: |
Beta Was this translation helpful? Give feedback.
-
Posted at 2020-06-06 by @allObjects
It's a while I had something done. @mrbbp inspires / challenges me with some Graphical Art Installations... I finally got the hardware - a 4 in 1 board with 4 8x8 LED Matrixes controlled with Maxim MAX7219. To make it work smoothly, I take advantage of the way the Espruino Graphics object uses the storage and the Espruino's compiled inline-C feature. - Checkout the attached .mp4 clip...
to be continued...
Attachments:
Beta Was this translation helpful? Give feedback.
All reactions