微机原理实验简易计算器
微机原理课件设计简易计算器

$二○一一~二○一二学年第一学期信息科学与工程学院自动化系:课程设计计划书课程名称:微机原理及应用课程设计班级:自动化 0901姓名:王立学号: 4032 ]指导教师:孟志华二○一一年十二月六日一、课题名称简易计算器设计二、课题目的利用8088和8255设计一个简易计算器,并将其结果显示在LED数码管上。
熟悉系统设计的基本步骤,掌握8088与8255的接口设计,掌握通过8255设计键盘扫描技术,掌握通过8255显示七段共阴极数码管设计。
加强对8088数据总线,地址总线及接口寻址的理解,加深对8255的端口控制的理解。
!三、需求分析(1)能够实现99以内的加减乘法运算,并显示在2位LED上。
(2)对于减法运算产生的负数,可在LED上显示“-”号,若负量超过9,则显示“E0”。
四、方案选择方案一:、该方案将LED显示电路直接接在8088的DB上,而键盘则采用8255进行扫描。
(方案二:该方案则是将LED 显示电路和键盘扫描电路分别接在两个不同的8255上,扫描和显示时,选中不同的8255。
方案三:)该方案则只用一片8255驱动LED 显示和键盘扫描电路。
方案评估:方案一:LED 显示驱动电路实现起来较简单,但是很浪费系统总线资源,舍弃!方案二:释放了系统数据总线,但是方案缺乏经济性,因为采用了两片8255,与建设资源节约型社会初衷冲突!舍弃!方案三:此种方案较为经济,方便,具有模块化的特点(因为将计算和显示电路全部集成在了8255上,应用时,直接挂接8255即可实现要求!)&综上所述:采用方案三!五、程序流程图程序总流程图:…判断输入流程图:六、系统原理图键盘映射图:-注:1、复位电路单独画在旁边,其参数设置符合6MHZ。
2、74HC04反相器由于位置不够,本人自己画了一个小型的74HC04。
3、IOW,IOR信号线由于采用了最大系统组态,故由8288的IORC和AIOWC代替。
4、8088的CLK由8284A提供,其电路连接方式参照Datasheet5、最大系统组态连接方式参照课本。
简单计算器实验报告

简单计算器实验报告简单计算器实验报告引言:在现代社会,计算器已经成为人们生活中不可或缺的工具之一。
无论是在学校、办公室还是家庭,计算器都扮演着重要的角色。
本实验旨在设计和构建一个简单的计算器,并通过实验验证其功能和准确性。
实验步骤:1. 设计计算器的外观和功能:我们首先对计算器进行了外观设计,选择了简洁、易于使用的界面。
然后确定了计算器的基本功能,包括加法、减法、乘法和除法。
2. 选择合适的硬件和软件:为了构建计算器,我们选择了合适的硬件和软件。
硬件方面,我们选用了一块Arduino开发板、液晶显示屏和按键。
软件方面,我们使用了Arduino编程语言。
3. 连接硬件和编写代码:我们将液晶显示屏和按键与Arduino开发板连接起来,并编写了相应的代码。
代码中包括了计算器的逻辑运算和界面显示。
4. 测试计算器的功能和准确性:在完成硬件连接和代码编写后,我们对计算器进行了测试。
我们输入了一系列的算术表达式,包括简单的加减乘除运算,以及复杂的多步运算。
通过与手动计算的结果进行对比,我们验证了计算器的功能和准确性。
实验结果:经过多次测试,我们的计算器表现出了良好的功能和准确性。
无论是简单的加法还是复杂的多步运算,计算器都能够正确地给出结果。
液晶显示屏清晰地显示了算术表达式和计算结果,而按键的响应速度也非常迅速。
讨论:虽然我们的计算器在功能和准确性方面表现出色,但仍有一些改进的空间。
首先,我们可以增加更多的功能,如开方、求余等。
其次,我们可以改进界面设计,使其更加美观和易于使用。
此外,我们还可以考虑加入更强大的处理器和更大的内存,以提高计算器的性能。
结论:通过本次实验,我们成功设计和构建了一个简单的计算器,并验证了其功能和准确性。
计算器在各种算术运算中表现出色,并且具有清晰的界面和快速的响应速度。
然而,我们也意识到计算器仍有改进的空间,包括增加更多功能和改进界面设计。
总的来说,本次实验为我们深入了解计算器的原理和构造提供了宝贵的经验。
简易计算器实验报告

简易计算器实验报告简易计算器实验报告引言:计算器是我们日常生活中常用的工具之一。
它可以帮助我们进行简单的数学运算,提高计算的效率。
在本次实验中,我们将设计并制作一台简易计算器,通过实践来掌握计算器的原理和工作原理。
实验目的:1. 了解计算器的基本原理和工作原理;2. 掌握计算器的设计和制作方法;3. 提高动手能力和创造力。
实验材料:1. 电路板;2. 按键;3. LED显示屏;4. 电容;5. 电阻;6. 电源。
实验步骤:1. 连接电路板和电源,确保电路板能够正常工作;2. 将按键连接到电路板上,用于输入数字和运算符;3. 连接LED显示屏,用于显示计算结果;4. 添加电容和电阻,用于控制电路的稳定性和电流;5. 调试电路,确保计算器能够正确运行。
实验结果:经过一番调试,我们成功制作出了一台简易计算器。
它可以进行基本的加减乘除运算,并且在LED显示屏上显示结果。
通过按键输入数字和运算符,我们可以进行各种运算,从而得到我们想要的结果。
这台计算器虽然简单,但是它的实用性和便携性都非常高。
实验分析:在本次实验中,我们主要学习了计算器的基本原理和工作原理。
计算器是通过按键输入数字和运算符,然后经过电路的计算和控制,最终在显示屏上显示结果。
在电路中,电容和电阻的作用是为了保证电路的稳定性和电流的控制。
通过这个实验,我们更加深入地了解了计算器的内部结构和工作原理。
实验总结:通过本次实验,我们成功制作了一台简易计算器,并且对计算器的原理和工作原理有了更深入的了解。
实验过程中,我们不仅提高了动手能力和创造力,还培养了解决问题的能力。
计算器作为一种常见的工具,它的设计和制作过程并不复杂,但是它的实用性和便携性却非常高,为我们的生活带来了很大的便利。
未来展望:通过这次实验,我们对计算器的原理和工作原理有了初步的了解。
在未来,我们可以进一步深入研究计算器的更高级功能和更复杂的电路设计。
同时,我们也可以将这种简易计算器的设计思想应用到其他领域,如电子设备、机器人等,从而提高我们的创造力和创新能力。
微机原理课件设计简易计算器

微机原理课件设计简易计算器(总14页)--本页仅作为文档封面,使用时请直接删除即可----内页可以根据需求调整合适字体及大小--二○一一~二○一二学年第一学期信息科学与工程学院自动化系课程设计计划书课程名称:微机原理及应用课程设计班级:自动化 0901 姓名:王立学号: 4032指导教师:孟志华二○一一年十二月六日2一、课题名称简易计算器设计二、课题目的利用8088和8255设计一个简易计算器,并将其结果显示在LED数码管上。
熟悉系统设计的基本步骤,掌握8088与8255的接口设计,掌握通过8255设计键盘扫描技术,掌握通过8255显示七段共阴极数码管设计。
加强对8088数据总线,地址总线及接口寻址的理解,加深对8255的端口控制的理解。
三、需求分析(1)能够实现99以内的加减乘法运算,并显示在2位LED上。
(2)对于减法运算产生的负数,可在LED上显示“-”号,若负量超过9,则显示“E0”。
四、方案选择方案一:该方案将LED显示电路直接接在8088的DB上,而键盘则采用8255进行扫描。
3方案二:该方案则是将LED显示电路和键盘扫描电路分别接在两个不同的8255上,扫描和显示时,选中不同的8255。
方案三:该方案则只用一片8255驱动LED显示和键盘扫描电路。
方案评估:方案一:LED显示驱动电路实现起来较简单,但是很浪费系统总线资源,舍弃!方案二:释放了系统数据总线,但是方案缺乏经济性,因为采用了两片8255,与建设资源节约型社会初衷冲突!舍弃!方案三:此种方案较为经济,方便,具有模块化的特点(因为将计算和显示电路全部集成在了8255上,应用时,直接挂接8255即可实现要求!)综上所述:采用方案三!4五、程序流程图程序总流程图:5判断输入流程图:6六、系统原理图7注:1、复位电路单独画在旁边,其参数设置符合6MHZ。
2、74HC04反相器由于位置不够,本人自己画了一个小型的74HC04。
3、IOW,IOR信号线由于采用了最大系统组态,故由8288的IORC和AIOWC代替。
汇编语言课程设计--简单计算器设计

《微机原理与应用》课程设计实验题目:简单计算器设计年级:2010级专业:电子信息工程组员:梁玮堃 21005108田少飞 21005116刘明 21005127陈晓琳 21005145指导教师:邓亚玲2013年01月组员分工组长梁玮堃:报告设计。
具体负责对设计报告版面设计、修改,流程图的设计,调试程序和应用程序的设计。
组员田少飞:程序调试。
负责计算器具体程序设计,编写主程序。
刘明:程序修改。
对已调程序进行修改,并设计相关功能程序。
陈晓琳:查阅资料。
通过上网或在图书馆查阅有关汇编语言及计算器设计资料。
目录1设计目的 (1)2概要设计 (2)2.1系统总体分析 (2)2.2程序流程图及说明 (3)3详细设计 (5)3.1主模块及子模块说明 (5)3.2各模块详细设计 (10)4程序调试 (13)4.1调试过程及分析 (13)4.2运行界面分析 (13)5心得体会 (17)5.1设计体会 (17)5.2系统改进 (17)参考文献 (18)1设计目的汇编语言是计算机能够提供给用户使用的最快而又最有效的语言。
同时,汇编语言也是能够利用计算机所有硬件特性并能直接控制硬件的唯一语言。
因而,对程序的空间和时间要求很高的场合,汇编语言的应用是必不可少的。
至于很多需要直接控制硬件的应用场合,则更是非用汇编语言不可。
由于汇编语言如此地接近计算机硬件,因此,它可以最大限度地发挥计算机硬件的性能。
用汇编语言编写的程序速度通常要比高级语言快几倍、几十倍、甚至成百上千倍,解释语言其程序速度更无法与汇编语言程序同日而语。
本次课程设计的题目是用汇编语言实现一个简单的计算器,要求:编写一个程序,每运行一次可执行程序,可以实现加减乘除四则运算。
计算器是最简单的计算工具,简单计算器具有加、减、乘、除四项运算功能。
通过使用汇编语言设计实现简单计算器,以此进一步了解和掌握对数据存储,寄存器的使用,加减乘除相关指令以及模块的调用等汇编语言知识的有效运用。
单片机实践简易计算器实验报告

零基础DIY单片机简易计算器实践
单片机是一种很有趣的微处理器,它广泛应用于电子产品中。
学习单片机可以帮助我们更深入理解计算机原理和底层运作。
本实验将介绍如何使用单片机来制作一个简易计算器。
所需材料:
1. 单片机开发板
2. 4位7段显示器
3. 数字按键开关
4. 杜邦线
5. 电位器
6. 板子外壳
步骤1:连接电路
将数码管和数字按键开关与单片机开发板连接。
使用杜邦线将每个组件的引脚连接到开发板的相应引脚。
电位器可用于调节数码管显示的亮度。
步骤2:编写程序
使用C语言编写程序。
程序需要识别按键输入的数字和运算符,
并根据不同的情况显示计算结果。
程序中需要使用条件语句、循环语
句和函数等基本语言结构。
步骤3:测试程序
将编写好的程序上传到单片机开发板中。
测试程序的过程中要注
意按键输入的顺序和正确性。
如果按键输入错误,程序需要能够正确
地识别并给出错误提示。
步骤4:完成外壳
将单片机开发板和数码管装进铝盒中,并将数字按键开关与外壳
相连。
在外壳上打开一个窗口,以便能看到数码管和按键。
为了美观,可以涂上一些喜欢的颜色或加上小贴纸等装饰。
通过这个实验,我们深入了解了单片机的基本原理和运作方式,
掌握了C语言编程语言基础知识,并制作了一个实用的计算器。
在实
践中,我们不仅锻炼了问题解决能力和动手能力,还增强了对电子产
品的兴趣和信心。
微机课设简易计算器

微机课程设计报告题目简易计算器仿真学院(部)信息学院专业通信工程班级2011240401学生姓名张静学号3312 月14 日至12 月27 日共2 周指导教师(签字)吴向东宋蓓蓓单片机十进制加法计算器设计摘要本设计是基于51系列的单片机进行的十进制计算器系统设计,可以完成计算器的键盘输入,进行加、减、乘、除3位无符号数字的简单四则运算,并在LED上相应的显示结果。
软件方面从分析计算器功能、流程图设计,再到程序的编写进行系统设计。
编程语言方面从程序总体设计以及高效性和功能性对C语言和汇编语言进行比较分析,针对计算器四则运算算法特别是乘法和除法运算的实现,最终选用全球编译效率最高的KEIL公司的μVision3软件,采用汇编语言进行编程,并用proteus仿真。
引言十进制加法计算器的原理与设计是单片机课程设计课题中的一个。
在完成理论学习和必要的实验后,我们掌握了单片机的基本原理以及编程和各种基本功能的应用,但对单片机的硬件实际应用设计和单片机完整的用户程序设计还不清楚,实际动手能力不够,因此对该课程进行一次课程设计是有必要的。
单片机课程设计既要让学生巩固课本学到的理论,还要让学生学习单片机硬件电路设计和用户程序设计,使所学的知识更深一层的理解,十进制加法计算器原理与硬软件的课程设计主要是通过学生独立设计方案并自己动手用计算机电路设计软件,编写和调试,最后仿真用户程序,来加深对单片机的认识,充分发挥学生的个人创新能力,并提高学生对单片机的兴趣,同时学习查阅资料、参考资料的方法。
关键词:单片机、计算器、AT89C52芯片、汇编语言、数码管、加减乘除目录摘要 (01)引言 (01)一、设计任务和要求.............................1、1 设计要求1、2 性能指标1、3 设计方案的确定二、单片机简要原理.............................2、1 AT89C51的介绍2、2 单片机最小系统2、3 七段共阳极数码管三、软件设计...................................4、1 系统设计四、调试与仿真.................................5、1 Keil C51单片机软件开发系统5、2proteus的操作五、心得体会....................................参考文献......................................... 附录1 系统硬件电路图............................ 附录2 程序清单..................................一、设计任务和要求1.1 设计要求本次课程设计,我选择的课题是单片机十进制加法计算器软硬件设计,设计任务为:设计一键盘显示装置,键盘上除需定义10个十进制数字键外还要相应的功能键,其它键不定义无响应。
微型计算机原理与接口技术简易计算器系统设计

、学号××××××××《微型计算机原理与接口技术》课程设计(2008级本科)《题目:简易计算器系统设计系(部)院:××××××××××专业:电气工程及其自动化,作者姓名:×××××××指导教师:××职称:××完成日期:××年×月×日@课程设计任务书(目录一、设计目的 (1)二、设计任务与要求 (1)三、总体方案论证 (1)方案1 (1)8255A与键盘接口 (2)8255A与LED数码管接口 (5)方案2 (8)/使用设备 (6)参数定义 (6)使用方法 (6)四、硬件设计 (6)五、软件设计 (6)程序设计思路 (6)程序中的关键技术 (7)六、流程图设计 (7)&七、程序调试运行 (8)程序编写 (9)上机编译与调试 (9)运行结果 (10)八、总结 (11)参考文献 (12)微机原理与接口技术课程设计成绩评定表 (15)一、设计目的1、进一步加深对微机系统的理解和认识,提高微机系统的应用水平。
2、进一步学习和掌握汇编语言程序的编写和应用的方法,通过较大规模程序的编写,提高编写汇编语言程序的水平和学习程序调试方法。
3、初步加强自己的科学研究方法训练和实践锻练,增强分析问题和解决问题的能力,了解微机原理和接口技术的新发展。
二、设计任务与要求1、可以进行十进制数四则运算。
用按键输入数据;具有清零和复位功能;具有连续运算功能。
2、在设计中可以引用所需的参考资料,避免重复工作,加快设计进程,但必须和题目的要求相符合,保证设计的正确。
学会掌握和使用各种已有的技术资料,不要盲目地、机械地抄袭资料,必须具体分析,使设计质量和设计能力都获得提高。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
【实验题目】
简易计算器设计
【实验目的】
综合测试学生微机接口技术及应用能力,包括系统构思设计、电路设计搭建、软件调试等;
结合应用实际,培养学生运用微机技术服务应用、服务实际的能力。
【基本要求】
1)利用实验箱上的4x4键盘及6位数码管,实现两个16位宽的非负整数(0~65535)进行+、-、×运算,计算结果限制在范围-65535~65535,超过范围在数码管最低位显示E;
2)16个按键的分配可以自行指定;
【扩展要求】
1)按基本要求保持输入的范围不变(16位宽),扩展计算结果的范围到用足6位数码管,当计算结果超过-65535~999999时,显示E;
2)增加÷的功能,有小数显示;
【实验程序】
;该程序实现了基本要求及扩展要求的2)
DSEG SEGMENT
BUFF DB 6 DUP(?)
LED_7 DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,77H,7C H,39H,5EH,79H,71H,00H,40H
POSITION DB 0DFH,0EFH,0F7H,0FBH,0FDH,0FEH UNIT10 DW 10000,1000,100,10,1
NEWNUM DB 0
COUNT DB 0
FLAG DB 0 ;是否有键按下的标志
NEGTI DB 0 ;是否为负数的标志
NUM DW 0
NUM1 DW 0
NUM2 DW 0
TAG DB 0 ;运算种类标志
POINT DB 0 ;除法结果添加小数点标志
RESULT DW 0
DSEG ENDS
CSEG SEGMENT
ASSUME DS:DSEG,CS:CSEG
START:
MOV AX,DSEG
MOV DS,AX
MOV DX,300CH ;8255初始化
MOV AL,81H
OUT DX,AL
LEA SI,BUFF MOV CX,6
NEXT:
MOV BYTE PTR[SI],16
INC SI
LOOP NEXT
CALL SHOW ;将显示缓冲区中内容在LED上一次显示出来
MOV COUNT,0 ;记按下了几位数
NEXT2:
CALL SHOW
CALL SCAN ;判断是否有按键按下
CMP FLAG,1
JZ OK
JMP NEXT2
OK:
MOV FLAG,0
MOV POINT,0
MOV DX,3000H ;判断是哪一个键被按下
MOV AL,0FFH
OUT DX,AL
MOV CH,-1 ;CH用于保存当前被扫描的列号MOV CL,07FH
XL:
ROL CL,1
INC CH
MOV DX,3000H
MOV AL,CL
.
.
.
.
.
.
.。