7段显示(Seven-segment display)&16段显示

发现了一个好玩的东西,搞一下研究研究。
做下记录。

7段显示

7段显示,是一种常用在电子显示设备中的显示数字的方法。用于计算器、微波炉等小型电子设备里显示数字。
通过在LCD里7个线段的不同组合,可以用来表示数字0-9。

1
2
3
4
5
6
7
8
9
A labeled seven-segment display, 
with each segment labeled A to G:
__A__
| | Each digit in a seven-segment display:
F B __ __ __ __ __ __ __ __
|__G__| | | | __| __| |__| |__ |__ | |__| |__|
| | |__| | |__ __| | __| |__| | |__| __|
E C
|__D__|

电子设备中可以通过电路板的触点,来实现不同数字的显示。
(图片来自wikipedia)

16段显示

同样的,如果是16段显示,则可以更精确的显示出来需要的内容。
7-segment, 9-segment, 14-segment, and 16-segment displays shown side by side。

也意味着16段显示,需要更多的段位标记。

7段显示python代码显示

Python代码展示下7段显示的数字0-9。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
rows = ['', '', '']
for i, numeral in enumerate(number):
if numeral == '.': # 呈现为小数点。
rows[0] += ' '
rows[1] += ' '
rows[2] += '.'
continue # 跳过数字之间的空格。
elif numeral == '-': # 呈现负号:
rows[0] += ' '
rows[1] += ' __ '
rows[2] += ' '
elif numeral == '0': # 呈现0。
rows[0] += ' __ '
rows[1] += '| |'
rows[2] += '|__|'
elif numeral == '1': #呈现1。
rows[0] += ' '
rows[1] += ' |'
rows[2] += ' |'
elif numeral == '2': # 呈现2。
rows[0] += ' __ '
rows[1] += ' __|'
rows[2] += '|__ '
elif numeral == '3': # 呈现3.
rows[0] += ' __ '
rows[1] += ' __|'
rows[2] += ' __|'
elif numeral == '4': # 呈现4.
rows[0] += ' '
rows[1] += '|__|'
rows[2] += ' |'
elif numeral == '5': # 呈现5.
rows[0] += ' __ '
rows[1] += '|__ '
rows[2] += ' __|'
elif numeral == '6': # 呈现6.
rows[0] += ' __ '
rows[1] += '|__ '
rows[2] += '|__|'
elif numeral == '7': # 呈现7。
rows[0] += ' __ '
rows[1] += ' |'
rows[2] += ' |'
elif numeral == '8': # 呈现8。
rows[0] += ' __ '
rows[1] += '|__|'
rows[2] += '|__|'
elif numeral == '9': # 呈现9。
rows[0] += ' __ '
rows[1] += '|__|'
rows[2] += ' __|'

# 如果这不是最后一个数字,小数点也不是下一个,
# 则添加一个空格(用于数字之间的空格):
if i != len(number) - 1 and number[i + 1] != '.':
rows[0] += ' '
rows[1] += ' '
rows[2] += ' '

最后输出的效果,是这样子的: