实验5 十进制加法计数器设计
10进制计数器课程设计
10进制计数器课程设计一、课程目标知识目标:1. 学生能理解10进制计数器的基本概念,掌握10进制数的组成和计数规律。
2. 学生能运用10进制计数器进行数值的加减运算,并正确表达计算过程和结果。
3. 学生了解10进制计数器在日常生活和科学技术中的应用。
技能目标:1. 学生能够独立操作10进制计数器,进行简单的数值计算。
2. 学生通过实际操作,培养观察、分析、解决问题的能力。
3. 学生通过小组合作,提高沟通、协作和团队意识。
情感态度价值观目标:1. 学生对10进制计数器产生兴趣,激发学习数学的积极性。
2. 学生在探索过程中,培养耐心、细致、勇于尝试的精神。
3. 学生认识到数学知识在实际生活中的重要性,增强学以致用的意识。
课程性质:本课程属于数学学科,旨在帮助学生掌握10进制计数器的运用,提高数学运算能力和实际应用能力。
学生特点:四年级学生具有一定的数学基础,好奇心强,喜欢动手操作,但注意力集中时间较短。
教学要求:注重理论与实践相结合,以学生为主体,激发学生兴趣,培养动手操作能力和团队协作精神。
通过分解课程目标为具体的学习成果,使学生在愉快的氛围中掌握知识,提高能力。
二、教学内容1. 引入10进制计数器概念,介绍其在数学运算中的应用。
- 教材章节:第三章《数的认识》- 内容:10进制计数器的定义、计数规律、数位顺序表。
2. 学习10进制计数器的操作方法,进行数值的加减运算。
- 教材章节:第四章《简单的数学计算》- 内容:10进制计数器操作方法、数值加减运算、进位与退位。
3. 实践与应用,运用10进制计数器解决实际问题。
- 教材章节:第五章《生活中的数学》- 内容:运用10进制计数器进行购物找零、时间计算等实际问题的解决。
4. 小组合作,探讨10进制计数器在科学技术领域的应用。
- 教材章节:第六章《数学与科技》- 内容:10进制计数器在计算机、电子设备等领域的应用案例。
教学进度安排:第一课时:引入10进制计数器概念,学习计数规律和数位顺序表。
单片机十进制加法计算器设计
单片机十进制加法计算器设计设计概述:1.输入部分设计为了实现数字输入功能,可以采用4x4矩阵键盘作为输入设备。
通过扫描键盘矩阵,可以检测用户按下的按键,并将相应的按键字符存储在单片机内部的缓冲区中。
键盘扫描需要使用外部中断或定时器中断,在按键被按下时触发中断程序进行扫描和存储。
2.计算部分设计为了进行数字加法运算,需要在单片机中定义变量来存储输入的数字,并使用适当的算法进行加法运算。
加法运算可以通过逐位相加的方式实现,先对个位数进行加法运算,再对十位数进行加法运算,以此类推,直到最高位数。
3.显示部分设计为了显示运算结果,可以使用数码管来显示数字。
数码管的选型可以选择共阳极或共阴极的数码管,具体选择要根据实际的需求和电路设计来确定。
单片机需要通过IO口控制数码管的显示,将运算结果转化为相应的数码管段码,并通过IO口输出给数码管进行显示。
4.输出部分设计为了实现结果的输出,可以选择将结果通过串口发送给上位机,或者通过并行接口输出给其他设备。
具体的接口选择要根据实际的需求和电路设计来确定。
设计步骤:1.确定硬件平台和单片机型号,根据单片机的外设资源选择合适的输入、输出和显示设备。
2.进行电路设计,包括键盘输入电路、按键检测电路、数码管显示电路和外部接口电路。
3.编写单片机的初始化程序,包括IO口初始化、定时器中断初始化和中断服务程序编写。
4.编写键盘扫描程序,实现对键盘输入的检测和字符存储。
5.编写数字加法运算程序,实现输入数字的加法运算和结果的存储。
6.编写数码管显示程序,将加法运算结果转化为数码管的段码并进行显示。
7.编写输出程序,将结果通过串口或并行接口输出给上位机或其他设备。
8.进行调试和测试,优化程序和电路设计,确保计算器的稳定性和准确性。
9.编写用户界面程序,实现菜单、输入和输出操作的交互。
设计思路:利用单片机的运算和控制能力来实现数字加法的功能,以实现单片机十进制加法计算器的设计。
通过键盘输入,将数字存储在单片机内部的变量中,并采用逐位相加的算法实现数字加法运算。
10进制加法计数器课程设计
10进制加法计数器课程设计⽬录第1章前⾔ (1)1.1 摘要 (1)1.2 设计⽬的 (1)1.3 设计内容及要求 (1)第2章设计⽅案 (2)2.1 系统框图 (2)2.2主要芯⽚功能介绍 (2)2.2.1 四位⼆进制计数器74191介绍 (2)2.2.2七段显⽰译码器7448介绍 (3)2.3 ⼯作原理 (4)第3章硬件设计 (5)3.1 单元电路设计 (5)3.2 总硬件电路图 (7)第4章仿真与试验 (8)4.1 仿真结果 (8)4.2 调试中遇到的问题 (8)第5章结论和体会 (9)第6章参考⽂献 (10)第1章前⾔1.1 摘要在数字电路技术的课程中,计数器的功能是记忆脉冲的个数,它是数字系统中应⽤最⼴泛的基本时序逻辑构件。
计数器在微型计算机系统中的主要作⽤就是为CPU和I/O设备提供实时时钟,以实现定时中断、定时检测、定时扫描、定时显⽰等定时控制,或者对外部事件进⾏计数。
⼀般的微机系统和微机应⽤系统中均配置了定时器/计数器电路,它既可当作计数器作⽤,⼜可当作定时器使⽤,其基本的⼯作原理就是"减1"计数。
计数器:CLK输⼊脉冲是⼀个⾮周期事件计数脉冲,当计算单元为零时,OUT输出⼀个脉冲信号,以⽰计数完毕。
本⼗进制加法计数器是基于74191芯⽚⽽设计的,其有两个按钮,⼀个起加⼀的作⽤,另⼀个起清零的作⽤,还有⼀个两位的数字管显⽰。
当检测到有加⼀键按下时,会⾃动加⼀,并将在数码管上显⽰。
当检测到有清零键按下时,数码管上显⽰清零。
该⼗进制加法计数器⽤途⼴泛,在各种⽐赛中能够当计分器使⽤,这样⽐赛得分更加清晰1.2 设计⽬的1、综合运⽤相关课程中所学到的理论知识去独⽴完成某⼀设计课题;2、学习⽤集成触发器构成计数器的⽅法;3、进⼀步熟悉常⽤芯⽚和电⼦器件的类型及特性,并掌握合理选⽤器件的原则;5、初步了解电路设计、仿真的过程和⽅法;4、锻炼分析问题解决问题的能⼒;1.3 设计内容及要求1、具有10进制计数功能;2、设置外部操作开关,控制计数器的直接清零、加⼀功能;3、计时器为10进制加法计数,加⼀键每按⼀次加⼀;4、具有显⽰功能;5、并⽤相关仿真软件对电路进⾏仿真。
十进制加法计数器课程设计
实验十九 计数、译码、显示电路一、实验目的1、掌握中规模集成计数器74LS90的逻辑功能。
2、学习使用74LS48、BCD译码器和共阴极七段显示器。
3、熟悉用示波器测试计数器输出波形的方法。
二、 实验原理计数、译码、显示电路是由计数器、译码器和显示器三部分电路组成的,下面分别加以介绍。
1、计数器:计数器是一种中规模集成电路,其种类有很多。
如果按各触发器翻转的次序分类,计数器可分为同步计数器和异步计数器两种;如果按照计数数字的增减可分为加法计数器、减法计数器和可逆计数器三种;如果按计数器进位规律可分为二进制计数器、十进制计数器、可编程N进制计数器等多种产品。
常用计数器均有典型产品,不须自己设计,只要合理选用即可。
本实验选用74LS90二—五进制计数器,其功能如下表所示。
6263(1) R 0(1)和R 0(2)为直接复位端,R 9(1)和R 9(2)为直接置位端,可以预置数字“9”(Q D = Q A = 1,Q B = Q C = 0)。
(2) A 为二分频计数器的输入,Q A 的输出频率为CP A 的1/2。
B 为五进制计数器的输入,把Q A 输出作为五进制计数器B 的输入,即构成8421BCD 码十进制计数器。
2、 译码器:这里所说的译码器是将二进制数译成十进制数的器件。
我们选用的74LS48是BCD 码七段译码器兼驱动器。
其外引线排列图和功能表如下所示。
1234567891011121314GNDVCC 74LS48B1615CLTBI/RBORBIDAgabcdef十进制数 或功能输 入LT RBI D C B A 0123H H H H H X X X L L L L L L L H L L H L L L H H BI/RBO H H H H 输 出a b c d e f g H H H H H H L L H H L L L L H H L H H L H H H H H L L H 字 型注4567H H H H X X X X L H L L L H L H L H H L L H H H H H H H L H H L L H H H L H H L H H L L H H H H H H H H L L L L H H H X X X H L L L H L L H H L H L H H H H H H H H H H H H H L L H H L L L H H L H L L H H L L H 891011H X H L H H H H H H X X X H H L L H H L H H H H L H H H L H L L L H H H L L H L H H L L L H H H H L L L L L L L 12131415H X H H H H H 1BI RBI LTX H LX XL X X X X X X X XL L L L L L HL L L L L L L L L L L L L L H H H H H H H2 34(1) 要求输出数字0~15时,“灭灯输入”(BI )必须开路或保持高电平。
单片机十进制加法计算器设计.
目录一、设计任务和要求 (2)1、1 设计要求 (2)1、2 性能指标 (2)1、3 设计方案的确定 (2)二、单片机简要原理 (2)2、1 AT89C51的介绍单片机最小系统 (2)2、2 单片机最小系统 (2)三、硬件的设计 (4)3、1 键盘电路的设计 (4)3、2 显示电路的设计 (5)四、软件的设计 (6)4、1 系统设计 (6)4、2 显示电路的设计 (8)五、调试与仿真 (10)5、1 Keil C51单片机软件开发系统 (10)5、2 proteus的操作 (10)六、总结 (11)七、参考文献 (11)附录1 程序 (12)附录2 系统硬件电路图 (18)一、设计任务和要求1.1 设计要求本次课程设计,我选择的课题是单片机十进制加法计算器软硬件设计,设计任务为:设计一键盘显示装置,键盘上除需定义10个十进制数字键外还要相应的功能键,其它键不定义无响应。
利用此系统可分别可输入十进制被加数与加数,实现两数相加并将结果以十进制形式显示出来。
1.2 性能指标本课程设计的十进制加法计算器的计算范围为0~255,计算结果全为整数,计算结果溢出结果不显示。
1、加法:三位加法,计算结果超过255溢出不显示2、减法:三位减法,计算结果若小于零溢出不显示3、乘法:三位数乘法4、除法:整数除法5、有清零功能1.3 设计方案的确定按照1.1的设计要求,本课题需要使用数码管显示和扩展4*4键盘,由于AT89C51芯片的I口不够多,而且为了硬件电路设计的简单化,故选择串行动态显示和用P1口扩展4*4键盘,扩展的4*4键盘定义十个数字键,六个功能键,使用串行动态显示显示运算结果。
主程序进行初始化,采用行列扫描进行查表得出键值,每次按键后调用显示子程序。
二、单片机简要原理在该课程设计中,主要用到一个AT89C51芯片和串接的共阴数码管。
作为该设计的主要部分,下面将对它们的原理及功能做详细介绍和说明。
2.1 AT89C51的介绍:图1 AT89C51外形结构和引脚分布图芯片AT89C51的外形结构和引脚图如图一所示。
实验5 十进制加法计数器设计
实验5 十进制加法计数器设计
【实验目的】
1.了解触发器的设计过程
2.掌握D触发器与JK触发器芯片外围特性
3.掌握D触发器与JK触发器的工作过程。
4.掌握无源晶振电路设计。
【实验内容】
1.绘制无源晶振电路
2.绘制脉冲控制下单个触发器工作电路
3.在面包板上实现D触发器与JK触发器工作电路。
【实验器件】
1.十进制计数器74HC160一片,其引脚特性如图5-1所示。
图5-1 十进制计数器74HC160芯片封装图
1)MR=0,计数器清零。
2)MR=1,PE=0,装入初始值。
3)MR=1,PE=1,CET=CEP=1,计数
4)MR=1,PE=1,CET或CEP至少一个为0,计数值保持不变,这里,可以把CET设为1,CEP用开关控制。
2.七段译码器74LS48一片,其引脚特性如图5-2所示。
图5-2七段译码器74LS48芯片封装图
3.8字数码管1片,其引脚特性如图5-3所示
图5-3 8字数码管芯片封装图
4.12个10k的电阻和8个发光二极管,一个8路开关,5v电源,面包板一块,导线若干条。
5.晶振电路与CD4060
【实验步骤】
1.在Cadence中绘制如图5-4所示的原理图
图5-4 十进制计数电路图
3.在面包板上实现该电路
根据实验器件的芯片引脚图在面包板上实现图2-2所示的电路。
单片机十进制加法计算器设计
单片机十进制加法计算器设计单片机是一种微型计算机,它包含了CPU、RAM、ROM、I/O接口等基本组件,用于控制电子器件的运行。
在本文中,我们将设计一个十进制加法计算器,使用单片机来实现。
设计理念和思路如下:1.输入和输出:-输入:我们将使用开发板上的按钮作为输入,来输入两个十进制数。
-输出:我们将使用开发板上的数码管显示器作为输出,来显示计算结果。
2.算法:-我们将使用最常见的十进制加法算法来实现加法功能。
-首先,将两个十进制数的个位数相加,并将结果存储在一个变量中。
-接下来,将两个十进制数的十位数相加,并将结果与上一步的结果相加,再将结果存储在同一变量中。
-以此类推,直到将所有位数相加完毕。
3.硬件连接:-我们将使用数码管显示器来显示计算结果。
数码管需要与单片机的I/O接口相连接。
-开发板上的按钮将作为输入,通过单片机的GPIO接口进行控制。
4.软件实现:-我们将使用C语言编写单片机程序,使用单片机的GPIO接口进行输入和输出控制。
-首先,初始化I/O接口,配置按钮为输入,配置数码管为输出。
-然后,通过查询按钮状态,获取输入的两个十进制数。
-接下来,进行加法计算,并将结果显示在数码管上。
下面是一个示例的C语言程序,用于实现十进制加法计算器:```#include <reg51.h>sbit Button1 = P1^0; // 定义按钮1连接的引脚sbit Button2 = P1^1; // 定义按钮2连接的引脚sbit Seg1 = P2^0; // 定义数码管显示第1位的引脚sbit Seg2 = P2^1; // 定义数码管显示第2位的引脚...sbit Seg7 = P2^6; // 定义数码管显示第7位的引脚void Delay(unsigned int t) //延时函数unsigned int i, j;for(i=0;i<t;i++)for(j=0;j<123;j++);void Display(unsigned int num) //数码管显示函数//将每个位的数字显示在相应的数码管上...Seg7 = num / 1 % 10;unsigned int Add(unsigned int a, unsigned int b) //加法计算函数unsigned int sum = a + b;return sum;void mainwhile(1)//查询按钮状态,获取输入的两个十进制数unsigned int num1 = Button1;unsigned int num2 = Button2;//进行加法计算unsigned int result = Add(num1, num2);//显示计算结果在数码管上Display(result);}```这是一个简单的十进制加法计算器的设计和实现过程。
十进制数加减计算器的设计
十进制数加减计算器的设计在计算机科学中,十进制数加减计算器是一种用于执行加法和减法运算的算术设备或程序。
普通的十进制计算器是我们日常生活中经常使用的工具,它们用于执行各种计算任务,例如做家庭预算、计算商品价格、统计和分析数据等。
一个十进制数加减计算器的设计需要考虑以下几个方面:界面设计、输入和输出处理、运算逻辑和错误处理。
下面将分别对这些方面进行详细阐述。
其次,输入和输出处理是一个重要的设计考虑因素。
计算器应该能够接受用户输入的数字,并将计算结果以可读性良好的方式输出给用户。
输入可以通过按键、虚拟键盘、语音识别等方式完成。
输出可以以图形界面、文本显示或语音输出的形式实现。
对于输入错误或超出了计算能力范围的操作,计算器应给出明确的错误提示,以帮助用户进行修正。
接下来是运算逻辑的设计。
十进制数的加减运算是基本的算术运算,它要求对两个数字进行对齐,并按位相加(减)。
设计一个高效的运算逻辑需要考虑以下几个方面:处理进位(或退位)、对齐和补位、处理小数部分、实现数字运算的正确性和一致性等。
计算器应能够正确地处理各种情况,例如负数加减、小数加减、连续多位数加减等。
最后是错误处理的设计。
计算器应该能够检测和处理用户输入中的各种错误,例如无效数字、超出范围、除以零等。
错误处理可以通过在界面上显示错误消息、发出声音提示或弹出对话框来完成。
此外,为确保计算器的稳定性和安全性,还需要进行输入验证和运行时错误处理,以防止恶意输入和运行时错误导致计算器崩溃或伤害用户的设备。
总结起来,设计一个十进制数加减计算器需要综合考虑界面设计、输入和输出处理、运算逻辑和错误处理等方面。
一个好的十进制数加减计算器应该具有易于使用和直观的界面,能够接受各种形式的用户输入,并能够对输入进行验证和处理。
它应能够正确地执行加法和减法运算,同时能够检测和处理各种错误情况。
通过合理的设计和实现,一个易用、高效和可靠的十进制数加减计算器将成为用户的得力助手,为用户提供准确和方便的计算服务。
十进制加法计数器
十进制加法器设计1课程设计的任务与要求 课程设计的任务1、综合应用数字电路知识设计一个十进制加法器。
了解各种元器件的原理及其应用。
2、了解十进制加法器的工作原理。
3、掌握multisim 软件的操作并对设计进行仿真。
4、锻炼自己的动手能力和实际解决问题的能力。
5、通过本设计熟悉中规模集成电路进行时序电路和组合电路设计的方法,掌握十进制加法器的设计方法。
课程设计的要求1、设计一个十进制并运行加法运算的电路。
2、0-9十个字符用于数据输入。
3、要求在数码显示管上显示结果。
2十进制加法器设计方案制定 加法电路设计原理图1加法运算原理框图如图1所示第一步置入两个四位二进制数。
例如(1001)2,(0011)2和(0101)2,(1000),同时在两个七段译码显示器上显示出对应的十进制数9,3和5,8。
2第二步将置入的数运用加法电路进行加法运算。
第三步前面所得结果通过另外两个七段译码器显示。
即:加法运算方式,则(1000)2+(0110)2=(1110)2 十进制8+6=14 并在七段译码显示出14。
运算方案通过开关S1——S8接不同的高低电平来控制输入端所置的两个一位十进制数,译码显示器U8和U9分别显示所置入的两个数。
数A直接置入四位超前进位加法器74LS283的A4——A1端,74LS283的B4——B1端接四个2输入异或门。
四个2输入异或门的一输入端同时接到开关S1上,另一输入端分别接开关S5——S8,通过开关S5——S8控制数B的输入,通过加法器74LS283完成两个数A和B的相加。
由于译码显示器只能显示0——9,所以当A+B>9时不能显示,我们在此用另一片芯片74LS283完成二进制码与8421BCD码的转换,即S>9(1001)2时加上3(0011)2,产生的进位信号送入译码器U10来显示结果的十位,U11显示结果的个位。
3十进制加法器电路设计加法电路的实现用两片4位全加器74LS283和门电路设计一位8421BCD码加法器。
课程设计-十进制加法计算器设计
课程设计(论文)任务书电气学院电力系统专业12(1 )班一、课程设计(论文)题目:十进制加法计算器设计二、课程设计(论文)工作自2015年1 月12 日起至2015 年1月16 日止。
三、课程设计(论文) 地点: 电气学院机房10-303四、课程设计(论文)容要求:1.课程设计的目的(1)综合运用单片机原理及应用相关课程的理论知识和实际应用知识,进行单片机应用系统电路及程序设计,从而使这些知识得到进一步的巩固,加深和发展;(2)熟悉和掌握单片机控制系统的设计方法,汇编语言程序设计及proteus 软件的使用;(3)通过查阅图书资料、以及书写课程设计报告可提高综合应用设计能力,培养独立分析问题和解决问题的能力。
2.课程设计的容及任务课程设计容:利用单片机及一些外围电路设计一个简易的十进制加法计算器,硬件电路设计大概主要包括:键盘电路,显示电路以及复位电路和晶振电路。
软件方面的设计主要包括:LED显示程序设计、数值送显示缓存程序设计、读键子程序设计、运算程序的设计。
课程设计任务:设计一个键盘显示装置,键盘上除了定义0~9共10个数字键外,还要相应的功能健,其它键不定义无响应。
利用此系统可分别输入十进制被加数和加数,实现两个数相加并将结果以十进制形式显示出来。
3.课程设计说明书编写要求(1)设计说明书用A4纸统一规格,论述清晰,字迹端正,应用资料应说明出处。
(2)说明书容应包括(装订次序):题目、目录、正文、设计总结、参考文献等。
应阐述整个设计容,要重点突出,图文并茂,文字通畅。
(3)报告容应包括方案分析;方案对比;整体设计论述;硬件设计(电路接线,元器件说明,硬件资源分配);软件设计(软件流程,编程思想,程序注释,)调试结果;收获与体会;附录(设计代码放在附录部分,必须加上合理的注释)(4)学生签名:2015年1月16 日课程设计(论文)评审意见(1)总体方案的选择是否正确;正确()、较正确()、基本正确()(2)程序仿真能满足基本要求;满足()、较满足()、基本满足()(3)设计功能是否完善;完善()、较完善()、基本完善()(4)元器件选择是否合理;合理()、较合理()、基本合理()(5)动手实践能力;强()、较强()、一般()(6)学习态度;好()、良好()、一般()(7)基础知识掌握程度;好()、良好()、一般()(8)回答问题是否正确;正确()、较正确()、基本正确()、不正确()(9)程序代码是否具有创新性;全部()、部分()、无()(10)书写整洁、条理清楚、格式规;规()、较规()、一般()总评成绩优()、良()、中()、及格()、不及格()评阅人:年月日摘要随着社会科技的发展和进步,计算器因其功能强大而早已成为人们日常生活中必不可少的工具,最简单的计算器就能实现简单的加减乘除运算,这让人们免去了复杂的计算过程,大大提高了工作效率。
实验十进制加减法计数器
实验1 十进制加减法计数器实验地点:电子楼218 实验时间:2012年10月19日指导老师:黄秋萍、陈虞苏实验要求:设计十进制加减法计数器,保留测试程序、设计程序、仿真结果1.设计程序:module count(EN,CLK,DOUT,F,RST);input EN,CLK,F,RST;output [3:0]DOUT;reg [3:0]DOUT;always@(posedge CLK)begin :abcif(EN)if(!RST)if(F)begin :aDOUT=DOUT+1;if(DOUT==10)DOUT=0;end //END Aelsebegin :bDOUT=DOUT-1;if(DOUT==15)DOUT=9;endelseDOUT=0;elseDOUT=DOUT;endendmodule2.测试程序`timescale 10ns/1nsmodule test_count;wire [3:0] DOUT;reg EN,F,RST,CLK;count M(EN,CLK,DOUT,F,RST);initialbegin :ABCCLK=0;EN=0;RST=1;F=1;#100 EN=1;#200 RST=0;#1500 F=0;#3000 $stop;endalways#50 CLK=~CLK;initial$monitor("EN=%b,F=%b,RST=%b,DOUT%D",EN,F,RST,DOUT); endmodule3.测试结果# EN=0,F=1,RST=1,DOUT x# EN=1,F=1,RST=1,DOUT x# EN=1,F=1,RST=1,DOUT 0# EN=1,F=1,RST=0,DOUT 0# EN=1,F=1,RST=0,DOUT 1# EN=1,F=1,RST=0,DOUT 2# EN=1,F=1,RST=0,DOUT 3# EN=1,F=1,RST=0,DOUT 4# EN=1,F=1,RST=0,DOUT 5# EN=1,F=1,RST=0,DOUT 6# EN=1,F=1,RST=0,DOUT 7# EN=1,F=1,RST=0,DOUT 8# EN=1,F=1,RST=0,DOUT 9# EN=1,F=1,RST=0,DOUT 0# EN=1,F=1,RST=0,DOUT 1# EN=1,F=1,RST=0,DOUT 2# EN=1,F=1,RST=0,DOUT 3# EN=1,F=1,RST=0,DOUT 4# EN=1,F=1,RST=0,DOUT 5# EN=1,F=0,RST=0,DOUT 5# EN=1,F=0,RST=0,DOUT 4# EN=1,F=0,RST=0,DOUT 3# EN=1,F=0,RST=0,DOUT 2# EN=1,F=0,RST=0,DOUT 1# EN=1,F=0,RST=0,DOUT 0# EN=1,F=0,RST=0,DOUT 9# EN=1,F=0,RST=0,DOUT 8# EN=1,F=0,RST=0,DOUT 7# EN=1,F=0,RST=0,DOUT 6# EN=1,F=0,RST=0,DOUT 5# EN=1,F=0,RST=0,DOUT 4# EN=1,F=0,RST=0,DOUT 3# EN=1,F=0,RST=0,DOUT 2# EN=1,F=0,RST=0,DOUT 1# EN=1,F=0,RST=0,DOUT 0# EN=1,F=0,RST=0,DOUT 9# EN=1,F=0,RST=0,DOUT 8# EN=1,F=0,RST=0,DOUT 7# EN=1,F=0,RST=0,DOUT 6# EN=1,F=0,RST=0,DOUT 5# EN=1,F=0,RST=0,DOUT 4# EN=1,F=0,RST=0,DOUT 3# EN=1,F=0,RST=0,DOUT 2# EN=1,F=0,RST=0,DOUT 1# EN=1,F=0,RST=0,DOUT 0# EN=1,F=0,RST=0,DOUT 9# EN=1,F=0,RST=0,DOUT 8# EN=1,F=0,RST=0,DOUT 7# EN=1,F=0,RST=0,DOUT 6# EN=1,F=0,RST=0,DOUT 54.波形显示5.实验结果分析RST为1是清零信号,CLK是时钟信号,当EN为1时使能信号,F为1时,加法计数,F=0时减法计数。
EDA实验五计数器实验
实验五计数器实验一、实验目的1.设计一个能带使能输入、进位输出及同步清0的增1十进制计数器2.设计一个带计数使能、同步清0、同步加载的4位计数器二、实验内容设计一个能带使能输入、进位输出及同步清0的增1十进制计数器library IEEE;use IEEE.STD_LOGIC_1164.ALL;use IEEE.STD_LOGIC_unsigned.ALL;entity counter1 isPort ( clk : in STD_LOGIC;clr : in STD_LOGIC;en : in STD_LOGIC;co : out STD_LOGIC;count: out STD_LOGIC_VECTOR (3 downto 0));end counter1;architecture Behavioral of counter1 isSIGNAL cnt : STD_LOGIC_VECTOR(3 downto 0);BEGINPROCESS (clk)BEGINIF (clk'EVENT AND clk = '1') THENIF clr = '1' THENcnt <= (OTHERS => '0');ELSIF en = '1' THENIF cnt = "1001" THENcnt <= "0000";co<='1';ELSEcnt <= cnt + '1';co<='0';END IF;END IF;END IF;END PROCESS;count <= cnt;end Behavioral;VHDL Test Bench测试代码VHDL Test Bench测试代码clk_process :processbeginclk <= '0';wait for 40 ns;clk <= '1';wait for 40 ns;end process;clr<='1','0' after 60 ns;en<='1';PROCESS (clk)BEGINIF (clk'EVENT AND clk = '1') THENIF clr = '1' THENcount <= (OTHERS => '0');ELSIF en = '1' THENIF count = "1001" THENcount <= "0000";co<='1';ELSEcount <= count + '1';co<='0';END IF;END IF;END IF;END PROCESS;END;功能仿真图:时序仿真图:其中的管脚配置:#The following constraints were newly addedNET "count<1>" LOC = E9;NET "count<2>" LOC = D11;NET "count<3>" LOC = C11;NET "co" LOC = F11;NET "clk" LOC = E10;NET "en" LOC = L13;NET "clr" LOC = B16;NET "count<0>" LOC = F9;Xpower功耗分析The power estimate will be calculated using PRODUCTION data. Design load 20% completeDesign load 25% completeDesign load 30% completeDesign load 60% completeDesign load 95% completeDesign load 100% completeDesign Analysis 33% completeDesign Analysis 67% completeDesign Analysis 100% complete查看Device Utilization Summary延时报告;实验结果符合设计设计一个带计数使能、同步清0、同步加载的4位计数器library IEEE;use IEEE.STD_LOGIC_1164.ALL;use IEEE.STD_LOGIC_unsigned.ALL;entity aa isPort ( clk : in STD_LOGIC;clr : in STD_LOGIC;en : in STD_LOGIC;load : in STD_LOGIC;dir : in STD_LOGIC;data_in : in STD_LOGIC_VECTOR (3 downto 0);count : out STD_LOGIC_VECTOR (3 downto 0)); end aa;architecture Behavioral of aa isSIGNAL cnt :STD_LOGIC_VECTOR (3 downto 0) ;BEGINPROCESS (clk)BEGINIF (clk'EVENT AND clk = '1') THENIF clr = '0' THENcnt <="0000";ELSIF load = '1' THENcnt <= data_in;ELSIF en = '1' THENIF dir = '1' THENIF cnt = "1111" THENcnt <= "0000";ELSEcnt <= cnt + '1';END IF;ELSEIF cnt = "0000" THENcnt <= "1111";ELSEcnt <= cnt - '1';END IF;END IF;END IF;END IF;END PROCESS;count <= cnt;end Behavioral;VHDL Test Bench测试代码clk_process :processbeginclk <= '0';wait for 35 ns;clk <= '1';wait for 35 ns;end process;clr<='0','1' after 40 ns;load<='1','0' after 150 ns,'1' after 200 ns,'0' after 300 ns;en<='1';dir<='1','0' after 600 ns;PROCESS (clk)BEGINIF (clk'EVENT AND clk = '1') THENIF clr = '0' THENcount <="0000";ELSIF load = '1' THENcount <= data_in;ELSIF en = '1' THENIF dir = '1' THENIF count = "1111" THENcount <= "0000";ELSEcount <= count + '1';END IF;ELSEIF count = "0000" THENcount <= "1111";ELSEcount<= count - '1';END IF;END IF;END IF;END IF;END PROCESS;功能仿真图:功能仿真图:其中的管脚配置:#The following constraints were newly addedNET "count<1>" LOC = E9;NET "count<2>" LOC = D11;NET "count<3>" LOC = C11;NET "count<0>" LOC = F9;NET "data_in<0>" LOC = N17;NET "data_in<1>" LOC = H17;NET "data_in<2>" LOC = L14;NET "data_in<3>" LOC = L13;NET "clk" LOC = E10;NET "en" LOC = D5;NET "clr" LOC = B4;NET "dir" LOC = A4;NET "load" LOC = B16;Xpower功耗分析The power estimate will be calculated using PRODUCTION data. Design load 20% completeDesign load 25% completeDesign load 30% completeDesign load 60% completeDesign load 95% completeDesign load 100% completeDesign Analysis 33% completeDesign Analysis 67% completeDesign Analysis 100% complete查看Device Utilization Summary延时报告:实验结果与程序一致。
十进制加法计数器
燕山大学课程设计说明书题目:十进制加法计数器学院(系):电气工程学院年级专业:学号:学生姓名:指导教师教师职称:实验师实验师燕山大学课程设计(论文)任务书院(系):电气工程学院基层教学单位:电子实验中心学号学生姓名专业(班级)设计题目十进制加法器设计技术参数●在数码管上显示加数、被加数和结果●设置加数和被加数。
当加数和被加数超过9时显示“E”,计算结果显示为“EE”设计要求●在4个数码管显示加数、被加数和结果●分别用4个拨码开关设置加数和被加数●当加数、被加数超过9时,蜂鸣器报警5秒工作量●学会使用Max+PlusII软件和实验箱●独立完成电路设计,编程下载、连接电路和调试●参加答辩并书写任务书工作计划1.了解EDA的基本知识,学习使用软件Max+PlusII,下发任务书,开始电路设计;2.学习使用实验箱,继续电路设计;3.完成电路设计;4.编程下载、连接电路、调试和验收;5.答辩并书写任务书。
参考资料《数字电子技术基础》.阎石主编.高等教育出版社. 《EDA课程设计B指导书》.指导教师签字基层教学单位主任签字金海龙说明:此表一式四份,学生、指导教师、基层教学单位、系部各一份。
2013年 3 月 11 日目录第1章前言 (4)第2章设计说明 (5)2.1 设计思路 (5)2.2 模块介绍 (5)第3章总电路原理图 (10)第4章波形仿真图及结果分析 (11)第5章补充说明 (12)5.1真值表 (12)5.2管脚锁定及硬件连线.......................................& (13)第6章心得体会 (15)参考文献 (16)第1章前言EDA技术是指以计算机为工作平台,融合了应用电子技术、计算机技术、信息处理及智能化技术的最新成果,进行电子产品的自动设计。
利用EDA工具,电子设计师可以从概念、算法、协议等开始设计电子系统,大量工作可以通过计算机完成,并可以将电子产品从电路设计、性能分析到设计出IC版图或PCB版图的整个过程的计算机上自动处理完成。
十进制数加减计算器的设计
十进制数加减计算器的设计1 问题描述用汇编语言设计一个十进制数加减计算器,能够实现两个二位十进制数的加减运算,并具有友好的界面。
2 设计说明该程序数据流程图:3 详细的算法描述定义两个数据段,通过键盘输入,存储于AX ,BX 中,选择运算符号“+或-”,自动运算AX ,BX 中的数据,然后将结果转化为十进制输出。
(详细解释见源程序)4 源程序与执行结果4.1 源程序:CURS MACRO A,BMOV AH,2 ;置光标位置MOV BH,0 ;页号为0MOV DH,A ;设置光标的坐标为(A.B)MOV DL,BINT 10H ;BIOS调用ENDM;-------------------------------DISPMSG MACRO MESSAGELEA DX,MESSAGE ;传递MESSAGE的偏移地址MOV AH,9 ;显示字符串INT 21H ;DOS调用ENDM;----------------------------------CLEAR MACRO COLOR ;清屏MOV AH,6 ;屏幕初始化MOV AL,0 ;页号MOV CH,0 ;设置左上角的坐标为(0,0)MOV CL,0MOV DL,100 ;设置右上角的坐标为(100,100)MOV DH,100MOV BH,COLOR ;卷入行属性INT 10H ;BIOS调用ENDM.MODEL SMALL.STACK.DATA ;数据段定义MSG0 DB '* * * * * * * * * * * * * * * * * * * *',0DH,0AH ;,0dh,0ah,0dh,0ahDB ' * *',0DH,0AH;db '* *',0dh,0ah;db '* *',0dh,0ahDB ' * --------COUNTER-------- *',0DH,0AH ;,0dh,0ah,0dh,0ahDB ' * *',0DH,0AHDB ' * *',0DH,0AHDB ' * *',0DH,0AHDB ' * DATA1:'DB '_______________ *',0DH,0AH ;,0dh,0ah,0dh,0ah,0dhDB ' * *',0DH,0AHDB ' * *',0DH,0AHDB ' * *',0DHDB ' * DATA2:'DB '_______________ *',0DH,0AH ;,0dh,0ah,0dh,0ah,0dhDB ' * *',0DH,0AHDB ' * *',0DH,0AHDB ' * *',0DHDB ' * RESULT:'DB '_______________ *',0DH,0AH,0DH ;,0ah,0dh,0ah,0dh,0ah,0dh,0ah,0dh,0ah,0dh DB ' * *',0DH,0AHDB ' * *',0DH,0AHDB ' * *',0DH,0AHDB ' * *',0DH,0AHDB ' * *',0DH,0AHDB ' * * * * * * * * * * * * * * * * * * * *','$'MSG1 DB 'choose +,-','$'MSG2 DB 'you choose wrong','$',0AH,0DHMSG3 DB 'Press ESC to Exit!',0DH,0AH,'$'MSG4 DB 'Press any key to continue!',0DH,0AH,'$'MSG5 DB '-','$'MSG6 DB '.','$'MSG7 DB 'error input!','$'MSG8 DB 'data2 is wrong!','$'DATA1 DW ?DATA2 DW ?.CODE ;代码段从这里开始;--------------------------------------------DEC_DIV PROC NEARCWD ;将字转换为双字,AX内容符号扩展到DXDIV CXPUSH DXMOV DL,ALADD DL,30H ;将不是数字的字符转换为数字MOV AH,2 ;显示输出INT 21H ;DOS调用POP DXMOV AX,DXRETDEC_DIV ENDP;------------------------------------------CHANGE PROC NEAR ;该子程序的功能:将AX中存储的十六进制数转换为十进制数CMP AX,1000JAE C1 ;AX≥1000则转移CMP AX,100JAE C2 ;AX≥100则转移CMP AX,10JAE C3 ;AX≥10则转移JMP C4 ;AX<10C1: MOV CX,1000DCALL DEC_DIVC2: MOV CX,100DCALL DEC_DIVC3: MOV CX,10DCALL DEC_DIVC4: MOV CX,1DCALL DEC_DIVRETCHANGE ENDP;-------------------------------BEGIN PROC NEARBACK: CLEAR 1EHCURS 2,20 ;设置光标为(2.20)DISPMSG MSG0 ;显示用户界面CURS 8,41 ;设置光标为(8,41),第一行MOV BX,0MOV CX,2NEWCHAR1:MOV AH,1 ;键盘输入并回显INT 21H ;DOS调用CMP AL,30H ;检查输入的字符是不是数字JAE J1 ;如果不是,则转移至J1JMP D2 ;是,转移到D2执行J1: CMP AL,39H ; 与9的ASCII侣氡JBE J2 ;如果输入的字符是0-9,则转移至J2 JMP D2 ;如果不是数字,则转移至D2J2: SUB AL,30HCBW ;AL的内容符号扩展到AHXCHG AX,BXMOV DI,10MUL DIXCHG AX,BXADD BX,AXLOOP NEWCHAR1MOV DATA1,BXCURS 11,41 ;设置光标位为(11,40),第二行MOV BX,0MOV CX,2NEWCHAR2:MOV AH,1 ;键盘输入并回显INT 21H ;DOS调用CMP AL,30H ;与0的ASCII码比较JAE J3 ;如果输入数字大于等于0则跳转至J3 JMP D2J3: CMP AL,39H ;与9比较JBE J4 ;如果小于或等于9则跳转JMP D2 ;如果输入不是数字则跳转J4: SUB AL,30H ;如果输入不是0-9,则转化成相应的字符CBW ;将AL符号扩展到AHXCHG AX,BXMOV DI,10MUL DIXCHG AX,BXADD BX,AXLOOP NEWCHAR2MOV DATA2,BXMOV AX,DATA1MOV BX,DATA2PUSH AXPUSH BXCURS 15,33 ;设置光标的位置为(15.33),第三行DISPMSG MSG1 ;显示提示信息MOV AH,1 ;接受键盘输入并回显INT 21H ;DOS调用CMP AL,'+'JE ADDI ;如果运算符为+,则计算两数之和CMP AL,'-'JE SUBT ;如果运算符为-,则计算两数之差CURS 16,25 ;设置光标为(16,25)DISPMSG MSG2 ;在屏幕上输出提示信息JMP D1;----------------------------------------;ADD THE TWO DATASADDI: POP BXPOP AXADD AX,BX ;计算两数字之和PUSH AXCURS 14,41 ;设置光标位置为(14,41)POP AXCALL CHANGE ;将结果转换为十进制数JMP D1;---------------------------------------;SUBTRACT THE TWO DATASSUBT: POP BXPOP AXCMP AX,BX ;比较两数大小JAE D0 ;如果AX>=BX则跳转XCHG AX,BXPUSH AXPUSH BXCURS 14,40 ;设置光标位置为(14,40)DISPMSG MSG5 ;在屏幕上显示负号POP BXPOP AXD0: SUB AX,BX ;计算两数之差PUSH AXCURS 14,41 ;设置光标位置为(14,41)POP AXCALL CHANGE ;将结果转换为十进制数JMP D1;---------------------------------------D1: RETD2: PUSH AXPUSH BXCURS 15,33 ;设置光标位置为(15,33)DISPMSG MSG7 ;提示输入出错POP BXPOP AXRETBEGIN ENDP;----------------------------------------MAIN PROC NEARMOV AX,@DATAMOV DS,AXMOV ES,AXPUSH DSXOR AX,AXPUSH AXMOV DATA2,0 ;将缓冲区清空MOV DATA1,0AGAIN:CALL BEGINCURS 16,23 ;设置光标位置为(16.23)DISPMSG MSG3 ;在屏幕上输出提示信息,提示退出的方法CURS 17,23 ;设置光标位置为(17.23)DISPMSG MSG4 ;在屏幕上输出提示信息,提示继续的方法MOV AH,7 ;键盘输入,无回显INT 21H ;DOS调用CMP AL,27 ;判断输入的是否为ESCJNE AGAIN ;如果不是就继续执行以上运算EXIT: MOV AX,4C00H ;如果是就退出系统INT 21H ;DOS调用MAIN ENDPEND MAIN4.2 对源程序汇编生成目标文件4.3 链接目标文件生成可执行文件“12.EXE”,并用DEBUG命令调试程序4.4 运行最终可执行程序“12.EXE”,执行结果:5 使用说明打开可执行文件“十进制加减计算器.exe”,键盘输入需要运算的两个十进制数,然后小键盘选择运算符号,则程序自动运算两个数并输出结果,并提供选择“ESC退出”、“任意键继续”。
十进制计数器实验报告
十进制计数器实验报告十进制计数器实验报告引言:计数器是数字电路中常见的一种电子元件,用于计数和记录输入脉冲的次数。
在数字系统中,常用的计数器有二进制计数器和十进制计数器。
本实验旨在设计和实现一个十进制计数器,并通过实验验证其功能和性能。
一、实验目的本实验的主要目的是设计和实现一个十进制计数器,通过实验验证其功能和性能。
具体目标包括:1. 理解和掌握十进制计数器的工作原理;2. 学习使用逻辑门电路和触发器实现计数器;3. 验证计数器的计数功能和稳定性。
二、实验原理1. 十进制计数器的工作原理十进制计数器是一种能够在十进制数系统中进行计数的电子装置。
它通常由多个触发器和逻辑门组成,每个触发器负责计数一个十进制位。
当触发器的输出达到最大值时,会发出一个进位信号,使下一位触发器计数加1。
通过这种方式,十进制计数器能够实现从0到9的循环计数。
2. 实验所用材料和器件本实验所用的材料和器件包括:- 逻辑门电路芯片(如74LS08、74LS32等)- 触发器芯片(如74LS74)- 电路连接线- 电源供应器- 示波器三、实验步骤1. 搭建十进制计数器电路按照实验原理中所述的十进制计数器的工作原理,搭建一个十进制计数器电路。
根据实验所用的材料和器件,选择逻辑门电路芯片和触发器芯片,将它们按照正确的连接方式连接起来。
确保连接的准确性和稳定性。
2. 进行计数器功能测试将电源供应器连接到电路上,给予适当的电压和电流。
使用示波器观察计数器的输出波形,并记录下每个触发器的计数值。
通过观察波形和计数值,验证计数器的计数功能是否正常。
3. 进行计数器稳定性测试在计数器正常计数的情况下,观察计数器的稳定性。
持续观察一段时间,记录下计数器的计数值是否保持稳定。
如果计数器的计数值在一段时间内保持不变,则说明计数器具有较好的稳定性。
四、实验结果与分析根据实验步骤所述,我们搭建了一个十进制计数器电路,并进行了功能测试和稳定性测试。
实验结果显示,计数器的计数功能正常,能够从0到9循环计数。
五—十进制计数器
五
—
十
进
制
计
数
器
班级:姓名:
学号:
五—十进制计数器一、实训目的
·掌握原理图输入法。
·掌握设计一个五—十进制计数器法。
·进一步巩固原理图的输入和仿真图的设计。
二、实训器材
计算机和QuartusⅡ工具软件。
三、实训原理
四、实训步骤
1、输入编辑原理图文件
(1)建立五—十进制计数器电路工程项目。
(2)建立五—十进制计数器电路原理图文件。
(3)编辑五—十进制计数器电路设计图形文件。
图(一)
2、编译仿真原理图文件
(1)编辑比较器电路设计图形文件。
如果有错误,检查纠正错误,直至最后通过。
(2)仿真比较器电路设计图形文件。
认真核对输入/输出波形,检查设计的功能正确与否。
图(二)
五、实验总结
对于用quartus2软件执行仿真电子电路的效果,首先我们应该知道如何画出逻辑图,怎么画出电子逻辑图,这必须要有扎实的数模电基础知识,以及在运用软件时所遇到的各种问题,要多进行实际操作锻炼能力。
在运用软件的时候运到很多实际操作的问题,比如忘记操作步骤,这就需要多进行操作练习,多记住软件操作步骤。
重点还是电子线路图的编辑和波形图的输出的调设。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验5 十进制加法计数器设计
【实验目的】
1.了解触发器的设计过程
2.掌握D触发器与JK触发器芯片外围特性
3.掌握D触发器与JK触发器的工作过程。
4.掌握无源晶振电路设计。
【实验内容】
1.绘制无源晶振电路
2.绘制脉冲控制下单个触发器工作电路
3.在面包板上实现D触发器与JK触发器工作电路。
【实验器件】
1.十进制计数器74HC160一片,其引脚特性如图5-1所示。
图5-1 十进制计数器74HC160芯片封装图
1)MR=0,计数器清零。
2)MR=1,PE=0,装入初始值。
3)MR=1,PE=1,CET=CEP=1,计数
4)MR=1,PE=1,CET或CEP至少一个为0,计数值保持不变,这里,可以把CET设为1,CEP用开关控制。
2.七段译码器74LS48一片,其引脚特性如图5-2所示。
图5-2七段译码器74LS48芯片封装图
3.8字数码管1片,其引脚特性如图5-3所示
图5-3 8字数码管芯片封装图
4.12个10k的电阻和8个发光二极管,一个8路开关,5v电源,面包板一块,导线若干条。
5.晶振电路与CD4060
【实验步骤】
1.在Cadence中绘制如图5-4所示的原理图
图5-4 十进制计数电路图
3.在面包板上实现该电路
根据实验器件的芯片引脚图在面包板上实现图2-2所示的电路。