2位上/下计数器电路

通常情况下,你可以看到数字显示器显示分数时,按下按钮的记分板。这个记分板的主要中心是2位数字的计数器电路。2位数字显示在两个7段显示屏上。

在这个项目中,我将向您展示如何使用8051单片机和ATmega8单片机建立一个2位上下计数器电路。

2位上下计数电路原理

2位数下反计数器电路的主要原理是通过按下按钮来递增7段显示的值。按下按钮1时,显示器上的值递增一个,并且当按下另一个按钮时,显示器上的值递减一个。

显示器上的值可以从0-99递增或递减,因为它只使用2个显示器。如果您想显示3位数字,应使用3个显示器,即3个7段显示器。有许多电路可用于2位上/下计数器,但使用微控制器减少了组件和电路板上的空间,但需要简单的编程。

2位向上向下计数器电路图像
2位上下计数器电路图2
2位上下计数器电路图3

请阅读相关文章频率计数器电路

两位数上下计数器电路图

电路1:采用8051单片机

2数字上下计数器电路图8051

组件的要求

  • AT89C51(8051微控制器)
  • 2 x 7段显示(常见阳极)
  • 2 X 2N2222 NPN晶体管
  • 3 X按钮
  • 2 X 10KΩ电阻器
  • 2 X 470Ω电阻器
  • 8 x100Ω电阻
  • 11.0592 MHz水晶
  • 2 x 33pf电容器
  • 10μF/ 16V电容器
  • 1KΩ X 8电阻包
  • 微型电路试验板
  • 5 v电源
  • 8051年程序员

电路2:采用ATmega8单片机

2位上下计数器电路图

组件的要求

  • ATmega8单片机
  • 2 x 7段显示(常见阳极)
  • 2 X 10KΩ电阻器
  • 2 x330Ω电阻
  • 2 X按钮

2位7段上下计数器的电路设计

2digit上/下计数器由连接到Atmega8微控制器的两个七个段显示器组成。七个段显示器由8个引脚和一个公共引脚组成。

七段显示器主要有两种类型:1)共阴极2)共阳极。这里使用的显示器是普通阴极显示器。一般对于共阴极显示器,共引脚要接地,对于共阳极显示器,共引脚要接VCC。

在七个段显示中,有七个段,它们类似于七个LED。七个引脚属于这七个段,其中最后一个引脚是显示器的锥形点的点。对于公共阴极,显示将Logic1分配给段引脚发出特定的段。在公共阳极的情况下,应分配段引脚,以便发光段。每个段都是从'a'开始的一个名称,最后一段点是'h'。

在我们的电路中,7段显示器通过330欧姆的限流电阻连接到微控制器。下拉模式的两个按钮也被连接。

按下拉模式连接按钮的必要性是为了避免按钮的浮动状态,即未知状态。如果按钮以下拉模式连接,这将确保按钮最初处于logic0状态。

你知道8051单片机如何实现双向访问计数器电路?

两位数上下反电路仿真视频

2位上下计数器电路如何操作?

  1. 最初,电源电源。
  2. 在7个分段上显示的值是' 00 '。
  3. 按下电路中的按钮1。七个段的值递增到“01”。
  4. 再次按下按钮1.显示屏上的值是'02'。
  5. 现在,按第二个按钮。您可以看到值递减为01。
  6. 显示的值可以增加到99,99后,如果按钮1被按下,它开始从' 01 '增加。如果在递减到“00”后按下第二个按钮,则显示“00”。该值必须至少自增到“01”后才能修改。

算法编程

  1. 声明微控制器的相应端口为输入或输出。
  2. 声明一个包含7段代码的数组,即,如果要显示数字1,则应该传递的二进制值如下:

Dp g f e d c b a
1 1 1 1 1 0 0 1

这是因为b和c段应该分配逻辑0来显示' 1 ',我使用的是公共阳极7段显示器。因此,二进制值0b11111001或十六进制值0xf9被分配给要显示“1”的特定端口。数组应该由0-9个二进制或十六进制值组成。

  1. 使用if else循环检查按钮的状态。
  2. 如果第一次按下按钮1,前7段(左边)显示0,另一段显示1。所以输出是' 01 '
  3. 如果第二次按下按钮1,第二个按钮上的值应该加1。
  4. 如果按下第二个按钮,第一个段上的值应减一个值。

代码

8051单片机代码

ATmega8单片机代码

2位上下计数器电路使用ATmega8输出

2位上下计数器电路的应用

  1. 这个电路可以用在记分牌上。
  2. 上行/下行计数器用于计算通过某点的对象数量。
  3. 它用于计算进入房间的人数。

本电路的局限性

这个特殊的上行/下行计数器电路被限制为2位,即0-99。如果需要超过3个数字,则应该使用另一个需要控制器更多引脚的显示器。

48反应

  1. 你好,我正在制作与本文相同功能的项目,但我只使用74ls192和7447。我想用arduino改变它。但我只是个初学者。有没有可能有你的代码。。

    非常感谢
    致以最亲切的问候

  2. 你好,谢谢的
    项目标题是我需要它来修改我的项目之一
    顺便说一下,我通过使用VHDL(硬件Deschription Language)来做这件事
    祝你工作愉快

  3. 我想要这个代码,我只是想知道上下计数器的想法。因为我需要把它应用到我的家庭作业中。我希望你能帮我。谢谢。。

  4. 你好,我需要为我的微控制器类做项目。它和这个有点不同,因为我们试着用3个7段。但是您的代码真的可以帮助我和我的队友。谢谢。

  5. 我需要这个为我的微控制器迷你项目。这是同一个项目。(我们真的需要你的帮助。)谢谢。致以最亲切的问候。

  6. 你好,
    我正在为我的小男孩腾出宇宙飞船,他们几乎是两个。这将是一个带有控制台和操纵杆的帐篷型安排,他将坐在后面,他将成为船长并通过我们的睡前故事/冒险控制船。我们在那里整合了Skype和Facetime,所以我们可以与谁讨论,谁假装是地面控制等。我们将拥有耳机和MICS将推动各种LM3914的频谱分析仪,在控制台上的闪烁LED阵列。您的计数器电路将是武器系统,其中UP按钮将在我身边“装载”弹药和火箭,然后向下按钮将从操纵杆路由。覆盆子PI将触发所有音效。我认为使用对代码的一点修改另一个计数器电路还可以代表燃料表,这将递减在定时器循环上。所有这些都将是教导他基本算术的辉煌方式。我也希望他可能会感到兴趣,因为他的增长,他可以为自己学习这个东西。
    如果您能给我提供您的代码,我将非常感激。我以前从未写过任何C语言,但我对Perl还行,并理解代码结构,因此我将能够遵循它并做出必要的更改。

    1. Hai你能展示一下逻辑计数器的组件吗?我能要一个带按钮的逻辑驱动器吗?我在我们的项目中需要
      我是工业电工,需要您的帮助

  7. 您好,我需要编程代码真的很快,我明天在微控制器考试,我需要介绍我为此电路“写道”的代码。我只用这个目的

  8. -我需要代码来做一个小项目
    -因为这是第一次我要做一个小项目,我将使相同的项目在你的网站。
    谢谢

  9. 我想用它做我的课堂作业。
    它有点不同。我必须显示和下降计数,然后停止在一个特定的值,即我的类

  10. 你好,我真的需要我们学校项目的代码。我们的任务是做柜台出纳员。我不太懂电路。亚博彩票下载你的代码真的会对我们的项目有很大帮助…

    -谢谢

    1. 在模拟视频下面有一个下载代码的链接....如果你在那里找不到,也可以去文章的顶部。。

  11. 我正在做odr微控制器projct ......但只是为了获得编码的总和......我需要DIS PROJCT的编码部分

  12. 你好,我想看看你的MC代码。我是个软件菜鸟,硬件我能搞定。我想把这个项目作为我最后一年的一部分(开发几个节能紧凑型设备),但对你的计数器做一个小调整;我将使用两个PIR传感器作为输入…我希望这个项目能在本周完成,如果您愿意的话。

  13. 你好,

    如果我使用Atmega16-8ml,则代码是否会工作。
    另外,如果我使用4个显示器,我该怎么做?亚博彩票下载

  14. 我发现这个项目很有趣,有想法使用这个概念和即兴开发我自己的项目,请提供代码。

  15. 你好。我正在做对象计数器使用88s52uC作为我最后一年的项目,但我不能帮助它,因为我已经尽了我最大的努力。如果能得到您的帮助,我们将不胜荣幸。注意,我用的是keil idea .regards.期待你的回复尽快

  16. 你好先生/女士,
    我是Kishan &现在我正在寻找小项目。我在做电机绕线机,这是不同于市场的机器。因为市场上的机器需要时间高达16-17分钟{理想的},但我的机器需要时间高达3-4分钟{理想的},绕组线的主要和次要。有时我只做了7410和7411,但有一些错误发生。所以我需要这种类型的计数器电路,其中包括一个选项为#预置计数回合的值。
    希望你可以帮助我制作这台机器。因为在真的,它不是任何类型的项目,但业余爱好。

  17. 嗨. .
    能告诉我你的密码吗?
    我想用作我的迷你项目的参考..
    我使用IR传感器作为输入..
    一个用于计数,另一个用于倒计时..

  18. 我正在做一个项目,只需要一个两位数的LED显示显示数字状态的音频混音器音效模块。这将很好地工作,并节省我的时间,因为它的简单性。如果您能寄给我这个设备所需的代码,我将不胜感激。谢谢你!

留下一个回复

您的电子邮件地址不会被公开。必填字段被标记*