Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/arduino/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ C++/Arduino 7位数字不';不要显示5或6_C++_Arduino_Arduino Uno - Fatal编程技术网

C++ C++/Arduino 7位数字不';不要显示5或6

C++ C++/Arduino 7位数字不';不要显示5或6,c++,arduino,arduino-uno,C++,Arduino,Arduino Uno,我的问题很简单,但似乎无法解决。 我正在尝试在7位显示器(0-9)上显示基本数字。我用二进制代码来做输出。 但不知怎的,我的显示器显示的是9,而实际上需要显示的是5。另外,如果我想显示6,它会显示8。 有人能帮我吗? 这是我正在使用的二进制代码 0 = B00000011 1 = B10011111 2 = B01001011 3 = B00001101 4 = B10011001 5 = B01001001 6 = B01000001 7 = B00011111 8 = B00000001 9

我的问题很简单,但似乎无法解决。 我正在尝试在7位显示器(0-9)上显示基本数字。我用二进制代码来做输出。 但不知怎的,我的显示器显示的是9,而实际上需要显示的是5。另外,如果我想显示6,它会显示8。 有人能帮我吗? 这是我正在使用的二进制代码

0 = B00000011
1 = B10011111
2 = B01001011
3 = B00001101
4 = B10011001
5 = B01001001
6 = B01000001
7 = B00011111
8 = B00000001
9 = B00001001

没有你正在使用的电路板,很难准确地确定到底发生了什么,但我可以做出一些有根据的猜测。既然你在学习,我就有点啰嗦了(反正这是我的天性)

以下是7段显示器及其标签(并排)的示意图

从代码中可以看出,从值到显示器的连接在一个字节内如下所示(位号在顶部,X表示未使用),其中0为开,1为关:

76543210
abcdefgX
基于此,表中使用的值应为:

0 = B00000011
1 = B10011111
2 = B00100101
3 = B00001101
4 = B10011001
5 = B01001001
6 = B01000001
7 = B00011111
8 = B00000001
9 = B00001001
除非我犯了一个很可能的错误,否则我认为您对“2”的实现是不正确的。这更可能是因为“2”值应该有5个“开”位,而您的实现中只有4个0


由于您认为2是正确的,这意味着第6位的导线(“上述7段图中的b”)松动或接线错误(或可能对其他导线短路),因为当该位上有“1”时,它显然仍处于“开”状态。这将导致6显示为8,5显示为9,如您所述。

如果无法访问您正在使用的电路板,很难准确确定发生了什么,但我可以做出一些有根据的猜测。既然你在学习,我就有点啰嗦了(反正这是我的天性)

以下是7段显示器及其标签(并排)的示意图

从代码中可以看出,从值到显示器的连接在一个字节内如下所示(位号在顶部,X表示未使用),其中0为开,1为关:

76543210
abcdefgX
基于此,表中使用的值应为:

0 = B00000011
1 = B10011111
2 = B00100101
3 = B00001101
4 = B10011001
5 = B01001001
6 = B01000001
7 = B00011111
8 = B00000001
9 = B00001001
除非我犯了一个很可能的错误,否则我认为您对“2”的实现是不正确的。这更可能是因为“2”值应该有5个“开”位,而您的实现中只有4个0


由于您认为2是正确的,这意味着第6位的导线(“上述7段图中的b”)松动或接线错误(或可能对其他导线短路),因为当该位上有“1”时,它显然仍处于“开”状态。这将导致6显示为8,5显示为9,正如您所描述的。

5和9有相同的代码…@BoPersson,但如果我有这样的代码(我编辑了帖子),它仍然会给我9,然后显示您的完整代码和接线。5和9有相同的代码…@BoPersson,但如果我有这样的代码(我编辑了帖子)它仍然给我一个9码,然后显示你的完整代码和接线。结果是我的屏蔽没有正确连接。。但现在我正在努力显示2位数字。。比如10或11等。你能帮我吗?这应该是一个不同于这个问题的问题,因为最好把这些问题的焦点缩小。关于你的新问题,我建议添加更多关于你正在使用的屏蔽类型的详细信息,以及你试图用来显示不同数字的代码。如果你在这里添加后续问题的链接,我会在有机会的时候看一看,不过可能有人会在我之前回答:)结果是我的防护罩没有正确连接。。但现在我正在努力显示2位数字。。比如10或11等。你能帮我吗?这应该是一个不同于这个问题的问题,因为最好把这些问题的焦点缩小。关于你的新问题,我建议添加更多关于你正在使用的屏蔽类型的详细信息,以及你试图用来显示不同数字的代码。如果您在此处添加后续问题的链接,我会在有机会时查看,不过可能有人会在我之前回答:)