Thanks Irving,Yes, I get you want the user to specify the words, but you have to say how each character looks... so, for example, is the font based on a 5 x 5 bitmap or a 5 x 4 bitmap? For example, in a 5x5 font the character A is represented by the 5 binary values:
0010001010100011111110001
while in a 5x4 its:
00100101100111111001
With the former, allowing 1 column between letters you get 3 letters at a time, with the latter you get 3.6 letters at a time
This is a 5x5 monospaced font at 10mS per column (0.5s per character). Monospaced fonts are f-ugly but easy to program...
View attachment 246452
Now consider that, in my proposed solution, each row is energised 5 times between each shift, so each row is on for 2mS in 10mS. Effectively every LED is running at 1/5 max brightness. We can compensate for this to some extent by increasing the current through the LEDs. This will give a consistent brightness across all LED as the multiplexing is at row level and is at a constant frequency irrespective of the number of LEDs switched on.
Now consider your charlieplexing approach where one LED in 90 is switched on. Each LED gets 1/90 of 10mS or 111uS. It doesn't matter what current level you set, you will never really see them on. You might consider breaking it down into 3 groups of 5 x 6 where you charlieplex the 6 and strobe across the 5. Then you need 5 + 3 * 3 = 14 pins but each LED per group of 6 is still only on for 1/30 of of 10mS or 333uS and that's still 1/30 full brightness. Arguably you could charlieplex 3 groups of 30 without strobing but that needs 18 pins and still only gives 333uS per LED. Plus charlieplexing needs the dropper resistors so still wastes battery power.
Charlieplexing is great for static displays where only a few LED are on - eg warning/alarm boards where mostly they are off, or where you have a small number of LED broken into independent non-multiplexed groups. It just doesn't work for your requirements.
You've so helpful.
I have seen tutorials online using arduino and PIC for charlieplexing.
I know get the concept of font and bit map


