八位二进制数,​转换为十位显示在数码管上,高四位表示十位,低四位表示个位,用查表法

转换为

八位二进制数-->>转换成

0000 0000 00H
0000 0001 01H
0000 0010 02H
0000 0011 03H
0000 0100 04H
0000 0101 05H
0000 0110 06H
0000 0111 07H
0000 1000 08H
0000 1001 09H
0000 1010 10H
0000 1011 11H
0000 1100 12H
0000 1101 13H
0000 1110 14H
0000 1111 15H
0001 0000 16H
0001 0001 17H
0001 0010 18H
0001 0011 19H
0001 0100 20H
0001 0101 21H
0001 0110 22H
0001 0111 23H
0001 1000 24H
0001 1001 25H
0001 1010 26H
0001 1011 27H
0001 1100 28H
0001 1101 29H
0001 1110 30H
0001 1111 31H
……
0110 0011 99H

ZHUAN_TAB:
DB 00H, 01H, 02H, ……, 99H

END追问

我要的是思路,不是转换称十六禁止,这个我也会。

追答

呵呵,难道这不是思路?

这个,也并不是转换成十六进制。

这个,就是你要求的:高四位表示十位,低四位表示个位,用查表法。

追问

是我没说明白,我的那个八位二进制数已经转换成十进制的了,就是高四位已经是十进制数了,只不过是以二进制的形式存在高四位的,我想知道我用查表发显示这两个数,怎么编程,我便了一个,没放进主程序时好用,但是放到主程序里,只能显示低四位(个位),高四位数码管是闪烁的。

追答

好的,如果是动态显示,可以如下:

可以先把低四位,分离出来,查表转换成七段码,输出显示,延时一下,再关闭显示;

然后,再把高四位,转到低四位,

分离出来,查表转换成七段码,输出显示,再延时一下,最后,关闭显示。
----
显示期间,关闭显示,很重要。 
否则常会出现:闪烁、虚影、错位、等等。
----
到我的百度空间看看吧,有很多这方面的程序。

追问

对了,就是关闭显示那段我弄的不好,我去看看,谢谢你啦!不明白我可不可以问你呢???

温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-07-29
0000 0
0001 1
0010 2
0011 3
0100 4
0101 5
0110 6
0111 7
1000 8
1001 9
1010 10
1011 11
1100 12
1101 13
1110 14
1111 15追问

????

追答

4位4位看,还不明白?

追问

你没明白我的问题啊,我说的是思路,我用的查表法变得,单独执行显示还正常,但是放到主程序里就有问题了。

相似回答