微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

必须对我的原始代码进行哪些更改?

如何解决必须对我的原始代码进行哪些更改?

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

pd2816 its datasheet is avalable here

解决方法

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

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

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

enter image description here

因此,如果您想写入第五位数字,您可以通过 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;

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。