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.
So for each CS line I need one connector from Arduino, right?
QuoteSo 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.
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/
de_dp11xxx dotmatrix = de_dp11xxx(PORTD, 7, 6, 2, 3, 4, 5, 4);
de_dp11xxx(port, data, wr, cs1, cs2, cs3, cs4, num);
de_dp11xxx(PORTB, 3, 2, 1, 0, 0, 0, 1);
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);
Is you code Open Source? i.e. can I modify and use it for my project?