【数字电子技术课程设计】多功能数字电子钟的设计

目录

摘要

1  设计任务要求

2  设计方案及论证

2.1  任务分析

2.1.1 晶体振荡器电路

2.1.2 分频器电路

2.1.3 时间计数器电路

2.1.4 译码驱动电路

2.1.5 校时电路

2.1.6 整点报时/闹钟电路

2.2  方案比较

2.3  系统结构设计

2.4  具体电路设计

3  电路仿真测试及结论分析

3.1  电路仿真测试流程

3.1.1 时基电路部分(石英晶体振荡器+分频器)

3.1.2 计时电路部分

3.1.3 校时电路部分

3.1.4 整点报时/闹钟电路部分

3.2   数据分析和结论

3.3  遇到的问题与解决方法

4  收获与体会

5  参考文献

附录

        1.元器件清单

        2.PCB版图


摘要

        数字钟是一种用数字电路技术实现时、分、秒计时的装置,与机械式时钟相比具有更高的准确性和直观性,且无机械装置,具有更长的使用寿命,因此得到了广泛的使用。

        数字钟从原理上讲是一种典型的数字电路,其中包括了组合逻辑电路和时序电路。目前,数字钟的功能越来越强,并且有多种专门的大规模集成电路可供选择。数字钟适用于自动打铃、自动广播,也适用于节电、节水及自动控制多路电器设备。它是由数子钟电路、定时电路、放大执行电路、电源电路组成。为了简化电路结构,数字钟电路与定时电路之间的连接采用直接译码技术。具有电路结构简单、动作可靠、使用寿命长、更改设定时间容易、制造成本低等优点。

        从有利于学习的角度考虑,这里主要介绍以中小规模集成电路设计数字钟的方法。

1 设计任务要求

[1] 时-分-秒6位LED显示;

[2] 时分可以按键校准;

[3] 一路定时和准点报时。

设计方案及论证

2.1  任务分析

要求1:时-分-秒6位LED显示

分析:通过译码器和数码管实现

要求2:时分可以按键校准

分析:按键产生脉冲经过计数器处理发送给译码器并由数码管显示

要求3:一路定时和准点报时

分析:定时和准点报时可使用通过一种预置初值的方法与当前时间进行比较,再通过蜂鸣器实现报时。也可以定时电路采用上述方法,准点报时利用分位产生的进位脉冲触发蜂鸣器实现报时。

数字钟实际上是一个对标准频率(1HZ)进行计数的计数电路。由于计数的起始时间不可能与标准时间(如北京时间)一致,故需要在电路上加一个校时电路,同时标准的1HZ时间信号必须做到准确稳定。通常使用石英晶体振荡器电路构成数字钟 ,下图为构成框图。

 . 图 1系统框图

2.1.1 晶体振荡器电路

        给数字钟提供一个频率稳定准确的32768Hz的方波信号,保证数字钟的走时准确及稳定。

方案一:由集成电路定时器555与RC组成的多谐振荡器作为时间标准信号源。

图 2  555与RC组成的多谐振荡器图

方案二:选用石英晶体构成振荡器电路

图 3 石英晶体振荡器图

方案三:由集成逻辑门与RC组成的时钟源振荡器

 图 4 门电路组成的多谐振荡器图

2.1.2 分频器电路

        从尽量减少元器件数量的角度来考虑,这里可选多极2进制计数电路CD4060和CD4040来构成分频电路。CD4060和CD4040在数字集成电路中可实现的分频次数最高,而且CD4060还包含振荡电路所需的非门,使用更为方便。

        CD4060计数为14级2进制计数器,可以将32768Hz的信号分频为2Hz,其内部框图如图2.1所示,从图中可以看出,CD4060的时钟输入端两个串接的非门,因此可以直接实现振荡和分频的功能。

图 5.1 CD4060内部框图                图5.2   CD4040内部框图

CD4040计数器的计数模数为4096(),其逻辑框图如图5.2。如将32768Hz信号分频为1Hz,则需外加一个8分频计数器,故一般较少使用CD4040来实现分频。

2.1.3 时间计数器电路

        时间计数电路由秒个位和秒十位计数器、分个位和分十位计数器及时个位和时十位计数器电路构成,其中秒个位和秒十位计数器、分个位和分十位计数器为60进制计数器,而根据设计要求,时个位和时十位计数器为24进制计数器。

        一般采用10进制计数器来实现时间计数单元的计数功能。为减少器件使用数量,可选74LS390,其内部逻辑框图如图6所示。该器件为双2-5-10异步计数器,并且每一计数器均提供一个异步清零端(高电平有效)。

图 6 74LS390内部逻辑框图

        秒个位计数单元为10进制计数器,无需进制转换,只需将QA与CPB(下降沿有效)相连即可。CPA(下降没效)与1Hz秒输入信号相连,Q3可作为向上的进位信号与十位计数单元的CPA相连。

        秒十位计数单元为6进制计数器,需要进制转换。将10进制计数器转换为6进制计数器的电路连接方法如图7所示,其中Q2可作为向上的进位信号与分个位的计数单元的CPA相连。

图 7 10进制-6进制计数器转换电路

        分个位和分十位计数单元电路结构分别与秒个位和秒十位计数单元完全相同,只不过分个位计数单元的Q3作为向上的进位信号应与分十位计数单元的CPA相连,分十位计数单元的Q2作为向上的进位信号应与时个位计数单元的CPA相连。

        时个位计数单元电路结构仍与秒或个位计数单元相同,但是要求,整个时计数单元应为24进制计数器,不是10的整数倍,因此需将个位和十位计数单元合并为一个整体才能进行24进制转换。利用1片74LS390实现24进制计数功能的电路如图8所示。

        另外,图8所示电路中,尚余-2进制计数单元,正好可作为分频器2Hz输出信号转化为1Hz信号之用。

图 8  24进制计数器电路

2.1.4 译码驱动电路

        译码驱动电路将计数器输出的8421BCD码转换为数码管需要的逻辑状态,并且为保证数码管正常工作提供足够的工作电流。用于驱动LED七段数码管的译码器常用的有74LS48。74LS48是BCD-7段译码器/驱动器,其输出是OC门输出且高电平有效,专用于驱动LED七段共阴极显示数码管。

2.1.5 校时电路

        一般时钟都应具备校时功能,即对时钟的时间进行手动调整。

方案一:根据要求,数字钟应具有分校正和时校正功能,因此,应截断分个位和时个位的直接计数通路,并采用正常计时信号与校正信号可以随时切换的电路接入其中。图10所示为所设计的校时电路。

图 9 方案一校正电路图

方案二:在方案一基础上增加了了0.01uf的电容防抖动。

图 10方案二校正电路图

方案三:校准电路由基本RS触发器和“与”门组成,基本RS触发器的功能是产生单脉冲,主要作用是起防抖动作用。未拨动开关K时,“与非”门G2的一个输入端接地,基本RS触发器处于“1”状态,这是数字钟正常工作,“分”进位脉冲能进入“分”计数器。拨动开关K时,“与非”门G1的一个输入端接地,于是基本RS触发器转为“0”状态。秒状态可以直接进入“分”计数器,而“分”进位脉冲被阻止进入,因而能较快地校准分计数器的计数值。校准后,将校正开关恢复原位,数字钟继续进行正常计时工作。

图 11 方案三校正电路

2.1.6 整点报时/闹钟电路

        一般时钟都应具备整点报时电路功能,即在时间出现整点前数秒内,数字钟会自动报时,以示提醒。

        根据要求,整点报时通过分计数器产生的进位脉冲控制蜂鸣器。闹钟部分选用74LS85四路比较器分别对时计数器和分计数器的高低位与定时电路对应的位数进行比较,四路输出通过与门连接,与时进位脉冲共同控制蜂鸣器。

        选蜂鸣器为电声器件,蜂鸣器是一种压电电声器件,当其两端加上一个直流电压时酒会发出鸣叫声,两个输入端是极性的,其较长引脚应与高电位相连,图示的三极管时为了驱动蜂鸣器。

图12  报时电路图

2.2  方案比较

晶体振荡器电路:

        用555组成的脉冲产生电路: R1=15*103Ω,R2=68*103Ω,C=10μF ,则555所产生的脉冲的为:f=1.43/[(R1+2*R2)*103*10*106=0.947Hz,而设计要求为1Hz,因此其误差为5.3%,在精度要求不是很高的时候可以使用。

        石英晶体振荡电路:采用的32768晶体振荡电路,其频率为32768Hz,然后再经过15分频电路可得到标准的1Hz的脉冲输出。

        由门电路组成的多谐振荡器的振荡周期不仅与时间常数RC有关,而且还取决于门电路的阈值电压VTH,由于VTH容易受到温度、电源电压及干扰的影响,因此频率稳定性较差,只能用于对频率稳定性要求不高的场合。

        综上分析,选择方案二,石英晶体振荡电路能够作为最稳定的信号源。

分频器电路:

        CD4060分频系数更高,选择CD4060同时构成振荡电路和分频电路。

校时电路:

        通过比较可知,方案二和方案三比方案一多了防抖动的措施,稳定性更好,方案二和方案三相比,防抖动措施更好,更完备,但电路也更为复杂,成本也更高,通过比较选择方案二,既能实现防抖动功能,做出事物也更经济一些。

2.3  系统结构设计

.系统原理框图

2.4  具体电路设计

        晶体振荡器电路:R的阻值,对于TTL门电路通常在0.7~2KΩ之间;对于CMOS门则常在10~100MΩ之间。

        分频器电路:R的阻值,对于TTL门电路通常在0.7~2KΩ之间;对于CMOS门则常在10~100MΩ之间。

        总电路图:

 

电路仿真测试及结论分析

3.1  电路仿真测试流程

3.1.1 时基电路部分(石英晶体振荡器+分频器)

        在15级2分频电路后的输出端Q0接一个counter timer,在Proteus上运行仿真,观察Q0端口每个下降沿脉冲信号产生时counter timer的示数变化。

3.1.2 计时电路部分

        根据原理图及确定的方案把24进制计数器、60进制计数器与译码驱动电路在Proteus上进行对应连接,在秒部分的个位对应的74LS390的CLKA接上一个5Hz的时钟激励源,观察6个数码管的计数显示变化。

3.1.3 校时电路部分

        根据原理图及确定的方案把计时部分和选用的校正电路在Proteus上进行对应连接,在“校时脉冲”处接上一个1Hz的时钟激励源,观察“时校正按钮”及“分校正按钮”分别按下时,6个数码管的计数显示变化。

3.1.4 整点报时/闹钟电路部分

        根据原理图及确定的方案把整点报时电路和闹钟电路进行了二合一,在Proteus上进行对应连接。

(1) 当计时数码管显示开关off,闹钟数码管显示开关on时,通过“闹钟时设置按钮”“闹钟分设置按钮”进行闹钟设置,然后闹钟数码管显示开关off,计时数码管显示开关on,通过校时电路调节计时电路在所设闹钟时间附近,观察闹钟蜂鸣器在对应时刻的变化。

(2) 通过校时电路适当调节计时电路的时间,观察每到整点时刻,蜂鸣器的变化。

3.2   数据分析和结论

时基电路部分:利用晶振和分频器产生了1Hz精准脉冲信号。
计时电路部分:搭建了两个60进制计数器和一个24进制计数器分别实现了60进制和24进制。

校时电路部分:利用两个轻触按键,实现了分、时分别校时。

整点报时及闹钟部分:利用拨码开关实现闹钟设定可视化,利用比较器将计时与闹钟进行比较实现闹钟功能。利用门电路实现整点报时。

结论:设计已实现所有功能。

3.3  遇到的问题与解决方法

1.仿真过程中脉冲产生电路(晶体振荡器+分频器)耗时过长,观测变化不容易。原因可能是由于分频系数大导致的仿真计算量大增加了仿真时间。通过直接向计数器加1Hz时钟脉冲模拟脉冲产生电路的输出可以大大改善仿真效果。

2.在不增加数码管的情况下,无法实现当前时间与闹钟定时切换。原因为使用的计数器电路为组合电路,没有记忆功能,通过增加定时电路增加计数器电路和使用四个八路开关实现切换功能。

3.整点计时蜂鸣器不会触发,原因是时计数器进位脉冲产生的连线选择错误,CKA更换为CKB问题得以解决。

4  收获与体会

        在做本次实训的过程中,我感触最深的当属查阅大量的设计资料了。为了让自己的设计更加完善,查阅这方面的设计资料是十分必要的,同时也是必不可少的。我们是在做电子技术设计,但我们不是艺术家,他们可以抛开实际尽情在幻想的世界里翱翔,而我们一切都要有据可依,有理可寻,不切实际的构想永远只能是构想,永远无法升级为设计。

        起初在小组分工中分配给我计时电路部分的任务时候,最主要的部分就是24进制和60进制计数器,虽然之前的数电课上学过,可到了实际应用时候,我花了一晚上的时候,看到不知不觉困睡觉,第二天醒来才豁然开朗,搞懂它的运作原理,每次出现这种感觉时候都会感觉自己有所成长。

        随后在整点报时部分,原理图、PCB绘制,都让我感觉到了团队合作的力量,我们在短时间内便做出了两种不同的方案,

        在这次课程设计中,我们运用到了以前所学的数字电路知识等。虽然过去从未独立应用过它们,但在学习的过程中带着问题去学我发现效率很高,这是我做这次课程设计的又一收获。

参考文献

[1] 《数字电子技术基础》康华光 主编 高等教育出版社

[2] 《电子线路设计·实验·测试》第三版,谢自美 主编,华中科技大学出版社

[3] 《电子线路综合设计实验教程》 刘鸣 主编 天津大学出版

附录

1.元器件清单

序号

元器件型号

数量

备注

1

20pF

2

2

2N3904

1

3

K2-3.6×6.1_SMD

4

4

3.3k

4

5

10k

1

6

1k

1

7

10M

1

8

DS08

4

9

0.01uF

2

10

0.01u

2

11

BUZZER

1

12

SEG-TH_0.56×1_Cathode

6

13

32769Hz

1

14

74LS85

4

15

4060

1

16

SWITCH-MOMENTARY

1

17

74LS48

6

18

7432N

1

19

74LS390

11

20

74LS00

8

21

74LS08

5

22

HD74LS21FP

1

2.PCB版图

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/327591.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

CMake tasks.json launch.json

hehedalinux:~/Linux/cmake/cmakeClass$ tree . ├── CMakeLists.txt ├── include │ ├── Gun.h │ └── Soldier.h ├── main.cpp └── src├── Gun.cpp└── Soldier.cpp2 directories, 6 files hehedalinux:~/Linux/cmake/cmakeClass$ launch.json&am…

linux主机的免密登录

实现linux主机之间的相互免密登录 在进行远程登录的时,服务器和主机间进行认证阶段分为: 基于口令认证(不安全,易被抓包拦截获取) 客户机连接服务器时,服务器将自己的公钥返回给客户机 客户机会将服务器的…

【报错】NVIDIA 驱动版本不兼容 — NVIDIA driver on your system is too old

【报错】NVIDIA 驱动版本不兼容 — NVIDIA driver on your system is too old 报错信息查看torch版本查看nvidia驱动版本 报错信息 CUDA initialization: The NVIDIA driver on your system is too old (found version 11040). Please update your GPU driver by downloading …

29 旋转工具箱

效果演示 实现了一个菜单按钮的动画效果,当鼠标悬停在菜单按钮上时,菜单按钮会旋转315度,菜单按钮旋转的同时,菜单按钮旋转的8个小圆圈也会依次旋转360度,并且每个小圆圈的旋转方向和菜单按钮的旋转方向相反&#xff0…

【SpringMVC】常用注解(续)

在SpringMVC常用注解一文中,已经对一些基本注解(有Controller、RequestMapping、ResponseBody、RequestParam)进行了简单介绍;在此篇文章中,将继续对剩余的几个常用注解进行简单介绍,有RequestBody、PathVa…

ElasticSearch入门篇

目录 一、 ElasticSearch的定位 二、 什么是倒排索引 三、 什么是全文检索 四、 ElasticSearch的数据存储原理 4.1 ElasticSearch与关系型数据库的数据结构对比 4.2 ElasticSearch的倒排索引原理 一、 ElasticSearch的定位 ElasticSearch是一款开源的分布式 搜索和…

力扣算法之滑动窗口题目--水果成篮

文章目录 题目解析不同之处解决办法解决图示 代码 题目解析 首先我们先看一下题目如下图所示 题目意思也比较容易理解其实就是你有一个篮子这个篮子只能装两个不同种类的水果,问你最多能装多少个水果,这里还贴心的弄了一个样列,121 可以看出…

计算机组成原理 运输层

文章目录 运输层运输层协议概述进程之间的通信运输层的两个主要协议运输层的端口 用户数据报协议 UDPUDP 概述UDP 的首部格式 传输控制协议 TCP 概述TCP 最主要的特点TCP 的连接 可靠传输的工作原理停止等待协议连续 ARQ协议 TCP 报文段的首部格式TCP 可靠传输的实现以字节为单…

tcpdump常用命令

tcp首部解析: tcp-首部_tcp首部-CSDN博客 ref: Home | TCPDUMP & LIBPCAP https://www.cnblogs.com/onlyforcloud/p/4396126.html tcpdump 详细使用指南(请尽情食用)_tcpdump指定ip和端口-CSDN博客 【博客192】抓取报文查…

【深度学习目标检测】十五、基于深度学习的口罩检测系统-含GUI和源码(python,yolov8)

YOLOv8是一种物体检测算法,是YOLO系列算法的最新版本。 YOLO(You Only Look Once)是一种实时物体检测算法,其优势在于快速且准确的检测结果。YOLOv8在之前的版本基础上进行了一系列改进和优化,提高了检测速度和准确性。…

八、K8S metrics-server

下载yaml文件 wget https://github.com/kubernetes-sigs/metrics-server/releases/latest/download/high-availability.yaml 改名:mv high-availability.yaml metrics-server.yaml 查看镜像地址 查看镜像地址 grep -rn image high-availability.yaml 150: …

【人工智能平台】ubuntu22.04.3部署cube-studio

简介:本次安装是在虚拟机上进行,需要给虚拟机至少分配16GB,分配8GB时系统会卡死。 一、环境: 主机环境:win11(全程科学)vm虚拟机 虚拟机:ubuntu22.04.3桌面版(新装&…

Ventoy:打造你的万能启动 U 盘 | 开源日报 No.146

ventoy/Ventoy Stars: 54.3k License: GPL-3.0 Ventoy 是一个开源工具,用于创建支持 ISO/WIM/IMG/VHD(x)/EFI 文件的可启动 USB 驱动器。其主要功能包括将镜像文件复制到 USB 驱动器并进行引导、一次性复制多个镜像文件并提供引导菜单选择以及在本地磁盘中浏览和引…

基于SSM的高校班级同学录网站的设计与实现

末尾获取源码 开发语言:Java Java开发工具:JDK1.8 后端框架:SSM 前端:采用JSP技术开发 数据库:MySQL5.7和Navicat管理工具结合 服务器:Tomcat8.5 开发软件:IDEA / Eclipse 是否Maven项目&#x…

Vue组件之间的通信方式都有哪些?

面试官:Vue组件之间的通信方式都有哪些? 一、组件间通信的概念 开始之前,我们把组件间通信这个词进行拆分 组件通信 都知道组件是vue最强大的功能之一,vue中每一个.vue我们都可以视之为一个组件通信指的是发送者通过某种媒体以…

C#灵活的任务调度组件FluentScheduler

FluentScheduler是一个C#的灵活的任务调度组件,支持各类任务调度。网上有很多演示代码,此处记录下来,方便自己查找。 // See https://aka.ms/new-console-template for more information //Console.WriteLine("Hello, World!");us…

Tortoise-orm 使用(一)

创建表 项目基于Vue3.0, FastAPI的模板管理系统,从网上找了各种资源去实践,现在将总结发出来,分享给大家,希望帮助大家少走些弯路。 准备工作 # tortoise-orm pip install tortoise-orm # MySQL pip install tortoise-orm[async…

数据库结构文档生成(通过PDMReader)

将数据库的表结构生成数据库结构文档有三种方法: 1、通过 PDMReader生成文档; 2、使用EZDML 工具生成(下载地址:EZDML - 下载); 3、使用SCREW 插件,通过java代码生成。 本文章先介绍通过PDM…

ZABBIX根据IP列表,主机描述,或IP子网批量创建主机的维护任务

有时候被ZABBIX监控的主机可能需要关机重启等维护操作,为了在此期间不触发告警,需要创建主机的维护任务,以免出现误告警 ZABBIX本身有这个API可供调用(不同版本细节略有不同,本次用的ZABBIX6.*),实现批量化建立主机的维护任务 无论哪种方式(IP列表,主机描述,或IP子网)创建维护…

Cellinx NVT 摄像机 UAC.cgi 任意用户创建漏洞复现

0x01 产品简介 Cellinx NVT IP PTZ是韩国Cellinx公司的一个摄像机设备。 0x02 漏洞概述 Cellinx NVT 摄像机 UAC.cgi接口处存在任意用户创建漏洞,未经身份认证的攻击者可利用此接口创建管理员账户,登录后台可查看敏感信息,使系统处于极不安全的状态。 0x03 复现环境 FO…
最新文章