ardugeek 发表于 2017-4-1 13:16:59

7段数码管无法显示某些字母数字

请教:一个四位的数码管,用7219驱动。已知一个8位二进制数从左到右,第二位开始的7个数分别对应7段数码管的其中一段。分别置“1”能点亮其中一段,比如B00000001是中间的。但是0-9只有1和7能正常显示,其它的都是一闪而灭。这是什么原因?
部分程序代码如下:

void loop() {
lc.setRow(0,0,B01111111);
delay(1000);
lc.clearDisplay(0);
lc.setRow(0,1,B01111111);
delay(1000);
   lc.clearDisplay(0);
lc.setRow(0,2,B01111111);
delay(1000);
lc.clearDisplay(0);
lc.setRow(0,3,B01111111);
delay(1000);
   lc.clearDisplay(0);
}

这个程序本来应该是数字“8”从左到右依次显示,但是只在第一位闪了一下就没反应了。

zjz5717 发表于 2017-4-2 09:38:41

没用过这个库,你的四位数码管是动态还是静态,感觉动态数码管Arduino的接口足够

wwwusr 发表于 2017-4-2 22:24:10

Serial.print("1");
在每次显示数字后,串口输出一个数,或者放在你觉得程序可能有问题的地方,就能知道问题在哪里了:lol

ardugeek 发表于 2017-4-5 11:07:07

感谢两位的回复。
1 接口够的。但我用的是7219驱动的。查了些资料,arduino很少有动态静态的说法,我对这个不懂。
2 添加串口输出语句后,串口监视器的情况是如下循环:显示1,停两秒显示1,停1秒显示11,停1秒。数码管没反应,不亮。这是何故?
3 进一步测试发现,任意点亮3段运行正常,4段可能会有问题,超过4段肯定运行不了。难道涉及到电流?
页: [1]
查看完整版本: 7段数码管无法显示某些字母数字