电子计算器.docx

上传人:b****4 文档编号:24471386 上传时间:2023-05-27 格式:DOCX 页数:12 大小:506.61KB
下载 相关 举报
电子计算器.docx_第1页
第1页 / 共12页
电子计算器.docx_第2页
第2页 / 共12页
电子计算器.docx_第3页
第3页 / 共12页
电子计算器.docx_第4页
第4页 / 共12页
电子计算器.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

电子计算器.docx

《电子计算器.docx》由会员分享,可在线阅读,更多相关《电子计算器.docx(12页珍藏版)》请在冰豆网上搜索。

电子计算器.docx

电子计算器

单片机课程设计报告书

 

课题名称

电子计算器设计

姓名

李雪东

学号

20086498

院、系、部

电气工程

专业

电气工程及其自动化

指导教师

焦咏梅、马丽、高艳玲

 

2010年7月1日

一、设计目的

1、了解电子计算器的工作原理。

2、进一步熟悉LED显示电路和键盘扫描电路的工作原理和编程方法。

3、掌握电路板的实物焊接。

4、了解数据计算的基本方法。

二、设计内容

1.设计4*4的键盘,其中10个数字键0~9,其余6个为“+”“-”“=”和“C”。

2.设计2位LED接口电路。

3.实现1位数的简单运算。

三、电路及连线设计

运算控制功能。

内部时钟发生器,提供震荡脉冲。

 

键盘口的输入。

系统各部件处于确定的初始状态,并从初态开始工作。

电子计算器电路图:

*所需元器件

1、开关(sw-pb)21个。

2、电容四个:

(22P两个)、(10uf一个)、(电解电容一个0.1uf)。

3、晶振一个,10K数码管一个,单片机芯片一个。

4、74HC573芯片两个,电感10K一个,电源(5V)两个。

四、使用说明

键盘:

本课题需要的是16个按键,故选择用非编码键盘,为了减少所占用的端口,由P1口采用4*4矩阵式键盘。

显示:

LED数码管显示块是由发光二极管显示字段的显示器件。

在单片机应用中通常使用七段LED。

本设计采用的是共阴极接法。

五、流程图设计

1、数码管显示子程序

图5-1数码管显示子程序

2、读键输入程序设计

为了实现键盘的数据输入功能和命令处理功能,每个键都有其处理子程序,为此每个键都对应一个码——键码。

为了得到被按键的键码,现使用行扫描法识别按键。

其程序框图如下:

图5-2读键子程序

3、主程序的设计

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

图5-3主程序流程图

六、程序设计如下

ADDDBIT00H

SUBBIT01H

CHUNSHUBIT02H

ORG0000H

AJMPSTAR

ORG0030H

STAR:

MOVR0,#40H

MOV30H,#3FH

CLRADDD

CLRSUB

CLRCHUNSHU

MAIN:

LCALLDISPLAY

MOVA,#0FFH;键盘扫描开始

LP:

MOVP3,#00001111B;扫描子程序

MOVA,P3

JNBACC.0,LP0

JNBACC.1,LP1

JNBACC.2,LP2

JNBACC.3,LP3

LCALLDELAY1

MOVR2,61H

CJNER2,#0,XLS1

XLS1:

AJMPLP

LP0:

MOVB,#0

AJMPLP15

LP1:

MOVB,#1

AJMPLP15

LP2:

MOVB,#2

AJMPLP15

LP3:

MOVB,#3

LP15:

MOVP3,#0FFH;扫描行

MOVP3,#11110000B

MOVA,P3

LCALLDELAY

JNBACC.4,LP4

JNBACC.5,LP5

JNBACC.6,LP6

JNBACC.7,LP7

AJMPLP8

LP4:

MOVR3,#0

AJMPLP8

LP5:

MOVR3,#4

AJMPLP8

LP6:

MOVR3,#8

AJMPLP8

LP7:

MOVR3,#12

LP8:

MOVA,B

ADDA,R3

LCALLDELAY

MOVR4,A

MOVA,R4

CJNEA,#0AH,N;判断功能键

AJMPN1

N:

JNCN1

MOVA,R4

JBCHUNSHU,ERSHU2

MOVR0,#40H

MOV@R0,A

AJMPYISHU

ERSHU2:

MOVR0,#50H;第二个数

MOV@R0,A

YISHU:

LCALLCHABIAO;第一个数

LCALLDISPLAY

N1:

CJNEA,#0FH,NEXT

MOV30H,#3FH

CLRADDD

CLRSUB

CLRA

MOV40H,A

MOV41H,A

MOVR0,#40H

MOVA,#3FH

MOV30H,A

SJMPNEXT4

NEXT:

CJNEA,#0EH,NEXT1;+

SETBADDD

SETBCHUNSHU

SJMPNEXT4

NEXT1:

CJNEA,#0DH,NEXT2;—

SETBSUB

SETBCHUNSHU

SJMPNEXT4

NEXT2:

CJNEA,#0CH,NEXT4;=

EQUAL:

CLRCHUNSHU

JBADDD,JIA

JBSUB,JIAN

AJMPNEXT4

JIA:

MOVR1,#40H;加法

MOVA,@R1

MOVR1,#50H

ADDA,@R1

LCALLCHABIAO

AJMPNEXT4

JIAN:

CLRC;减法

MOVR1,#40H

MOVA,@R1

MOVR1,#50H

SUBBA,@R1

MOVR4,A

LCALLCHABIAO

LCALLDISPLAY

NEXT4:

AJMPMAIN

CHABIAO:

MOVDPTR,#TAB;查表

MOVCA,@A+DPTR

MOV30H,A

RET

DISPLAY:

MOVA,30H;显示

SETBP2.0

MOVP1,A

CLRP2.0

MOVA,#11110111B

SETBP2.1

MOVP1,A

CLRP2.1

LCALLDELAY

DELAY:

MOVR7,#0FFH;延时

LP11:

DJNZR7,LP11

RET

DELAY1:

MOVR7,#9CH

LP12:

DJNZR7,LP12

RET

TAB:

DB3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,77H,7CH,39H,5EH,79H,71H

RET

END

六、程序设计如下

七、设计总结

感谢学校安排这次单片机小学期,让我们有了将理论与实践同步的机会。

这次实践过程中我与组员经过将近四天的努力,完成了小学期的单片机课程设计,包括硬件和软件,过程虽是辛苦的,但从中我却学到了很多东西。

首先巩固了课上学习的理论知识,对于计算机汇编语言的系统化整体化有了更深的认识。

在编写程序的过程中遇到了很多困难经过我们经过反复调试不断修正最终才得到现在的程序,这让我明白写程序只不过是设计的很小一部分,调试和验证才是最为重要的。

最难的部分焊接实物,实验要求八个二极管是共阳极接法,我们先用Protel99se将接线图画出,然后按照接线图进行焊接,在接下来焊接的过程中我们遇到了很多问题:

电解电容正负接反,开关使用方法不正确焊接虚焊等等,在老师的指导和自己细心检查后才焊接成功。

整个设计过程最大的收获就是意识到理论知识扎实的重要性,实践是建立在理论之上的;另外就是合作的重要性,每个人都有他的特长一个人难免有疏漏,只有大家共同努力才能顺利的完成任务。

最后感谢,焦老师,马老师和高老师,我们今天的收获是建立在你们这几天的辛苦指导上的。

虽然只有短短的几天,但我学到的却很多,这为我今后进入工作岗位奠定了坚实的基础。

参考文献:

[1]高峰.单片微型计算机原理与接口技术.科学出版社,2007

[2]l李飞.单片机原理及其应用西安电子科技大学出版社,2007

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 成人教育 > 成考

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1