After playing with my Adafruit matrix for a few hours, I began to look at the underlying libraries. There are two - RGBMatrixPanel (https://github.com/adafruit/RGB-matrix-Panel) which handles communication with the matrix and their GFX library (https://github.com/adafruit/Adafruit-GFX-Library) which handles the actual pixel data and manipulation. I looked over both and found the code well commented and pretty to the point. They also have a good article about the GFX library - http://learn.adafruit.com/adafruit-gfx-graphics-library/overview
I plan to mashup the RGBMatrixPanel library with the TLC5940 library that'll be powering my SuperUI module. I should be able to swap out the init, data transfer and interrupt routine, leaving me with a really nice API for the graphical portion of the module. I took a first pass and got it to compile, but haven't tested yet. I'll check it into github when I see twinkles from my mini matrix.
Showing posts with label ui. Show all posts
Showing posts with label ui. Show all posts
Friday, March 7, 2014
Wednesday, March 5, 2014
Arduino SuperUI interface board design alpha
The first module in my Ardmos (http://github.com/billieblaze/ardmos) will be a ui controller for both buttons / leds and my sparkfun RGB button pad. It will use an atmega328p like the arduino uno and provide a serial interface for:
- up to 384 Mono LEDs **OR** 8x16 RGB LEDs
- 128 buttons multiplexed **OR** 8x16 button matrix
- Further expandable off-board
In a previous article, I showed how I used TLC5940 to control 16 LED's with 12bit PWM across them. Delving deeper into the associated arduino library, I did some basic experiments with the row switching and updated my schematic accordingly.
Rows will be scanned with a 595 Shift Register driving a TLC59213 "8-Bit Parallel In/Out Darlington Source Driver With Latch" (http://www.ti.com/product/tlc59213). Looks simple enough, send in bits, latch, get up to 500ma out!
I plan to use the row driver to scan the buttons as well, adding 2 x 74HC165 ties up the input side of things nicely.
Overall, the 328p looks pretty full pin-wise but should offer plenty of power here. Here's the initial schematic, any feedback on it is appreciated! Also, I REALLY need to learn to use the net / bus thing in eaglecad better!
- up to 384 Mono LEDs **OR** 8x16 RGB LEDs
- 128 buttons multiplexed **OR** 8x16 button matrix
- Further expandable off-board
In a previous article, I showed how I used TLC5940 to control 16 LED's with 12bit PWM across them. Delving deeper into the associated arduino library, I did some basic experiments with the row switching and updated my schematic accordingly.
Rows will be scanned with a 595 Shift Register driving a TLC59213 "8-Bit Parallel In/Out Darlington Source Driver With Latch" (http://www.ti.com/product/tlc59213). Looks simple enough, send in bits, latch, get up to 500ma out!
I plan to use the row driver to scan the buttons as well, adding 2 x 74HC165 ties up the input side of things nicely.
Overall, the 328p looks pretty full pin-wise but should offer plenty of power here. Here's the initial schematic, any feedback on it is appreciated! Also, I REALLY need to learn to use the net / bus thing in eaglecad better!
Subscribe to:
Posts (Atom)
