数电实验六-秒表进阶(Multisim和Basys3)

特别说明:该系列内容均是本人实验记录,无盗取侵权之嫌,仅供参考,请多动手实践。

一、实验目的
详见报告

二、实验环境
详见报告

三、实验内容详解
基础要求:在实验五的基础上,用 BTNC 按键控制秒表的工作状态。
共有三种状态: A 清零;B 计时;C 停止。刚上电时,秒表处在 A 状态:按一下 BTNC,切换到 B 状态,开始计时;再按一下,切换到 C 状态,计时停止,可以读数;再按一下返回 A 状态,清零,准备下一次计时。

1、利用实验五“秒表初步”中已完成的电路设计,将其作为实验六“秒表进阶”的基础电路。

2、设计电路按键检测动作:利用带异步复位的 4 位串入并出移位寄存器SR_4S_P。寄存器的 RESET 置零,BTNC 与 CLK 相应接入 D 与 CP端,并设置输出 Out=(Q0*Q1’)。此时,每当且仅当 Input 输入为 1 且时钟信号输入为上升沿时,输出 Out 为 1,即可认为检测出 BTNC 按键动作。

在这里插入图片描述

3、利用一个十进制计数器与一个 2 线-4 线译码器,以达到:当电路通电以及 BTNC 按三次后,Clear 得到高电平;当 BTNC 按一次时 Hold得到高电平;当 BTNC 按两次时,Hold 获得低电平。
在这里插入图片描述
4、在 Timer 内,将 Hold 与第一个计数器的 ENP、ENT 相接,同时 Clear
与置零信号相或。当 Hold 为 1 时,计数器正常工作;当 Hold 为 0 时,
计数器停止;当 Clear 为 1 时,计数器始终置零。
在这里插入图片描述
进阶要求:设计电路使得该秒表能够存储三个时间,并读取,且不影响 BTNC 的工作。具体如下:用 BTNU 存储数据,每按一次存一个,保留最近的三个数据。用 BTND 读取数据,按一下读已记录的数据中最先存的,按第二下读第二个,按第三下读第三个,按第四下显示当前正在计时的值。

1、与基础要求中 BTNC 的按键动作检测相同,如右图布置寄存器,检测 BTNU 与BTND 的按键动作。

2、布置四组 4 位双向移位寄存器(每组四个)。以每组第一行寄存器电路连接方式为例(如下图)。SL、SR、SO、SI、~CLK 均置一,A0in~D0in 与 A1~D1 相接,四个寄存器以并行输入输出方式连接。设置 CLK 输入为 BTNU 与 BTND 按键检测输出之和。此时,当 BTNU 或 BTND 按下时,寄存器四组寄存器保存数据并行向电路右方移动。即按下三次 BTNU 后,前三组寄存器分别存入按键按下时计时器显示数字;按下三次 BTND 后,前三组寄存器保存的数据依次通过最后一组寄存器输出。
在这里插入图片描述
3、设计一个四进制计数器(如下图)。A~D 置零,ENP、ENT、LOAD置一,CLK 输入为 BTND 按键检测输出。设计一个输出,其值为(QA+QB),以此作为第四步中数据选择器的输入,记作 G’。
在这里插入图片描述
4、布置四组二选一数据选择器(每组四个,十六个数据选择器输出分别对应 A0out-D3out)。~G 均置零,A0in~D3in 分别与数据选择器的 A 相接,步骤 2 中最后一组寄存器的输出与 B 相接,步骤 3 中设计的输出与地址输入端相接。在此设计下,当 BTND 按下前三次时,G’ 均为 1,此时数据选择器输出 B(即寄存器保存的数据);当 BTND第四次按下时,G’为 0,此时数据选择器输出 A(即计数器直接输出的数据)。
在这里插入图片描述
实验结果见视频 1、视频 2。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

云原生架构总览,发展定义架构及趋势

随着云计算发展的成熟和企业需求的推动,云原生技术和理念得到了用户的广泛接受,云原生应用场景不断丰富,云原生正在成为云上的必然趋势。 文章目录一、云原生技术发展二、云原生的定义三、云原生应用四、云原生架构原则及常用模式五、云原生未…

最小拍有纹波系统仿真实验(计控实验四simulink)

一、实验目的与要求 1、掌握最小拍有纹波系统的计算机控制脉冲传函D(z)的设计方法。    2、了解该系统对三种典型输入的适应性。 3、掌握SIMULINK的仿真方法。 二、仿真软硬件环境 PC机,MATLAB R2012b。 三、实验原理 如图 R为…

C语言实用算法系列之memcpy、memmove函数原理与实现

直接看代码 #include<stdio.h> #include<string.h> /*返回指向pDest的指针*/ void* MemCopy(void* pDest, const void* pSrc, int nCount) {char* p (char*)pDest;char* p1 (char*)pSrc;while (nCount--)*p *p1;return pDest; } /*返回指向pDest的指针&#xf…

最小拍无纹波系统仿真实验(计控实验五simulink)

一、实验目的与要求 1、掌握最小拍无纹波系统的计算机控制脉冲传函D(z)的设计方法。 2、掌握SIMULINK的仿真方法。 二、仿真软硬件环境 PC机&#xff0c;MATLAB R2012b。 三、实验原理 如图 R为输入&#xff0c;C为输出。计算机定时采样&#xff0c;计算误差E&#xff0c;按D…

Oracle ADF和Oracle Jet一起工作。 建筑模式

在本文中&#xff0c;我将考虑在Oracle ADF和Oracle Jet的组合之上实现应用程序的各种体系结构模式。 练习ADF的组织可能会考虑将Oracle Jet合并到现有项目中&#xff0c;以刷新外观并使其具有现代感和响应能力&#xff0c;并以新方式实施新功能。 它可能会考虑将Oracle Jet用于…

基本指令的编程练习-PLC认识实验-定时器/计数器功能实验

微信公众号&#xff1a;创享日记 发送关键词&#xff1a;plc1 免费获取完整无水印实验报告 【PLC认识实验】 一、实验目的 1.了解PLC软硬件结构及系统组成; 2.掌握PLC外围直流控制及负载线路的接法及上位计算机与PLC通信参数的设置; 3.了解编程软件的编程环境&#xff0c;掌握软…

C语言实用算法系列之strtok字符串分割、strcat字符串拼接、strcpy、strcmp

代码 #define _CRT_SECURE_NO_WARNINGS#include <string.h> #include <stdio.h>char string[] "A string\tof ,,tokens\nand some more tokens"; char seps[] " ,\t\n"; char *token;int main(void) {printf("Tokens:\n");// Es…

电动机正反转继电器控制系统

微信公众号&#xff1a;创享日记 发送关键词&#xff1a;plc2 免费获取完整无水印实验报告 一、实验目的 1&#xff0e;学习和掌握电动机主回路的设计及接线&#xff1b; 2&#xff0e;学习和掌握电动机控制回路的设计及联锁保护方法&#xff1b; 3&#xff0e;加深对电气控制系…

电子技术课程设计-正弦波发生及频率显示电路-电子线路CAD原理图

微信公众号&#xff1a;创享日记 发送关键词&#xff1a;电子技术课设 免费获取完整无水印实验报告付费电子线路CAD原理图源文件及其导入教程 前些天发现了十分不错的人工智能学习电子书&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;没有广告&#xff0c;分享给大家&a…

C语言实用算法系列之学生管理系统_对整个结构体操作_冒泡排序

代码 #define _CRT_SECURE_NO_WARNINGS#include <stdio.h> #include <string.h> void Save();struct SUser // 结构体定义 {int nNumb; // 学号char sName[20]; // 姓名float fMath; // 数学成绩 }g_user[100];void Print() // 打印子函数 {puts("\n学号\t姓…

PLC 控制三相异步电动机正反转实验

前些天发现了十分不错的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;没有广告&#xff0c;分享给大家&#xff0c;大家可以自行看看。&#xff08;点击跳转人工智能学习资料&#xff09; 微信公众号&#xff1a;创享日记 发送关键词&#xff1a;plc3…

功能Java示例 第4部分–首选不变性

这是称为“ Functional Java by Example”的系列文章的第4部分。 在上一部分中&#xff0c;我们讨论了一些副作用&#xff0c;并且我想进一步详细说明如何通过将不可变性引入代码中来防止以意外的方式操纵数据。 如果您是第一次来&#xff0c;最好是从头开始阅读。 它有助于…

C语言实用算法系列之学生管理系统_对整个结构体操作_选择排序_提取排序规则

代码 #define _CRT_SECURE_NO_WARNINGS#include <stdio.h> #include <string.h> #include <stdlib.h> void Save();struct SUser {int nNumb;char sName[20];float fMath; }g_user[100];void Print() {puts("\n学号\t姓名\t数学");int i 0;while…

Altium Designer19(AD19)

微信公众号&#xff1a;创享日记 发送关键词&#xff1a;Altium 免费获取Altium Designer19 1、解压文件 2、解压后打开安装文件&#xff08;AD19 setup.exe&#xff09; 3、点击next 4、选择中文并接受协议 5、选择功能&#xff0c;Next 6、选择文件保存路径与安装路径&…

仿真proteus8.7安装

前些天发现了十分不错的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;没有广告&#xff0c;分享给大家&#xff0c;大家可以自行看看。&#xff08;点击跳转人工智能学习资料&#xff09; 微信公众号&#xff1a;创享日记 发送关键词&#xff1a;prot…

C语言实用算法系列之学生管理系统_对整个结构体操作_冒泡排序_提取排序规则

代码 #define _CRT_SECURE_NO_WARNINGS#include <stdio.h> #include <string.h> #include <stdlib.h> void Save();struct SUser {int nNumb;char sName[20];float fMath; }g_user[100];void Print() {puts("\n学号\t姓名\t数学");int i 0;while…

servlet 异常处理_Servlet异常和错误处理示例教程

servlet 异常处理有时候我写了一篇有关Java异常处理的文章&#xff0c;但是当涉及到Web应用程序时&#xff0c;我们需要的不仅仅是Java中的异常处理。 Servlet异常 如果您注意到&#xff0c;doGet&#xff08;&#xff09;和doPost&#xff08;&#xff09;方法将抛出ServletE…

基于51单片机直流电机PWM控制器设计

前些天发现了十分不错的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;没有广告&#xff0c;分享给大家&#xff0c;大家可以自行看看。&#xff08;点击跳转人工智能学习资料&#xff09; 由STC89C52单片机、LCD1602液晶显示屏、霍尔测速传感器、3V直…

大林算法控制仿真实验(计控实验六simulink)

前些天发现了十分不错的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;没有广告&#xff0c;分享给大家&#xff0c;大家可以自行看看。&#xff08;点击跳转人工智能学习资料&#xff09; 微信公众号&#xff1a;创享日记 发送关键词&#xff1a;计控…

振铃的消除仿真实验(计控实验七simulink)

前些天发现了十分不错的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;没有广告&#xff0c;分享给大家&#xff0c;大家可以自行看看。&#xff08;点击跳转人工智能学习资料&#xff09; 微信公众号&#xff1a;创享日记 发送关键词&#xff1a;计控…