I want to create something like that but I could not find appropriate materials in internet. Does anybody know how to write text on this kind of displays?
That's just an 8 digit display. You have to define the letters with an array since most programs will only have numbers encoded.
is there a more concrete information how to do that?
Yes there is
Make up a font array:
// shift registers
byte SRfontArray[] = {
0b00111111, // 0 dp-g-f-e-d-c-b-a, 1 = segment on
0b00000110, // 1
0b01011011, // 2 a
0b01001111, // 3 f b
0b01100110, // 4 g
0b01101101, // 5 e c
0b01111101, // 6 d
0b00000111, // 7
0b01111111, // 8
0b01101111, // 9
0b01110111, // A
0b01111100, // b
0b00111001, // C
};
etc.
I'd suggest you look at a MAX7219. There's pretty good resources out there for alphanumeric uses.
MAX7219 has 0-9, blank, and H E L P.
Outside of that, you need to use No Decode mode and create your own font array, similar to what I posted, but a little different:
bits 7-6-5-4-3-2-1-0 represent DP-A-B-C-D-E-F-G
See table 6 on page 8 of MAX7219/7221 datasheet.
Have no free time now to try with your suggestions but I'd like to ask is there a good library for MAX7219 which enables things I described?
There are good MAX7219 libraries but none of them have defined the entire alphabet. You can find array codes on Google. I'd copy them for you here but I have no free time to try helping more.
Gosh:
VineI want to create something like that but I could not find appropriate materials in internet. Does anybody know how to write text on this kind of displays?
7-segment displays have very limited capability to show letters, they are made for displaying numeric digits from 0 to 9.
Although: Displaying big letter A and small letter b and a few more like big letter C(or something similar) would be possible with a 7segment, too.
But you can't show all letters of the alphabet with a digit display.
For showing text you better use a text-display.
I understand that text display is much better choice but I want to try with 7 seg display. Sometimes it could be more practical
You're just limited to characters that are easily recognizable, these come to mind:
0,1,2,3,4,5,6,7,8,9,A,b,C,c,d,E,F,g,H,h,i,J,L,n,O(0),o,P, S (5), U,u,Y (4)
It only takes a couple minutes to add them to the array I posted earlier.
Thank you, CrossRoads for this. Is there the rest of the array (d-z)?
No, you need to make it up.
Grab a pencil and draw them out, making note of the on/off segments as you go. It is not hard.
Those examples are for standard shift register output.
As I noted above, the bit order to segment mapping is little different for the MAX7219
bits 7-6-5-4-3-2-1-0 represent DP-A-B-C-D-E-F-G
which is just as easy to use.
0/O 0b01111110
1 0b00110000
2 0b01101101
3 0b01111001
etc.
Well, by standard, I mean standard the way I wire them up.
If I had used a MAX7219 before I had used shift registers, I might have adopted the MAX7219 mapping as the standard way I did things, but since I hadn't, I used the most significant bit to represent the most significant segment, starting with the decimal point and then g-f-e-d-c-b-a, and have followed that format for 5+ years now.
Bin values for ledcontrol would be reversed so msb to lsb is DP-A,B...G
But it's all moot. This guy asked for help but says he doesn't have time to listen and try all of these silly suggestions. What he really wants is just to have it done for him. One of those people.
useful
Thanks