必须对我的原始代码进行哪些更改?
What changes has to be made to my original code?
我已经为 DL1416 显示器写了一个代码,它是一个 4 位 16 段显示器。我需要使用 arduino 测试 pd2816 显示器。
pd2816 是一个 8 位 18 段显示器。有人可以帮助我对我的实际代码进行哪些更改,以便我可以滚动 8 位数字而不是 4 位数字并检查 PD 2816 中的所有段....
DL1416 datasheet
虽然我不确定是什么阻止了您阅读您在问题中链接的数据表,但我会回答这个问题
The problem I am facing here is it is a 8 digit and how to scroll the
numbers into all the 8 segments
根据数据表,您可以使用信号 A1、A2、A3 寻址要写入的数字,您只需提供所需数字的位即可。
所以如果你想写第五位数字,你通过 D0-D7 提供数字并根据 table 设置控制输入。
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;
我已经为 DL1416 显示器写了一个代码,它是一个 4 位 16 段显示器。我需要使用 arduino 测试 pd2816 显示器。 pd2816 是一个 8 位 18 段显示器。有人可以帮助我对我的实际代码进行哪些更改,以便我可以滚动 8 位数字而不是 4 位数字并检查 PD 2816 中的所有段.... DL1416 datasheet
虽然我不确定是什么阻止了您阅读您在问题中链接的数据表,但我会回答这个问题
The problem I am facing here is it is a 8 digit and how to scroll the numbers into all the 8 segments
根据数据表,您可以使用信号 A1、A2、A3 寻址要写入的数字,您只需提供所需数字的位即可。
所以如果你想写第五位数字,你通过 D0-D7 提供数字并根据 table 设置控制输入。 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;