将索尼LH51-2数显表的实时数据提交至电脑主机

2019-03-24 20:10发布

最近本人在做一个项目,就是要将索尼LH51-2数显表的实时数据提交至电脑主机,这里的实时数据只是两个二位数码管的,即将四位数码管的实时数据进行提交。
本人用了AT89S51编程,用的是汇编语言,已经实现了将0至9的段码值翻译成对应的十六进制ASCII值,并经RS232接口串行发送至电脑主机,利用串口调试助手显示出来,我编写的汇编源程序是通过查表的方式来实现的。
我的想法是,数码管的段码值逐位输入至P0口,逐位翻译后串行发送。但问题是,索尼LH51-2数显表中数码管的段码如何输入至AT89S51的P0口呢,如何提取数码管的段码呢,在数码管显示时,我测得每一个数码管的八段引脚都是高电平,这样一来,每次输入P0口的都是#0FFH...还有,怎样才能逐位输入至P0口,即将千位、百位、十位、个位的数码管段码逐位进行输入,如何控制,如何实现呢,或者有没有别的可行方案呢?请各位高手出谋划策,我由衷的感谢大家!!
以下附件是本人编写的汇编源程序,注:千位、百位、十位、个位的数码管的八段引脚(a、b、c...g、dp)已处理为并联,P3.3、P3.4、P3.5、P3.6分别接千位、百位、十位、个位数码管的公共端。 此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
7条回答
lovelearning
2019-03-25 13:01

“你查一下数码管的位选,根据这个来进行操作。将位选和段选结合起来,根据不同的电平进行分析,这样很容易得出数据了。”

我如何用程序来控制每一位的选通呢,我这里的疑惑是,一般情况下,是将数码管的公共端作为位选端,然后单片机输出信号对其选通,送段码值显示,但现在是数码管已经被LH51-2数显表用来动态扫描显示了,是一个逆过程,如果单片机还向数码管的位选端输信号是否还能起到控制的作用呢?还有,我测得数码管在显示时,每一个段的电压值均有4.0几V左右,而且不管当前显示数字是多少,电压值变化都不大,如何分析和提取有效数据呢?请指点,谢谢!!

一周热门 更多>