我的原始代码需要进行哪些更改?

问题描述 投票:0回答:2

我已经为DL1416显示器编写了代码,它是一个4位16段显示器。我需要使用arduino测试pd2816显示器。 pd2816 是一个 8 位 18 段显示器。有人可以帮助我对我的实际代码进行哪些更改,以便我可以滚动 8 位数字而不是 4 位数字并检查 PD 2816 中的所有段...... DL1416 数据表

pd2816 其数据表可在此处获取

embedded arduino-c++ seven-segment-display
2个回答
0
投票

虽然我不确定是什么阻止您阅读问题中链接的数据表,但我会回答这个问题

我在这里面临的问题是它是一个 8 位数字以及如何滚动 将数字填入所有 8 个部分

根据数据表,您可以使用信号 A1、A2、A3 来寻址要写入的数字,只需提供所需数字的位即可。

因此,如果您想写入第五位数字,您可以通过 D0-D7 提供该数字,并根据该表设置控制输入。 5 是 0b101,所以 A0 为高电平,A1 为低电平,A2 为高电平

您可能还会考虑设置这些值的方式,而无需超过 600 次显式调用 digitalWrite

使用设置输出并将组合存储为数字的函数。 7位代表一个数字。那么为什么不利用这个事实呢?

由于引脚 0-7 全部位于一个端口上,您甚至可以使用端口操作。

而不是

  digitalWrite(0, HIGH);
  digitalWrite(1, LOW);
  digitalWrite(2, LOW);
  digitalWrite(3, LOW);
  digitalWrite(4, HIGH);
  digitalWrite(5, HIGH);
  digitalWrite(6, LOW);
  digitalWrite(7, LOW);

你可以简单地写

PORTD = 0b00110001;

0
投票

您可以分享1416的代码吗?

© www.soinside.com 2019 - 2024. All rights reserved.