Go Down

Topic: Mix and match HT1632C based LED Boards (Read 2579 times) previous topic - next topic

bratan

I plan to build 64x24 LED matrix infoboard out of Sure's 32x16 and 32x8 boards.
I know I can connect two 32x16 boards together, and even 4 with extra power, but what about connecting two more 8x16 boards to already serially connected 32x16?  Anyone knows if it's possible? :)
They all driven by HT1632C chip
Xronos Clock - A talking arduino based alarm clock is now available. Check out xronosclock.com for pictures, source code, schematics, and purchasing info :)

pylon

You can connect as many modules as you have pins left. The desired module is selected by a CS line, without that line activated the chip won't react on anything on the data line.
Your problem may be that the Sure modules have only 4 CS lines on their inter-module connectors. If you feed in the signals once again after 4 modules (for the next 4 modules) you can use up to 16 modules (32x8) on one UNO. Don't expect one of the existing libraries to support the mixture of different types of modules though.

bratan


You can connect as many modules as you have pins left. The desired module is selected by a CS line, without that line activated the chip won't react on anything on the data line.
Your problem may be that the Sure modules have only 4 CS lines on their inter-module connectors. If you feed in the signals once again after 4 modules (for the next 4 modules) you can use up to 16 modules (32x8) on one UNO. Don't expect one of the existing libraries to support the mixture of different types of modules though.

Thanks! So for each CS line I need one connector from Arduino, right?
Xronos Clock - A talking arduino based alarm clock is now available. Check out xronosclock.com for pictures, source code, schematics, and purchasing info :)

pylon

Quote
So for each CS line I need one connector from Arduino, right?


One pin of a connector but I guess you meant that. So: yes.

That solves the hardware side but as I already wrote, you still have some work to do on the software side.

bratan


Quote
So for each CS line I need one connector from Arduino, right?


One pin of a connector but I guess you meant that. So: yes.

That solves the hardware side but as I already wrote, you still have some work to do on the software side.

Thanks!  Yeah I'll need to tweak library to get it working. I decided not to get that complex mix, but instead get four 24x16 single color panels. I've seen people already had it working (on Youtube) so I know it's doable. With 32x16 display there's only one CS pin needed, even if you are using 2 panels, but I just wasn't sure about 24x16 since in datasheet it has CS1-CS4
Xronos Clock - A talking arduino based alarm clock is now available. Check out xronosclock.com for pictures, source code, schematics, and purchasing info :)

pylon

I have such a LED matrix display working with 4 modules 24x16. The CS1-CS4 are the CS lines for the HT1632Cs, on every module you select the appropriate CS line by using a DIP switch.

You'll find the library for up to four modules on my Arduino page: http://www.linotux.ch/arduino/

bratan

Xronos Clock - A talking arduino based alarm clock is now available. Check out xronosclock.com for pictures, source code, schematics, and purchasing info :)

bratan


I have such a LED matrix display working with 4 modules 24x16. The CS1-CS4 are the CS lines for the HT1632Cs, on every module you select the appropriate CS line by using a DIP switch.

You'll find the library for up to four modules on my Arduino page: http://www.linotux.ch/arduino/


Do you have any kind of instructions how to use your library? :) i.e. where do I define my pins form Arduino Uno for example.
What does this line mean?
Code: [Select]
de_dp11xxx dotmatrix = de_dp11xxx(PORTD, 7, 6, 2, 3, 4, 5,   4);
I tried changing it to my ports but program won't compile then...
Right now as a test I have Uno connected to single board like this:
Arduino -> DP-DP11111
D9 -> CS1
D10 -> WR
D11 -> DATA

and then ground and power...  It kind of works with HT1632.h library, but I really wanted to get yours working :)
Xronos Clock - A talking arduino based alarm clock is now available. Check out xronosclock.com for pictures, source code, schematics, and purchasing info :)

pylon

The constructor is called with this scheme:

Code: [Select]
de_dp11xxx(port, data, wr, cs1, cs2, cs3, cs4, num);

where port is a GPIO port of the ATmega processor, PORTB in your case. "data" is the bit number (of the chosen port) where the data line is connected (3 in your case), "wr" is the bit number of the wr line (2 in your case) and the csX are the respective chip select bit numbers (so for you it's 1, 0, 0, 0). "num" is the number of chips your driving (1 in your case).

This means you have to instantiate the class like this:

Code: [Select]
de_dp11xxx(PORTB, 3, 2, 1, 0, 0, 0, 1);

bratan


The constructor is called with this scheme:

Code: [Select]
de_dp11xxx(port, data, wr, cs1, cs2, cs3, cs4, num);

where port is a GPIO port of the ATmega processor, PORTB in your case. "data" is the bit number (of the chosen port) where the data line is connected (3 in your case), "wr" is the bit number of the wr line (2 in your case) and the csX are the respective chip select bit numbers (so for you it's 1, 0, 0, 0). "num" is the number of chips your driving (1 in your case).

This means you have to instantiate the class like this:

Code: [Select]
de_dp11xxx(PORTB, 3, 2, 1, 0, 0, 0, 1);


OK that makes sense. Thanks again! :)

Is you code Open Source? i.e. can I modify and use it for my project? :)
Xronos Clock - A talking arduino based alarm clock is now available. Check out xronosclock.com for pictures, source code, schematics, and purchasing info :)

pylon

Quote
Is you code Open Source? i.e. can I modify and use it for my project?


Sure, that's why it is on my Arduino page :).
A big part of it is from the original ht1632 library, I just made the necessary changes to let it work with the single colored variants.

stadham

Can't seem to get mine to work. I am using a Sure 24x16 de-dp 11111. What Arduino IDE are you compiling it with?
Also can you help with pins used
I use
Data pin 2
Write pin 3
Cs pin 4
in code it looks like this

de_dp11xxx(PORTD, 2, 3, 4, 0, 0, 0, 1);
But only a few lights blink then nothing it goes blank.

stadham

Hello,

I never got mine to work. Using an Arduino 328, IDE 1.05 Sure de_dp11111 24x16 3mm Green leds

dp11xxx ledMatrix = de_dp11xxx(PORTD, 2, 3, 4, 0, 0, 0, 1);

Data pin 2
wr pin 3
cs1 pin 4

I get some random lights all over to light up then a few blink then it does nothing.

Thank you,
Randy

Any help please.

bratan

I'd suggest you try using plot function first.
BTW I have different code for driving 24x16 LED matrix display. I've modified it to run on 4 dp11111 displays (it can split screen real-estate between top 2 and bottom 2 displays.  I use it in my Xronos Mega Clock prototype, but it works on ATMega1284p. Take a look, maybe you'll find it useful. It should work with one display, just play with settings in LED_2416.h file.
Xronos Clock - A talking arduino based alarm clock is now available. Check out xronosclock.com for pictures, source code, schematics, and purchasing info :)

stadham

Thanks so much. I will have a look at it tonight after work.

Go Up