m (→Basics: corrected bcd) |
|||
Line 75: | Line 75: | ||
}; | }; | ||
</source> | </source> | ||
+ | |||
+ | == Hardware Decoders/Drivers == | ||
+ | {{empty section}} | ||
[[Category:display devices]] | [[Category:display devices]] |
Revision as of 12:57, 10 November 2015
A seven-segment display (SSD) is a display device packaged in a single IC chip and composed of a group of seven bar-shaped LEDs. Some seven-segment displays may come with a decimal point (DP). Different numbers and letters may be formed by powering selected LED elements. SSDs come in various packages and pin arranges.
Configurations
There are two basic configurations of seven-segment displays: common cathode (CC) and common anode (CA).
Common Anode
A common anode seven-segment display is one where the anode leads of all the LEDs are tied together. In a CA SSD, power must be supplied to anode that is common to all the segments. Appropriate segments can be lit up by applying ground to them.
Common Cathode
a Common cathode seven-segment display is one where the cathode leads of all the LEDs are tied together.
Basics
The various numbers (and possibly A-F) can be displayed by simply powering the correct segments by either connecting GND or Vcc.
Digit | BCD | 7-Segments | abcdefg | gfedcba | Display | Reference | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
D | C | B | A | a | b | c | d | e | f | g | |||||
0 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 1 | 1 | 1 | 0 | 0x7E | 0x3F | ||
1 | 0 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0x30 | 0x06 | ||
2 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 1 | 1 | 0 | 1 | 0x6D | 0x5B | ||
3 | 0 | 0 | 1 | 1 | 1 | 1 | 1 | 1 | 0 | 0 | 1 | 0x79 | 0x4F | ||
4 | 0 | 1 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 1 | 1 | 0x33 | 0x66 | ||
5 | 0 | 1 | 0 | 1 | 1 | 0 | 1 | 1 | 0 | 1 | 1 | 0x5B | 0x6D | ||
6 | 0 | 1 | 1 | 0 | 1 | 0 | 1 | 1 | 1 | 1 | 1 | 0x5F | 0x7D | ||
7 | 0 | 1 | 1 | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 0x70 | 0x07 | ||
8 | 1 | 0 | 0 | 0 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 0x7F | 0x7F | ||
9 | 1 | 0 | 0 | 1 | 1 | 1 | 1 | 1 | 0 | 1 | 1 | 0x7B | 0x6F | ||
A | X | X | X | X | 1 | 1 | 1 | 0 | 1 | 1 | 1 | 0x77 | 0x77 | ||
b | X | X | X | X | 0 | 0 | 1 | 1 | 1 | 1 | 1 | 0x1F | 0x7C | ||
C | X | X | X | X | 1 | 0 | 0 | 1 | 1 | 1 | 0 | 0x4E | 0x39 | ||
d | X | X | X | X | 0 | 1 | 1 | 1 | 1 | 0 | 1 | 0x3D | 0x5E | ||
E | X | X | X | X | 1 | 0 | 0 | 1 | 1 | 1 | 1 | 0x4F | 0x79 | ||
F | X | X | X | X | 1 | 0 | 0 | 0 | 1 | 1 | 1 | 0x47 | 0x71 |
In-code decoding can be done easily using a simple lookup table such as the one below:
const unsigned char seven_seg_digits_decode_abcdefg[16]=
{
/* 0 1 2 3 4 5 6 7 */
0x7E, 0x30, 0x6D, 0x79, 0x33, 0x5B, 0x5F, 0x70,
/* 8 9 A B C D E F */
0x7F, 0x7B, 0x77, 0x1F, 0x4E, 0x3D, 0x4F, 0x47
};
const unsigned char seven_seg_digits_decode_gfedcba[16]=
{
/* 0 1 2 3 4 5 6 7 */
0x3F, 0x06, 0x5B, 0x4F, 0x66, 0x6D, 0x7D, 0x07,
/* 8 9 A B C D E F */
0x7F, 0x6F, 0x77, 0x7C, 0x39, 0x5E, 0x79, 0x71
};
Hardware Decoders/Drivers
This section is empty; you can help add the missing info by editing this page. |