加法计算器

加法计算器
加法计算器

十进制加法计算器设计报告

目录

1、摘要----------------------------------------------------------------------2

2、设计任务和要求--------------------------------------------------------2

3、单片机简要原理--------------------------------------------------------2

3.1 AT89C51的介绍------------------------------------------------3

3.2 单片机最小系统------------------------------------------------6

3.3 七段共阳极数码管---------------------------------------------7

4、硬件设计-----------------------------------------------------------------7

4.1 键盘电路的设计-------------------------------------------------8

4.2 显示电路的设计-----------------------------------------------9

5、软件设计------------------------------------------------------------10

5.1 系统设计------------------------------------------------------10

5.2 显示与按键设计---------------------------------------------12

6、系统调试.-------------------------------------------------------------13

6.1系统初始状态的调试------------------------------------------13

6.2键盘输入功能的调试-----------------------------------------14

6.3系统运算功能的调试------------------------------------------16

7、心得体会与总结---------------------------------------------------------16 参考文献---------------------------------------------------------------------17 附录1 系统硬件电路图--------------------------------------------------18

附录2 程序清单-----------------------------------------------------------19 -----------

1、摘要

近年来随着科技的飞速发展,单片机的应用正在不断深入,

同时带动传统控制检测技术日益更新。在实时检测和自动控制的单片机应用系统中,单片机往往作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构软硬件结合,加

以完善。

本设计是实现两位数的加减运算的简易计算器,实现键盘输入,由七段LED数码管输出;程序都是根据教材内和网络中的程序参考编写而成,在功能上还并不十分完善,限制也较多。本设计重在设计构思,使得我们用专业知识、专业技能分析和解决问题,通过设计使得我们对所学知识彻底巩固。

2、设计任务和要求

本次课程设计,我选题是单片机十进制加法计算器软设计,设计任务为:

设计一键盘显示装置,键盘上除需定义10个十进制数字键外还要相应的功能键,其它键不定义无响应。利用此系统可分别可输入十进制被加数与加数,实现两数相加并将结果以十进制形式显示出来。(扩展:多位10进制数相加)

本课程设计的十进制加法计算器的计算范围为0~255,计算结果全为整数,计算结果溢出结果不显示。

1、加法:三位加法,计算结果超过255溢出不显示

2、减法:三位减法,计算结果若小于零溢出不显示

3、乘法:三位数乘法

4、除法:整数除法

5、有清零功能

3、单片机简要原理

在该课程设计中,主要用到一个AT89C51芯片和串接的共阴数码管。作为该设计的主要部分,下面将对它们的原理及功能做详细介绍和说明。

3.1 AT89C51的介绍:

图3.1 AT89C51外形结构和引脚分布图

芯片AT89C51的外形结构和引脚图如图一所示。AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—Falsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。

其功能特性描述:AT89C51单片机在电子行业中有着广泛的应用。AT89C52具有以下标准功能: 8k字节Flash,256字节RAM,

32 位I/O 口线,看门狗定时器,2 个数据指针,三个16 位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路,8 位微控制器 8K 字节在系统可编程 Flash ROM。

P0 口:P0口是一个8位漏极开路的双向I/O口。作为输出口,每位能驱动8个TTL逻辑电平。对P0端口写“1”时,引脚用作高阻抗输入端用。

在访问外部数据存储器或程序存储器时,P0口被分时转换地址(低8 位)和数据总线复用,在访问期间激活内部上拉电阻。

在Flash 编程时,P0 口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。

P1 口:P1 口是一个具有内部上拉电阻的8 位双向I/O 口,P1 输出缓冲器能驱动4 个TTL 逻辑电平。对P1 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。

此外,P1.0和P1.2分别作定时器/计数器2的外部计数输入(P1.0/T2)和时器/计数器2的触发输入(P1.1/T2EX),具体如下表所示。在flash编程和校验时,P1口接收低8位地址字节。

P1端口引脚号第二功能:

P1.0 T2(定时器/计数器T2的外部计数输入),时钟输出

P1.1 T2EX(定时器/计数器T2的捕捉/重载触发信号和方向控制)

P2 口:P2 是一个带有内部上拉电阻的8 位双向I/O 口,P2 的输出缓冲级可驱动(吸收或输出电流)4 个TTL逻辑门电路。对端口P2 写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。

在访问外部程序存储器或16 位地址的外部数据存储器(例如执行MOVX @DPTR 指令)时,P2 口送出高8 位地址数据。在访问8 位地址的外部数据存储器(如执行MOVX @RI 指令)时,P2 口输出P2 锁存器的内容。

Flash 编程或校验时,P2亦接收高位地址和一些控制信号。

P3 口:P3 口是一组带有内部上拉电阻的8 位双向I/O 口。P3 口输出缓冲级可驱动(吸收或输出电流)4 个TTL 逻辑门电路。对P3 口写入“1”时,它们被内部上拉电阻拉高并可作为输入端口。此时,被外部拉低的P3 口将用上拉电阻输出电流(IIL)。

P3 口还接收一些用于Flash 闪速存储器编程和程序校验的控制信号。

P3 口除了作为一般的I/O 口线外,更重要的用途是它的第二功能。

P3口亦作为AT89C52特殊功能(第二功能)使用,如下所示。

在flash编程和校验时,P3口也接收一些控制信号。

P3端口引脚第二功能:

P3.0 RXD(串行输入口)

P3.1 TXD(串行输出口)

P3.2 INTO(外中断0)

P3.3 INT1(外中断1)

P3.4 TO(定时/计数器0)

P3.5 T1(定时/计数器1)

P3.6 WR(外部数据存储器写选通)

P3.7 RD(外部数据存储器读选通)

RST——复位输入。当振荡器工作时,RST引脚出现两个机器周期以上高电平将是单片机复位。

ALE/PROG——当访问外部程序存储器或数据存储器时,ALE (地址锁存允许)输出脉冲用于锁存地址的低8位字节。一般情况下,ALE仍以时钟振荡频率的1/6输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。要注意的是:每当访问外部数据存储器时将跳过一个ALE脉冲。对FLASH存储器编程期间,该引脚还用于输入编程脉冲(PROG)。

如有必要,可通过对特殊功能寄存器(SFR)区中的8EH单元的D0位置位,可禁止ALE操作。该位置位后,只有一条MOVX 和MOVC指令才能将ALE激活。此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE禁止位无效。

PSEN——程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当AT89C52由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲,在此期间,当访问外部数据存储器,将跳过两次PSEN信号。

EA/VPP——外部访问允许,欲使CPU仅访问外部程序存储器(地址为0000H-FFFFH),EA端必须保持低电平(接地)。需注意的是:如果加密位LB1被编程,复位时内部会锁存EA端状态。

如EA端为高电平(接Vcc端),CPU则执行内部程序存储器的指令。

FLASH存储器编程时,该引脚加上+12V的编程允许电源Vpp,

当然这必须是该器件是使用12V编程电压Vpp。

引脚使用说明:

I/O端口的编程实际上就是根据应用电路的具体功能和要求对I/O寄存器进行编程。具体步骤如下:

l. 根据实际电路的要求,选择要使用哪些I/O端口。

2. 初始化端口的数据输出寄存器,应避免端口作为输出时的开始阶段出现不确定状态,影响外围电路正常工作。

3. 根据外围电路功能,确定PO端口的方向,初始化端口的数据方向寄存器。对于用作输入的端口可以不考虑方向初始化,因为PO的复位缺省值为输入。

4. 用作输入的PO管脚,需上拉电阻。

5. 最后对I/O端口进行输出(写数据输出寄存器)和输入(读端口)编程,完成对外围电路的相应功能。

3.2 单片机最小系统

单片机最小系统就是支持主芯片正常工作的最小部分,包括主控芯片、复位电路和晶振电路。

(一)复位电路

图3.2.1 复位电路

本设计采用上电与手动复位电路,电阻分别选取100和10K,

电容选取10uF,系统一上电,芯片就复位,或者中途按按键也可以进行复位。

(二)晶振电路

图3.2.2 晶振电路

晶振电路是单片机的心脏,它用于产生单片机工作所需要的时钟信号。单片机的晶振选取11.0592MHz,晶振旁电容选取30pF。

3.3 七段共阳极数码管

图3.3 七段共阳数码管

图为七段共阳数码管的引脚图,从左到右数码管的段码分别为a,b,c,d,e,f,g和小数点dp,低电平时点亮,最右边为位选端。

4、硬件设计

简易数字计算器系统硬件设计主要包括:键盘电路,显示电路以及其他辅助电路。下面分别进行设计。

4.1 键盘电路的设计

键盘可分为两类:编码键盘和非编码键盘。编码键

盘是较多按键(20个以上)和专用驱动芯片的组合,当

按下某个按键时,它能够处理按键抖动、连击等问题,直接输出按键的编码,无需系统软件干预。通用计算机

使用的标准键盘就是编码键盘。当系统功能比较复杂,按键数量很多时,采用编码键盘可以简化软件设计。但

大多数智能仪器和电子产品的按键数目都不太多(20个

以内),为了降低成本和简化电路通常采用非编码键盘。非编码键盘的接口电路有设计者根据需要自行决定,按

键信息通过接口软件来获取。本课题需要的是16个按键,故选择用非编码键盘。

计算器输入数字和其他功能按键要用到很多按键,如果采用独立按键的方式,在这种情况下,编程会很简单,但是会占用大量的I/O 口资源,因此在很多情况下都不采用这种方式,而是采用矩阵键盘的方案。矩阵键盘采用四条I/O 线作为行线,四条I/O 线作为列线组成键盘,在行线和列线的每个交叉点上设置一个按键。这样键盘上按键的个数就为4×4个。这种行列式键盘结构能有效地提高单片机系统中I/O 口的利用率。

矩阵键盘的工作原理:计算器的键盘布局如图五所示:一般有16个键组成,在单片机中正好可以用一个P口实现16个按键功能,这种形式在单片机系统中也最常用。

具体电路连接如图4.1所示:

图4.1 4*4键盘接口电路

4.2 显示电路的设计

当系统需要显示少量数据时,采用LED数码管进行显示是一

种经济实用的方法。数码管显示有静态显示和动态显示两种方法。为了减少端口的使用,故选择动态显示。电路如下图4.2所示:

图4.2 三位数码管的显示电路

5、软件设计

在十进制加法计算器的软件规划要求下,简易计算器的程序主要包括以下功能模块:(1)主模块,为系统的初始化。(2)显示与读键模块,分为判键程序段、运算操作子程序、显示子程序等部分;

5.1系统设计

(一)系统模块图

图5.1 系统模块图

此系统包括晶振电路、复位电路、LED显示电路、矩阵按键电路运算法则指示灯以及单片机。其中通过输入键盘模块将数字

0~9和运算符号“+”、“-”、“*”、“/”输入单片机进行运算;运算模块分别根据输入的运算符进行加减乘除运算;显示模块将运算后的数值通过动态扫描使之在数码管上输出。

(二)系统总流程图

主程序主要是用来进行初始化的,调用其他子程序,清空各个标志位,清空缓存区,读取键码,判断功能,在LED上作出回应,主程序流程图如图5.1.2所示。

图5.1.2

(1)数字送显示缓冲程序设计

简易计算器所显示的数值最大位三位。要显示数值,先判断数值大小和位数,如果是超过三位或大于255,将不显示数字。可重新输入数字,再次计算。

(2)运算程序的设计

首先初始化参数,送LED三位显示“0”,其它位不显示。然后扫描键盘看是否有键输入,若有,读取键码。判断键码是数字键、清零键还是功能键,是数值键则送LED显示并保存数值,是清零键则做清零处理,是功能键则又判断是“=”还是运算键,若是“=”则计算最后结果并送LED显示,若是运算键则保存相对运算程序的首地址。

5.2 显示与按键设计

(一)LED显示程序设计

LED显示器由七段发光二极管组成,排列成8字形状,因此也称为七段LED显示器。为了显示数字或符号,要为LED显示器提供代码,即字形代码。七段发光二极管,再加上一个小数点位,共计8段,因此提供的字形代码的长度正好是一个字节。简易计算器用到的数字0~9的共阳极字形代码如下表:

(二)读键子程序设计

为了实现键盘的数据输入功能和命令处理功能,每个键都有其处理子程序,为此每个键都对应一个码——键码。为了得到被按键的键码,现使用行扫描法识别按键。

读键程序使用的是反转法读键,不管键盘矩阵的规模大小,均进行两次读键。第一次所有列线均输出低电平,从所有读入键盘信息(行信息);第二次所有行线均输出低电平,从所有行线读入键盘信息(列信息)。将两次读键信息进行组合就可以得到按键的特征编码,然后通过查表得到按键的顺序编码。将各特征编码按希望的顺序排成一张表,然后用当前读得的特征码来查表。当表中有该特征码时,它的位置就是对应的顺序编码;当表中没有该特征码时,说明这是一个没有定义的键码,与没有按键(0FFH)同等看待。

6系统调试

6.1系统初始状态的调试

系统初始状态时,2个LED显示器显示“0”,运算法则指

示灯全灭。调试结果如图6.1所示。

图6.1 系统初始状态调试结果

6.2键盘输入功能的调试

通过键盘分别输入“5”、“+”、“6”,LED显示电路和运算法则指示电路分别显示相应的结果如图6.2所示。调试结果如图6.3所示。

(a)输入“5”

(b)输入“+”

(c)输入“6”

图6.2 键盘输入功能调试结果

6.3系统运算功能的调试

当输入“5”、“+”、“6”后,点击“=”可得到运算结果“11”,并通过LED显示电路显示。调试结果如图6.3所示。

图6.3 系统运算功能调试结果

7、心得体会与总结

单片机课程设计终于结束了,通过紧张的工作,完成了我的设计任务-十进制加法计算器。总的来说,这次课程设计是非常艰难的的。其中也经历了许多坎坷,但是在同学们的热情帮助下,自己在网络上查阅了各种资料,最终克服了困难,取得了成功。

通过这次课程设计,我进一步加深了对单片机了解。并进一步熟练了对Keil和Proteus软件的操作。在编写程序的过程中,遇到了很多问题,使我发现自己以前学习上存在的不足,对以前所学过的知识理解得不够深刻,掌握得不够牢固,对单片机汇编语言掌握得不够好。通过与同学探讨,终于把问题都解决了,并加深了对计算器工作的原理的了解。同时也掌握了做课程设计的一般流程,为以后的设计积累了一定的经验。做课程设计时,先查阅相关知识,把原理吃透,确定一个大的设计方向,在按照这个方向分模块的把要实现的功能用流程图的形式展示。学会了怎么样去制定计划,怎么样去实现这个计划,并掌握了在执行过程中怎么样去克服心理上的不良情绪。总之,通过这次的设计,

进一步了解了单片微型计算机及应用原理,收获很大,对软件编程、排错调试、查阅资料等方面得到较全面的锻炼和提高。

同时为了完成此次的课程设计,在网络上找到了许多相关的资料,大大扩充自己的知识面,将书本上的理论知识和实际有机地结合起来,从理论中得出结论。锻炼了实际分析问题和解决问题的能力,提高了适应实际的能力,为今后的学习和实践打下了良好的基础。此次课设还巩固和综合运用所学过的原理知识,从而提高自己的实际动手能力和独立思考的能力。

参考文献

[1] 徐春辉.陈忠斌《单片微机原理及应用》电子工业出版社

[2] 豆丁网.《基于51单片机的计算器设计》

[3] 李广弟.单片机基础[M].北京:北京航空航天大学出版社

[4] 周景润,张丽娜. 基于PROTUES的电路及单片机系统设计与仿真 [M].北京:北京航空航天大学出版社,2006

附录1

系统硬件电路图

总电路原理图

附录2

源程序清单:

RESULT EQU 60H

RESULT1 EQU 61H FUNCTIONKEY EQU 62H

ORG 00H

START: MOV R3,#0

MOV FUNCTIONKEY,#0

MOV 32H,#00H

MOV 33H,#00H

MOV 34H,#00H

MLOOP: CALL DISP ;调显示子程序WAIT: CALL TESTKEY ;判断有无按键JZ WAIT

CALL GETKEY ;读键

INC R3 ;按键个数

CJNE A,#0,NEXT1 ;判断是否数字键

LJMP E1 ;转数字键处理NEXT1: CJNE A,#1,NEXT2

LJMP E1

NEXT2: CJNE A,#2,NEXT3

LJMP E1

NEXT3: CJNE A,#3,NEXT4

LJMP E1

NEXT4: CJNE A,#4,NEXT5

LJMP E1

NEXT5: CJNE A,#5,NEXT6

LJMP E1

NEXT6: CJNE A,#6,NEXT7

LJMP E1

NEXT7: CJNE A,#7,NEXT8

LJMP E1

NEXT8: CJNE A,#8,NEXT9

LJMP E1

NEXT9: CJNE A,#9,NEXT10

LJMP E1

NEXT10: CJNE A,#10,NEXT11 ;判断是否功能键LJMP E2 ;转功能键处理NEXT11: CJNE A,#11,NEXT12

LJMP E2

NEXT12: CJNE A,#12, NEXT13

LJMP E2

NEXT13: CJNE A,#13,NEXT14

LJMP E2

NEXT14: CJNE A,#14,NEXT15

LJMP E2

NEXT15: LJMP E3 ;判断是否清除键

E1: CJNE R3,#1,N1 ;判断第几次按键

LJMP E11 ;为第一个数字

N1: CJNE R3,#2,N2

LJMP E12 ;为第二个数字

N2: CJNE R3,#3,N3

LJMP E13 ;为第三个数字

N3: LJMP E3 ;第四个数字转溢出E11: MOV R4,A ;输入值暂存R4 MOV 34H,A ;输入值送显示缓存

MOV 33H,#00H

MOV 32H,#00H

LJMP MLOOP ;等待再次输入

E12: MOV R7,A ;个位数暂存R7 MOV B,#10

MOV A,R4

MUL AB ;十位数

ADD A,R7

MOV R4,A ;输入值存R4

MOV 32H,#00H ;输入值送显示缓存

MOV 33H,34H

MOV 34H,R7

LJMP MLOOP

E13: MOV R7,A

MOV B,#10

MOV A,R4

汇编语言实现十进制加减计算器

课程设计 题目十进制数加减计算器学院计算机科学与技术 专业计算机科学与技术 班级计算机0808班 姓名何爽 指导教师袁小玲 2010 年12 月31 日

课程设计任务书 学生姓名:何爽专业班级:计算机0808班 指导教师:袁小玲工作单位:计算机科学与技术学院 题目: 十进制数加减计算器的设计 初始条件: 理论:学完“汇编语言程序设计”、“课程计算机概论”、“高级语言程序设计”和“数字逻辑”。 实践:计算机学院科学系实验中心提供计算机和软件平台。如果自己有计算机可以在其上进行设计。 要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求) (1)十进制数加减计算器的设计。 (2)程序应有操作提示、输入和输出,界面追求友好,最好是菜单式的界面。 (3)设计若干用例(测试数据),上机测试程序并分析(评价)所设计的程序。 (4)设计报告格式按附件要求书写。课程设计报告书正文的内容应包括: 在正文第一行写课程设计题目; 1.需求说明(要求、功能简述)或问题描述; 2.设计说明(简要的分析与概要设计); 3.详细的算法描述; 4.源程序与执行结果(含测试方法和测试结果); 5.使用说明; 6.总结,包括设计心得(设计的特点、不足、收获与体会)和展望(该 程序进一步改进扩展的设想)。 时间安排: 设计时间一周:周1:查阅相关资料。 周2:系统分析,设计。 周3~4:编程并上机调试。 周5:撰写课程设计报告。 设计验收安排:20周星期五8:00起到计算机学院科学系实验中心进行上机验收。 设计报告书收取时间:20周的星期五下午5:00之前。 指导教师签名: 2010年12月31日 系主任(或责任教师)签名: 2010年12月31日

最新4位数加法计算器

…………………………………………………………最新精品资料推荐…………………………………………………… 安庆师范大学 2014级单片机原理与应用 课程设计报告 课题名称4位数加法计算器的设计 姓名吴昊天、伍浩然、王鹏、万吉 学号070814018、070814008、070814005、070814001 院、系、部计算机学院物联网工程 专业物联网工程 指导教师汪文明 2016年 6月 6日

目录 一、绪言 (1) 二、系统设计 (1) 2.1设计任务 (1) 2.2方案比较与论证 (1) 2.2.1系统整体流程图 (2) 2.2.2单片机的选择方案论证 (2) 2.2.3键盘选择方案论证 (2) 2.2.4显示模块的选择方案论证 (2) 2.2.5蜂鸣器的选择方案论证 (2) 三、硬件电路设计 (2) 3.1计算器的控制电路图 (2) 3.2矩阵键盘的设计 (3) 3.3 LCD1602显示电路的设计 (3) 3.4蜂鸣器驱动电路的设计 (4) 3.5主要元器件选择 (4) 四、程序流程图 (5) 五、c语言程序设计 (5) 六、计算器的仿真 (19) 6.1 Keil调试 (19) 6.2 Proteus调试 (19) 七、结束语 (20) 八、参考文献 (21)

一、绪言 近年来随着科技的飞速发展,单片机的应用正在不断地走向深入,同时带动传统控制检测日新月异更新。在实时检测和自动控制的单片机应用系统中,单片机往往是作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构,以及针对具体应用对象特点的软件结合,加以完善。电子时钟是现代社会中的主要计时工具之一,广泛应用于手机,电脑,汽车等社会生活需要的各个方面,及对时间有要求的场合。本设计采用AT89C52单片机作为主要核心部件,附以上电复位电路,时钟电路及按键调时电路组成。数字钟已成为人们日常生活中:必不可少的必需品,广泛用于个人家庭以及车站、码头、剧场、办公室等公共场所,给人们的生活、学习、工作、娱乐带来极大的方便。由于数字集成电路技术的发展和采用了先进的石英技术,使数字钟具有走时准确、性能稳定、携带方便等优点,它还用于计时、自动报时及自动控制等各个领域。 二、系统设计 2.1 设计任务 1、通过4*4矩阵键盘输入数字及运算符; 2、可以进行4位十进制数以内的加法预算。如果计算结果超出四位数,则全部显示“E”; 3、可以进行加减乘除所有运算; 4、添加其他功能。 2.2 方案比较与论证 2.2.1 系统整体流程图 图1 系统整体流程图 2.2.2 计算器的控制方案论证 用4*4的矩阵键盘组成0-9数字键及加、减、乘、除、等于、清零按键,LCD屏幕实时显

四位二进制同步加法计数器(缺0011 0100 0101 0110)

成绩评定表

课程设计任务书

摘要 本次课设题目为四位二进制加法计数器(缺0011 0100 0101 0110)。 首先在QuartusII8.1中建立名为count16的工程,用四位二进制加法计数器的VHDL语言实现了四位二进制加法计数器的仿真波形图,同时进行相关操作,锁定了所需管脚,将其下载到实验箱。 然后,在Multisim软件中,通过选用四个时钟脉冲下降沿触发的JK触发器和同步电路,画出其时序图,卡诺图,建立相关方程,做出相关计算,完成四位二进制加法计数器(缺0011 0100 0101 0110)的驱动方程。在Multisim软件里画出了四位二进制加法计数器的逻辑电路图。经过运行,分析由红绿灯的亮灭顺序及状态,和逻辑分析仪里出现波形图。说明四位二进制加法计数器顺利完成。 关键词:计数器;VHDL语言;仿真;触发器。

目录 一、课程设计目的 (1) 二、设计框图 (1) 三、实现过程 (2) 1、QUARTUS II实现过程 (2) 1.1建立工程 (2) 1.2编译程序 (7) 1.3波形仿真 (10) 1.4 仿真结果分析 (14) 1.5引脚锁定与下载 (14) 2、MULTISIM实现过程 (16) 2.1求驱动方程 (16) 2.2画逻辑电路图 (19) 2.3逻辑分析仪的仿真 (20) 2.4结果分析 (21) 2.5自启动判断 (22) 四、总结 (23) 五、参考书目 (24)

一、课程设计目的 1 了解同步加法计数器工作原理和逻辑功能。 2 掌握计数器电路的分析、设计方法及应用。 3 学会正确使用JK 触发器。 二、设计框图 状态转换图是描述时序电路的一种方法,具有形象直观的特点,即其把所用触发器的状态转换关系及转换条件用几何图形表示出来,十分清新,便于查看。 在本课程设计中,四位二进制同步加法计数器用四个CP 下降沿触发的JK 触发器实现,其中有相应的跳变,即跳过了0011 0100 0101 0110四个状态,这在状态转换图中可以清晰地显示出来。具体结构示意框图和状态转换图如下: 1010 101111001101111011110 /1 /1000 101101110010000100000/0/0/0/0/0/0/0/0/0/????←????←????←????←????←↓↑???→????→????→????→????→? B:状态转换图

QTP测试Windows7计算器

手动录制一个windows计算器的两个整数的加法 录制脚本 Window("计算器").WinButton("Button").Click Window("计算器").WinButton("Button_2").Click Window("计算器").WinButton("Button_3").Click Window("计算器").WinButton("Button_4").Click Window("计算器").Close test Result结果截图 修改脚本,将两个加数、运算符参数化 1.录制脚本 Window("计算器").WinButton("Button").Click Window("计算器").WinButton("Button_2").Click Window("计算器").WinButton("Button_3").Click Window("计算器").WinButton("Button_4").Click Window("计算器").Close

2.将数据源参数化 3.手动选择修改按键

4.通过脚本修改数据 5.输出结果

6. test Result结果截图 插入检查单 录制脚本 Window("计算器").WinButton("Button").Click Window("计算器").WinButton("Button_2").Click Window("计算器").WinButton("Button_3").Click Window("计算器").WinButton("Button_4").Click Window("计算器").WinButton("Button_4").Check CheckPoint("Button_4") Window("计算器").Close test Result结果截图

十进制4位加法计数器设计

洛阳理工学院 十 进 制 4 位 加 法 计 数 器 系别:电气工程与自动化系 姓名:李奇杰学号:B10041016

十进制4位加法计数器设计 设计要求: 设计一个十进制4位加法计数器设计 设计目的: 1.掌握EDA设计流程 2.熟练VHDL语法 3.理解层次化设计的内在含义和实现 设计原理 通过数电知识了解到十进制异步加法器的逻辑电路图如下 Q3 则可以通过对JK触发器以及与门的例化连接实现十进制异步加法器的设计 设计内容 JK JK触发器的VHDL文本描述实现: --JK触发器描述 library ieee; use ieee.std_logic_1164.all; entity jk_ff is

port( j,k,clk: in std_logic; q,qn:out std_logic ); end jk_ff; architecture one of jk_ff is signal q_s: std_logic; begin process(j,k,clk) begin if clk'event and clk='0' then if j='0' and k='0' then q_s <= q_s; elsif j='0' and k='1' then q_s <= '0'; elsif j='1' and k='0' then q_s <= '1'; elsif j='1' and k='1' then q_s <= not q_s; end if; end if; end process; q <= q_s; qn <= not q_s; end one; 元件门级电路: 与门VHDL文本描述实现: --与门描述library ieee; use ieee.std_logic_1164.all;

四位二进制加法计数器课程设计

成绩评定表 学生姓名郝晓鹏班级学号1103060129 专业通信工程课程设计题目四位二进制加法 计数器 评语 组长签字: 成绩 日期20 年月日

课程设计任务书 学院信息科学与工程学院专业通信工程 学生姓名郝晓鹏班级学号1103060129 课程设计题目四位二进制加法计数(缺0010 0011 1101 1110) 实践教学要求与任务: 1、了解数字系统设计方法。 2、熟悉VHDL语言及其仿真环境、下载方法。 3、熟悉Multisim仿真环境。 4、设计实现四位二进制加计数(缺0010 0011 1101 1110) 工作计划与进度安排: 第一周:熟悉Multisim及QuartusII环境,练习数字系统设计方法。包括采用触发器设计和超高速硬件描述语言设计,体会自上而下、自下而上设计 方法的优缺点 第二周:1.在QuartusII环境中仿真实现四位二进制加计数(缺0100 0101 1001 1010 )。 2.在Multisim环境中仿真实现四位二进制加计数,缺(0100 0101 1001 1010),并通过虚拟仪器验证其正确性。 指导教师: 201 年月日专业负责人: 201 年月日 学院教学副院长: 201 年月日

摘要 本文采用在MAXPLUSⅡ环境中用VHDL语言实现四位二进制加法计数(缺0010 0011 1101 1110),在仿真器上显示结果波形,并下载到目标芯片上,在实验箱上观察输出结果。在Multisim环境中仿真实现四位二进制加法计数器(缺0010 0011 1101 1110),并通过虚拟仪器验证其正确性。 关键词:MAXPLUSⅡ环境;VHDL语言;四位二进制加计数;Multisim环境

在win32工程下做计算器

课程设计报告 题目:在win32 application工程下计算器的设计与实现 小组成员:陈李元41212204 余斌41212202

目录1概述 1.1课程设计的内容 2系统需求分析 2.1系统目标 2.2重要功能 2.3开发环境 3设计过程 3.1主函数WinMain设计过程3.2窗口过程WndProc 4小结 5参考文献 附录1:程序代码 附录2:程序运行部分截图

1概述 1.1课程设计的内容 这次c++课程设计我们组选的是设计一个带界面的计算器,不是用MFC,而是在win32 application工程下做的带界面的计算器。它属于windows程序设计范畴。 我们主要是把功夫花在做界面上了,这个计算器本身所具有的功能很少,它只支持少量的算术运算。 2系统需求分析 2.1系统目标 我们在日常生活和学习中,经常会遇到一些关于数值的运算。所以我们组就着手开始做一个计算器方便我们的学习和生活。这个计算器它具有加法,减法,乘法,除法四种基本的算术运算。另外还具有计算N阶阶乘的功能,此外还具有求一个弧度的正弦(余弦和它功能类似要想求余弦事先做一些弧度的转化即可)。 该计算器用例图如下:

类图如下: 2.2重要功能 具备四种最基本的算术运算。另外还具有阶乘,求正弦的功能。 2.3开发环境 本程序是在visual c++ 6.0编译,链接,运行。它是在win32 application工程下所创建。 3设计过程 3.1主函数WinMain设计过程 首先在界面设计中我们要用到大量的windows API。这些函数都是在windows.h标准库中。

4位数加法计算器

安庆师范大学2014级单片机原理与应用 课程设计报告 课题名称4位数加法计算器的设计姓名吴昊天、伍浩然、王鹏、万吉 学号070814018 070814008 070814005 070814001 院、系、部计算机学院物联网工程 专业物联网工程 指导教师汪文明 2016 年6月6日

一、设计任务及要求:设计任务: 1、通过4*4矩阵键盘输入数字及运算符; 2、可以进行4位十进制数以内的加法预算。如果计算结果超出四位数,则全部显示 “ E ; 3、可以进行加减乘除所有运算; 4、添加其他功能。 要求: 首先进行预设计,根据设计的任务要求,先确定设计的硬件电路方案,然后进行硬件电路的初步设计,在计算机上画出硬件电路图,在老师的指导下进行修正硬件电路图,并对所涉及的参数进行计算。 在确定硬件的基础上,要进行软件的总体设计,包括软件主流程的设计以及各子程序的设计,同时,要写出详细的操作说明,如时间的调整方法,显示窗口的时间切换等,以配合软件的设计。 然后进入硬件的调试及编程工作,设计组内的同学可根据任务分工,有调试硬件各功能模块的,如键盘子程序、显示子程序等,有进行整体程序的编制的,各模块的编制过程中要注意资源的衔接。 最后进入联机调试,联机调试的原则也要采用分步走的原则,各个功能模块要逐步套入,通过一个再增加一项功能,从而达到设计的总体要求,不要上来编制个最大的程序,最后无法查找错误。 最后写出设计报告。 指导教师签名: 2016年6月6日 、成绩 指导教师签名: 年月曰 一、绪言 (1)

二、系统设计 (1) 2.1设计任务 (1) 2.2方案比较与论证 (1) 2.2.1系统整体流程图 (2) 222单片机的选择方案论证 (2) 2.2.3键盘选择方案论证 (2) 2.2.4显示模块的选择方案论证 (2) 2.2.5蜂鸣器的选择方案论证 (2) 三、硬件电路设计 (2) 3.1计算器的控制电路图 (2) 3.2矩阵键盘的设计................................................ (3) 3.3 LCD1602显示电路的设计 (3) 3.4蜂鸣器驱动电路的设计 (4) 3.5主要元器件选择 (4) 四、程序流程图 (5) 五、c语言程序设计 (5) 六、计算器的仿真 (19) 6.1Keil 调试 (19) 6.2Proteus 调试 (19) 七、结束语 (20) 八、参考文献 (21) 一、绪言 近年来随着科技的飞速发展,单片机的应用正在不断地走向深入,同时带动传统控制检测日

实验十进制加减法计数器

实验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 :abc if(EN) if(!RST) if(F) begin :a DOUT=DOUT+1; if(DOUT==10) DOUT=0; end //END A else begin :b DOUT=DOUT-1; if(DOUT==15) DOUT=9; end else DOUT=0; else DOUT=DOUT; end endmodule 2.测试程序 `timescale 10ns/1ns module test_count; wire [3:0] DOUT; reg EN,F,RST,CLK; count M(EN,CLK,DOUT,F,RST); initial begin :ABC CLK=0; EN=0;

RST=1; F=1; #100 EN=1; #200 RST=0; #1500 F=0; #3000 $stop; end always #50 CLK=~CLK; initial $monitor("EN=%b,F=%b,RST=%b,DOUT%D",EN,F,RST,DOUT); endmodule 3.测试结果 # 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

4位数计算器的设计

摘要 0 1 总体任务 (1) 1.1设计目的 (1) 1.2设计内容和要求 (1) 1.3 设计思路 (1) 2 设计原理分析 (2) 2.1 计算器的工作原理 (2) 2.1.1 计算器的工作流程 (2) 2.1.2 编程实现控制 (2) 2.1.3 功能拓展 (2) 2.2 单片机计算器的基本构成及原理 (2) 3硬件电路的设计 (4) 3.1系统硬件总电路构成及原理 (4) 3.2硬件电路的部分组成元器件的简介 (4) 3.2.1AT89C51单片机 (4) 3.2.2 八段LED数码管 (4) 3.2.3 矩阵键盘 (6) 3.3 元器件清单 (7) 3.4 电路原理图 (7) 4 系统程序的简单设计 (8) 4.1 程序方框图 (8) 4.2 计算器程序 (8) 5 系统的仿真调试 (15) 6 课程设计总结 (16) 参考文献 (17)

本文论述了单片机4位数加法计算器的设计,从对设计任务的分析到画电原理图到编程和最后的仿真调试,都进行了一个简单的描述。 在设计过程中,采用Keil软件编写源程序,用Protues 7 professional的ISIS 7 professional软件画电原理图并且仿真,通过对编程时的编译和对仿真结果现象的观察,不断地对源程序以及电原理图的修改,最后成功设计出了一个能够进行4位数加法运算的计算器。该计算器通过4×4的矩阵键盘输入数字及运算符,若运算结果超过4位十进制数,则显示为E;另外,也能进行减法、乘法以及除法的运算,在进行减法运算时,若运算结果小于零,则显示其绝对值;进行除法运算时,若除数等于零,则显示E。 关键词:计算器;单片机;数码管;矩阵键盘

10进制加法计数器课程设计

西北师范大学知行学院 数字电子实践论文 课题:74ls161组成的十进制加法计数器 (置数法) 班级:14电本 学号:14040101114 姓名:于能海

指导老师:崔用明 目录 第1章前言 (1) 1.1 摘要 (1) 1.2 设计目的 (2) 1.3 设计内容及要求 (2) 第2章设计方案 (3) ....................................................................................................................... 错误!未定义书签。 2.1主要芯片功能介绍 (3) 2.2.1 四位二进制计数器74161介绍 (3) ............................................................................................................... 错误!未定义书签。 2.2 工作原理 (4) 第3章硬件设计 (4) 3.1 单元电路设计 (4) 3.2 总硬件电路图 (5) 第4章仿真与试验 (6) 4.1 仿真结果 (6) 4.2 调试中遇到的问题 (7) 第5章结论和体会 (8)

第1章前言 1.1 摘要在数字电路技术的课程中,计数器的功能是记忆脉冲的个数,它是数字系统中应用最广泛的基本时序逻辑构件。计数器在微型计算机系统中的主要作用就是为CPU和I/O设备提供实时时钟,以实现定时中断、定时检测、定时扫描、定时显示等定时控制,或者对外部事件进行计数。一般的微机系统和微机应用系统中均配置了定时器/计数器电路,它既可当作计数器作用,又可当作定时器使用,其基本的工作原理就是"减1"计数。计数器:CLK输入脉冲是一个非周期事件计数脉冲,当计算单元为零时,OUT输出一个脉冲信号,以示计数完毕。 本十进制加法计数器是基于74161芯片而设计的, 该十进制加法计数器设计理念是用于工厂流水线上产品计数,自动计数,方便简单。 关键词:74ls161计数器 Introduction In the course of digital circuit technology, the counter memory function is the number of pulses, it is a digital system, the most widely used basic sequential logic components. The main role of the counter in the micro-computer system is to provide real-time clock for the CPU and I / O devices to achieve the timer interrupt, timing detection, scheduled scanning, the timing display timing control, or to count external events. General computer systems and computer application systems are equipped with a timer / counter circuit, it can as a counter action, but also as a timer, the basic working principle is "minus 1" count. Counter: CLK input pulse is a non-periodic event count pulses to zero when calculating unit, OUT outputs a pulse signal, to show the count is completed. The decimal addition counter is designed based on the 74161 chip, the low potential sensor senses when to rely on external signals, sensors in an object within the sensing range, otherwise it is a high potential. Within the sensing range of the sensor when an object is moved out of date, sensor potential from high to low and then high, appears on the edge. Counter is automatically incremented and displayed on a digital control. The decimal addition counters have two seven-segment LED. It can count from 0 to 99 objects, and easy to expand. The design concept of decimal addition counter is used to count on a factory assembly line products, automatic counting, convenient and simple. Keywords:74ls161counter

简易加减法计算器

电子技术课程设计 题目:简易加减法计算器 一、设计课题:简易加减法计算器 二、设计任务和要求: 1、用于两位以下十进制数的加减运算。 2、以合适方式显示输入数据及计算结果。 三、原理电路设计 1、方案的比较 对于简单加减计算器可有三种不同的方案 ①用数/模转换,与模拟电路中的加减计算器进行简单的加减计 算。先用74LS147二-十进制优先编码器转化为二进制进行输A,然后数模转化模拟信号,进行加减计算后,转化为数字信号输 出。 此方案思路较明确,但经过二次数模相互转换,精确率较低; 具体输出时的负数效应,与单输入的二进制转化为十进制时电 路较复杂,无成块的集成电路,致使误差率较大。 ②可用数字电路中4位超前进位加法器74LS283与方案一输入相 同;后用三态输出CMOS门电路进行选择输入,进行加法运算

后输出,输出时,注意负数的问题与在输出中2进制与10进制关系的问题。还有寄存器的问题。 此方案思路明确,比较精确,此中的2进制与10进制问题需复杂门电路解决无现成集成元件,存在太多的散元件。减法运算需要反码进行运算,况且在其触发过程中需要考虑同步问题。 ③可运用数字电路中的单时钟同步十进制加/减计数器74LS190 进行加减计算。方案以上升沿进行输入,触发加减计算。本方案输入方式不同于一般输入方式,需要有所改进。但思路明了,不十分复杂,对于负数运算较复杂,可集成程度较高。 终上所述,最好是相互结合,以③为本。 2、单元电路设计

3、元件的选择

对于计数器来说需要选同时可以进行加减计数的计数器进行 加减,因此选用单时钟十进制加/减计数器74LS190. 其电路图及功能表如下: 中间由于1/0的输出不能够持久的进行保持,因此可用RS触 发器进行保持。对于加/减,等于触发需要74LS194进行触发 保持 4、整体电路(见附图) 5、工作原理 主要运用十进制加/减计数器74LS190加/减计数功能与74LS194的触发 功能。 六、设计总结 我们以为,在这学期的实验中,在收获知识的同时,还收获了阅历,收获了成熟,在此过程中,我们通过查找大量资料,请教别人,以及不懈的努力,不仅培养了独立思考、动手操作的能力,在各种其它能力上也都有了提高。更重要的是,在实验课上,我们学会了很多学习的方法。而这是日后最实用的,真的是受益匪浅。要面对社会的挑战,只有不断的学习、实践,再学习、再实践。而且,这对于我们的将来也有很大的帮助。以后,不管有多苦,我想我们都变苦为乐,找寻有趣的事情,发现其中珍贵的事情。就像中国提倡的艰苦奋斗一样,我们都可以在实验结束之后变的更加成熟,会面对需要面对的事情。 因为由于时间的紧缺和许多课业的繁忙,并没有做到最好,但是,最起码我们没有放弃,它是我们的骄傲!相信以后我们会以更加积极地态度对待我们的学习、对待我们的生活。我们的激情永远还会结束,

EDA实验报告(四选一、四位比较器、加法器、计数器、巴克码发生器)

EDA实验报告

实验14选1数据选择器的设计 一、实验目的 1.学习EDA软件的基本操作。 2.学习使用原理图进行设计输入。 3.初步掌握器件设计输入、编译、仿真和编程的过程。 4.学习实验开发系统的使用方法。 二、实验仪器与器材 1.EDA开发软件一套 2.微机一台 3.实验开发系统一台 4.打印机一台 三、实验说明 本实验通过使用基本门电路完成4选1数据选择器的设计,初步掌握EDA设计方法中的设计输入、编译、综合、仿真和编程的过程。实验结果可通过实验开发系统验证,在实验开发系统上选择高、低电平开关作为输入,选择发光二极管显示输出电平值。 本实验使用Quartus II 软件作为设计工具,要求熟悉Quartus II 软件的使用环境和基本操作,如设计输入、编译和适配的过程等。 实验中的设计文件要求用原理图方法输入,实验时,注意原理图编辑器的使用方法。例如,元件、连线、网络名的放置方法和放大、缩小、存盘、退出等命令的使用。学会管脚锁定以及编程下载的方法等。 四、实验要求 1.完成4选1数据选择器的原理图输入并进行编译; 2.对设计的电路进行仿真验证; 3.编程下载并在实验开发系统上验证设计结果。 五、实验结果 4选1数据选择器的原理图: 仿真波形图:

管脚分配:

实验2 四位比较器 一、实验目的 1.设计四位二进制码比较器,并在实验开发系统上验证。 2.学习层次化设计方法。 二、实验仪器与器材 1.EDA 开发软件 一套 2.微机 一台 3.实验开发系统 一台 4.打印机 一台 5.其它器件与材料 若干 三、实验说明 本实验实现两个4位二进制码的比较器,输入为两个4位二进制码0123A A A A 和 0123B B B B ,输出为M (A=B ),G (A>B )和L (A

十进制加法计数器

在数字系统中,常需要对时钟脉冲的个数进行计数,以实现测量、运算和控制等功能。具有计数功能的电路,称为计数器。 计数器是一种非常典型、应用很广的时序电路,计数器不仅能统计输入时钟脉冲的个数,还能用于分频、定时、产生节拍脉冲等。计数器的类型很多,按计数器时钟脉冲引入方式和触发器翻转时序的异同,可分为同步计数器和异步计数器;按计数体制的异同,可分为二进制计数器、二—十进制计数器和任意进制计数器;按计数器中的变化规律的异同,可分为加法计数器、减法计数器和可逆计数器。 二进制加法计数器运用起来比较简洁方便,结构图和原理图也比其它进制的简单明了,但二进制表示一个数时,位数一般比较长。十进制是我们日常生活中经常用到的,不用转换,所以设计十进制加法计数器比设计二进制加法计数器应用广泛,加法器是以数据的累加过程,日常生活中,数据的累加普遍存在,有时候需要一种计数器对累加过程进行运算处理,所以设计十进制加法计数器应广大人们生活的需要,对我们的生活有一个积极地促进作用,解决了生活中许多问题,所以会设计十进制加法计数器使我们对数字电路的理论和实践知识的充分结合,也使我们对电子技术基础有了深刻的了解,而且增强了我们对电子技术基础产生了浓厚的兴趣,这次课程设计使我受益匪浅!

一、设计题目 (3) 二、设计目的 (3) 三、设计依据 (3) 四、设计内容 (3) 五、设计思路 (4) 六、设计方案 (7) 七、改进意见 (10) 八、设计总结 (11) 九、参考文献 (12)

一、设计题目 十进制加法计数器 二、设计目的 1.学习电子电路设计任务。 2.通过课程设计培养学生自学能力和分析问题、解决问题的能力。 3.通过设计使学生具有一定的计算能力、制图能力以及查阅手册、使用国家技术标准的能力和一定的文字表达能力。 三、设计依据 1.用JK触发器组成。 2.实现同步或异步加法计数。 四、设计内容 1.复习课本,收集查阅资料,选定设计方案; 2.绘制电气框图、电气原理图; 3.对主要元器件进行计算选择,列写元器件的规格及明细表; 4.设计总结及改进意见; 5.参考资料; 6.编写说明书。

第2章 仿Windows计算器

第2章仿Windows计算器 第2章仿Windows计算器 2.1 仿Windows计算器概述 Windows计算器,是Windows操作系统自带计算器,,可以帮助用户完成数据的运算,它可分为“标准型”和“科学型”,本章的仿Windows计算器是标准型的Java实现,标准型Windows计算器实现的主要功能有:四则运算;求倒数;求开方;存储计算结果;读取计算结果;累积计算结果。 我们在第一章中,我们实现了一个在控制台进行的五子棋游戏,我们从本章开始将在Swing界面中实现本书的项目。在本章中,我们将使用到JFrame和JPanel两个Swing容器,使用到JT extField和JButton两个Swing容器,使用BorderLayout和GridLayout做两个布局器,以及使用到事件、事件监听器和事件适配器等。 实现一个计算器,界面中需要提供各种输入的按钮,再以这些按钮组成计算器的键盘,用户点击键盘输入值后,就可以将其所输入的值显示到一个文本框中,运算后,再将结果显示到文本框中。计算器的最终效果如图2.1所示。 图 2.1 用Swing制作的计算器 从图2.1中可以看到,我们开发界面的时候,需要提供一个文本框在窗口的最上部,文本框下面再提供各个计算器的按钮。 2.1.1 数学与其它符号介绍 在此计算器中,主要使用的数学运算有加、减、乘、除四则运算,或者对一个正数进行开方,或者对一个非0的数学求倒数,使用到的数学符号有: ?加、减、乘、除,对应使用的符号是“+”、“-”、“*”、“/”。 ?开方与倒数,对应使用的符号是“sqrt”和“1/x”。 ?求结果使用的数学符号是“=”。

加法计算器

十进制加法计算器设计报告 目录 1、摘要----------------------------------------------------------------------2 2、设计任务和要求--------------------------------------------------------2 3、单片机简要原理--------------------------------------------------------2 3.1 AT89C51的介绍------------------------------------------------3 3.2 单片机最小系统------------------------------------------------6 3.3 七段共阳极数码管---------------------------------------------7 4、硬件设计-----------------------------------------------------------------7 4.1 键盘电路的设计-------------------------------------------------8 4.2 显示电路的设计-----------------------------------------------9 5、软件设计------------------------------------------------------------10 5.1 系统设计------------------------------------------------------10 5.2 显示与按键设计---------------------------------------------12 6、系统调试.-------------------------------------------------------------13 6.1系统初始状态的调试------------------------------------------13 6.2键盘输入功能的调试-----------------------------------------14 6.3系统运算功能的调试------------------------------------------16 7、心得体会与总结---------------------------------------------------------16 参考文献---------------------------------------------------------------------17 附录1 系统硬件电路图--------------------------------------------------18 附录2 程序清单-----------------------------------------------------------19 -----------

2 用计算器按加法算式(练习课)

34+9= 10+60=9+50= 10+40=61+10= 18+5= 74+6= 53+5= 35+2= 8+50= 40+6= 62+7= 63+3= 11+2=60+8= 32+4= 84+4= 71+9= 12+6= 33+2=3+40= 15+4= 23+5= 37+1= 30+8= 43+1= 86+2= 70+3= 53+5= 47+4= 88+3= 47+6= 39+8= 75+5= 89+6= 23+8= 68+5= 26+8= 19+6= 28+5= 53+6= 37+9= 78+5= 86+6= 68+7= 87+9= 26+9= 25+6= 50+37= 49+7= 87+9= 50+8= 61+9= 39+8= 85+4= 91+8= 82+5=39+10= 46+7= 73+7=37+4= 78+3= 27+60= 68+5=9+25=35+6=2+40=86+2= 48+7= 39+10= 16+9= 5+18=17+3= 36+6= 29+5= 87+9= 48+8= 35+8=4+19= 7+26= 4+37= 29+4= 39+8= 26+7=

32+8= 25+5= 13+7= 86+8= 19+60= 16+9=34+6= 5+37= 32+8= 14+7= 37+9= 57+8=39+2= 27+4= 50+5= 54+9= 70+60= 39+50=10+40= 18+50= 74+6= 37+2= 26+50= 23+70=6+10= 47+4= 88+3= 47+6= 99+1= 68+5=26+8= 87+9= 83+8= 19+6= 75+5= 36+6=19+60= 18+7= 47+9=83+70= 67+40= 88+3=48+50= 47+6= 39+8= 68+5= 36+8= 19+6=23+6= 20+13= 23+3= 20+13= 16+12= 16+7=78+50= 14+29= 22+17= 16+11=22+4= 13+12=11+10= 18+11= 8+20= 13+13= 17-15= 24+11=24+7= 29+26= 9+7= 9+11= 10+28= 22+12=13-2= 7+3=3+7=18+5= 14+4= 0+16=19+1= 18+6=11+5= 11+18= 19+27= 11+9=

相关文档
最新文档