设计要求

设计一个篮球竞赛24秒计数器,要求实现以下功能:1、24秒递减计数,到零后停止并且指示灯亮报警。2、有置数、暂停和清零功能。

单元电路的设计

这次实验中用到的芯片是74ls192,它是十进制双向计数器先来看一下它的管脚图以及功能

上图是74ls192的管脚图(我亲自用CAD画的,好幸苦)。其中P0、P1、P2、P3都是置数的,Q0、Q1、Q2、Q3是输出。它有两个CP,其中CPU是加计数,CPD是减计数,需要注意的是无论是先加计数还是减计数,除了接CLK的管脚外,另一个要借高电平。~CO为加计数的进位信号。~BO为减计数的进位信号。~PL为置数管脚。

参考电路图

对于原理图的分析

画原理图的时候一步步的来。

1.首先实现基本的置数然后24秒递减的功能。置数功能的实现并不难。将~LOAD置低电平就可以实现。

2.实现计数到零之后停止计数并且报警。

①首先搞清楚计数到零的标志是什么。当然是十位的借位端出现借位信号(到达00后个位向十位借位,十位不够,向跟高位借位,因此十位的借位端出现低电平)。

设计的时候需要考虑,十位的~BO平时是高电平,clk能够作用。到零后~BO是低电平,clk不能够作用。这个太简单了,不用分析。应该想到将十位的~BO和CLK相与之后送给个位的CPD。

②实现暂停功能的原理其实和到零后自动停止是差不多的。应该想到到零后自动停止是十位的~BO给信号,暂停时开关给信号而已。所以这样就很简单了。只需要将此开关的输出和十位的~BO还有CLK相与就可以实现了。

实际实验中容易出现问题的地方

其他的倒没有什么,本人做实验的时候因为开关是拨动的那种。所以往往暂停,开始,暂停,开始这样重复拨动的时候就会出现抖动情况,也就是在这样拨动的过程中会出现数字乱跳的情况。通过紧固连线还有小心的拨动开关不能从根本上解决问题,只是减小几率。

解决的办法是可以用硬件的方法消除抖动。如下图所示

D锁存器来实现对开关的防抖处理。原理是D置1的时候输出为1,置0的时候输出为0,而为空的时候不变。

常用的D锁存器是74ls373还有74ls573,(373在我的软件里见到过,573倒是没有)。

其他的思路

不一定用数字芯片这样复杂的做,单片机的话很简单,但时候再说吧。

c语言篮球24秒计时器编程,[转载]篮球24秒计时器的设计相关推荐

  1. 3d打印c语言与g代码混合编程,[转载]三轴运动控制器、串口运动控制器、支持G代码、3D打印机、雕刻、源代码开放、...

    串口运动控制器,支持G代码.M代码 3D打印机.雕刻机.激光雕刻.木工雕刻.微型CNC.开源GRBL运动控制平台 电源电压:DC12V-24V CPU:Atmega328P 串口:RS232电平,通信 ...

  2. AWK高级编程 转载

    AWK高级编程 转载 转载自:http://blog.csdn.net/wzhwho/article/details/5513791 1. 程序元素 一个awk 程序是一对以模式(pattern) 与 ...

  3. [转载]C#中各种计时器

    1.使用 Stopwatch 类 (System.Diagnostics.Stopwatch) Stopwatch 实例可以测量一个时间间隔的运行时间,也可以测量多个时间间隔的总运行时间.在典型的 S ...

  4. plc c语言做报警,基于PLC编程报警功能块的实现

    电气工程师在平常的程序编写中,会有各种各样的技巧类的方法,有助于程序结构清晰的,有利于程序简化的,更有自我创新的,多多地学他人之长以弥补自己之短,对自己的工作是有十足好处的. 在一个项目程序中,报警程 ...

  5. 高精度计时器(编程测试效率用)

    高精度计时器(编程测试效率用) 1.HiPerfTimer.cs using System; using System.Runtime.InteropServices; using System.Co ...

  6. 投篮c语言程序设计,教师招聘笔试体育之篮球必做20题(一)

    教师招聘笔试体育之篮球必做20题(一) 一.单项选择题 1.篮球是最基本的区域联防战术是( )站位. A.2-1-2 B.2-3 C.3-2 D.1-3-1 2.国际篮球规定,球员的球衣号码必须是从( ...

  7. 想要 24 小时自学编程,那是不可能的,先自学 10000 小时再说!

    为何每个人都如此匆忙? 走进任意一家书店,你会看到如何在24小时内自学 Java,以及在几天或几小时内教授 C.SQL.Ruby.算法等无穷无尽的书籍变种.亚马逊高级搜索以下关键词[title: te ...

  8. 为什么使用接口编程{转载}

    为什么使用接口编程{转载} 进行接口的介绍,必须介绍一下程序语言发展的历史才行,鲁迅先生说过"治学先治史",明白了程序语言发展的前世今生,才能知道为什么这么多语言为什么会这样,为什 ...

  9. 《Java语言程序设计与数据结构》编程练习答案(第三章)(三)

    <Java语言程序设计与数据结构>编程练习答案(第三章)(三) 英文名:Introduction to Java Programming and Data Structures, Comp ...

最新文章

  1. windows命令行下访问linux,Windows支持直接访问Linux子系统文件:你的下一台Linux何必是Linux...
  2. mysql实现查询最近7天的数据
  3. 【机器学习】快速入门简单线性回归 (SLR)
  4. linux系统时间函数,Linux时间时区详解与常用时间函数
  5. MySQL字符集详解
  6. c语言220程序,电赛必备220个C语言实例源码分享
  7. 计算机毕业设计中用java/php/net/pythont物流配送中心管理系统设计
  8. SQL注入——判断注入
  9. 令牌环 典型例题分析解答
  10. java jive歌词翻译_Java Jive歌词 Java JiveLrc歌词
  11. ESP8266制作天气预报海藻球微景观生态缸记录(一)
  12. gitlab安装教程、gitlab官网、英文文档
  13. matlab安装c盘吗,matlab的安装步骤(附winC盘“用户”文件夹下账户名的更改方法).doc...
  14. 命名空间“Microsoft.Office”中不存在类型或命名空间名称“Interop”(是缺少程序集引用吗?)...
  15. 100% 解决 VMware Workstation 与 Hyper-V 不兼容。请先从系统中移除 Hyper-V 角色
  16. navicat中选择utf-8时的困惑
  17. Codeforces Round #787 (Div. 3)补题
  18. Codeforces - Good Bye 2020
  19. python生成圆形_python生成圆形图片的方法
  20. ISP图像对齐(二):Deep Image Homography Estimation

热门文章

  1. 图像融合论文及代码整理最全大合集
  2. appium知识总结
  3. 蓝牙的配对和连接的建立过程
  4. [转载] 信息系统项目管理师视频教程——17 项目人力资源管理
  5. OpenLayers之 OverLay问题汇总
  6. web应用的log4j配置
  7. 怎样下载excelDIY工具箱怎么办_办公必备的工具箱网站,内含111个实用小工具,完全免费...
  8. 重磅 | 推荐一款技术人必备的写作神器 (支持多平台博客群发)
  9. Unity 插件免费分享——需要自取——更新于2022.9.7
  10. weinre 使用教程