多功能电子表设计.docx

上传人:b****5 文档编号:11835231 上传时间:2023-04-05 格式:DOCX 页数:18 大小:285.54KB
下载 相关 举报
多功能电子表设计.docx_第1页
第1页 / 共18页
多功能电子表设计.docx_第2页
第2页 / 共18页
多功能电子表设计.docx_第3页
第3页 / 共18页
多功能电子表设计.docx_第4页
第4页 / 共18页
多功能电子表设计.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

多功能电子表设计.docx

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

多功能电子表设计.docx

多功能电子表设计

等级:

 

课程设计

课程名称单片机原理与应用

课题名称电子表

专业电气工程及其自动化

班级

学号

姓名

指导教师

2014年月日

设计内容与设计要求

 

设计内容:

本课题要求以单片机为核心设计一个多功能电子表,具有电子时钟、时钟设置和跑表功能。

做时钟时在6位LED显示器上显示时、分、秒,做跑表时显示范围000.0秒~999.9秒,并具有时钟启动、时钟停止、跑表启动、跑表复位、时钟调整功能键。

要求焊接好开发板,在开发板上进行调试。

设计要求:

1)确定系统设计方案;

2)进行系统的硬件设计;

3)完成必要元器件选择;

4)开发板焊接及测试

5)系统软件设计及调试;

6)系统联调及操作说明

7)写说明书

 

主要设计条件

1、MCS-51单片机实验箱1台;

2、PC机及单片机调试软件,仿真软件proteus;

3、开发板1块;

4、制作工具1套;

5、系统设计所需的元器件。

说明书格式

封面

课程设计任务书

目录

第1章、概述

第2章、系统总体方案设计

第3章硬件设计

第4章开发板焊接及其测试

第5章软件设计与说明(包括流程图)

第6章调试步骤、结果、使用说明

第7章设计总结

第8章参考文献

附录:

系统电路原理图(用PROTEL99制作)、系统程序清单。

电气与信息工程系课程设计评分表

进度安排

设计时间分为二周

第一周

星期一、上午:

布置课题任务,课题介绍及讲课。

下午:

借阅有关资料,总体方案讨论。

星期二、分班级焊接开发板

星期三、确定总体方案,学习与设计相关内容。

星期四、各部分方案设计,各部分设计。

星期五、设计及上机调试。

星期六、设计并调试

第二周

星期一:

设计及上机调试。

星期二:

调试,中期检查。

星期三:

调试、写说明书。

星期四--星期五上午:

写说明书、完成电子版并打印成稿。

星期五下午:

答辩。

参考文献

1、王迎旭编.《单片机原理与应用》[M].机械工业出版社.

2、楼然苗编.《51系列单片机设计实例》[M].北京航空航天大学出版社.

3、黄勤编.《计算机硬件技术基础实验教程》[M].重庆大学出版社

4、刘乐善编.《微型计算机接口技术及应用》[M].华中科技大学出版社.

5、陈光东编.《单片微型计算机原理及接口技术》[M].华中科技大学出版社.

6、周向红编《51系列单片机应用与实践教程》[M].北航出版社

 

目录

第一章绪论1

第二章系统总体方案设计2

2.1课程设计内容要求2

2.2设计思路分析2

第三章硬件设计3

3.1系统框图3

3.2单片机型号的选择3

3.3显示器选择4

3.4时钟电路4

3.5显示电路5

3.6总体电路原理图5

第四章开发板焊接及测试6

第五章软件设计与说明7

5.1软件总体框图7

5.2主程序设计7

5.3子程序设计8

5.4跑秒程序设计框图8

第六章调试和使用说明9

使用说明9

第七章总结与体会11

参考文献12

附录12

电路图12

系统程序清单13

第一章绪论

单片机是一种集成在电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能。

它体积小,成本低,功能强,广泛应用于智能产业和工业自动化上。

而51系列单片机是各单片机中最为典型和最有代表性的一种。

通过本次课程设计对51单片机的学习以及应用,已经对单片机有了初步的了解和简单的应用能力。

数字电子表是采用数字电路实现对时,分,秒,数字显示的计时装置,由于数字集成电路的发展和石英晶体振荡器的广泛应用,使得数字表的精度,远远超过老式的钟表,钟表的数字化给人们生产带来了极大的方便,而且大大的拓展了钟表的报时功能。

数字表已经成为人们日常生活中的必须品,广泛应用于家庭,车站,码头,剧院,办公场所等,给我们的生活和学习,工作带来了极大的方便。

本课程设计设计了一个基于AT89C51单片机的电子表。

并且通过一个控制按键来实现时间的调节和是否进入省电模式,并且在数码管上显示相应的时间。

应用Proteus的ISIS软件实现了单片机电子表系统的设计与仿真。

此方法仿真效果真实、准确,并且节省了硬件资源。

 

第二章系统总体方案设计

2.1课程设计内容要求

本课题要求以单片机为核心设计一个多功能电子表,具有电子时钟、时钟设置和跑表功能。

做时钟时在6位LED显示器上显示时、分、秒,做跑表时显示范围000.0秒~999.9秒,并具有时钟启动、时钟停止、跑表启动、跑表复位、时钟调整功能键。

要求焊接好开发板,在开发板上进行调试。

2.2设计思路分析

电子表的电路由多个部分组成,如控制按键的输入电路,单片机的时钟电路,复位电路,LED显示器段码驱动电路,LED显示器位码驱动电路,显示器电路和跑表时钟电路组成。

然后通过对以上电路的产生和调整设计出总的电路框图。

所以可根据上述条件作出相应的实时时钟电路总的框图。

然后开始设计内部驱动程序,按照相应的程序实现特定的功能个,之后按照程序的设计,将相应的管脚连接调试,看是否能实现预定的功能。

利用MCS-51内部的定时/计数器进行中断定时,配合软件延时实现时、分、秒的计时。

配合软件监控实现运行,停止,调时,调分,调秒。

该方案节省硬件成本,软件设计做够灵活,且能够使人在定时/计数器的使用、中断及程序设计方面得到锻炼与提高,能够准确走时并实现多功能。

因此,本课题采用该方案。

 

第三章硬件设计

3.1系统框图

图3.1

3.2单片机型号的选择

通过对多种单片机性能的分析,最终认为89C51是最理想的电子表开发芯片。

89C51是一种带4K字节闪烁可编程可擦除只读存储器的低电压,高性能CMOS8位微处理器,器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。

由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的89C51是一种高效微控制器,而且它与MCS-51兼容,且具有4K字节可编程闪烁存储器和1000写/擦循环,数据保留时间为10年等特点,是最好的选择。

 

图3.2

3.3显示器选择

LED显示器的选择,在应用系统中,设计要求不同,使用的LED显示器的位数也不同,因此生产厂家就生产了多种位数、尺寸、型号不同的LED显示器。

在我们的设计中,选择6位一体的时钟型LED显示器。

6位7段共阳显示器:

六位是同时显示六位阿拉伯数字,而每一个数字又是七段码显示的;七段是指一个数码显示的阿拉伯数字是由七位二进制数控制的,共阳是指相应的二进制为1时不亮,为0时亮。

在实验中显示器的作用是显.示时间。

3.4时钟电路

 

图3.4

3.5显示电路

图3.5

3.6总体电路原理图

图3.4

 

第五章软件设计与说明

5.1软件总体框图

图5.1

5.2主程序设计

主程序的初始化内容:

所谓初始化,是对将要用到的51系列单片机内部部件或扩展芯片进行初始工作设定。

51系列单片机复位后,设置特殊功能寄存器。

5.3子程序设计

子程序包括了:

时钟暂停显示程序,时钟运行显示程序,时钟溢出入口程序,跑秒暂停及循环显示程序,跑秒运行循环显示程序等等。

代码转换程序:

由于人们日常习惯使用十进制数,而计算机的键盘输入,输出以及显示都采用二进制编码的十进制数或ASCII码。

因此,在程序设计时常常要代码转换。

LED动态显示程序:

采用动态扫描方式时,要使得LED显示得比较均匀和有足够的亮度,需要设置适当的扫描频率。

扫描频率在70Hz左右时,能够产生足够的图形和较好的显示效果。

5.4跑秒程序设计框图

图5.4

第六章调试和使用说明

本系统可以先在电脑上使用Proteus仿真软件进行电路的仿真进行仿真,编程使用keil、调试工具并生成可执行文件加载到单片机中,在Proteus中点击运行,查看运行结果是否与预期要求相符,如果仿真成功,便可以到实验板上进行实物实验。

使用说明

按钮开关图如下

图6.1

仿真按下开始后时钟开始计时

时间设定点击PAUSE/START后进入设定模式,点击SEC/MINRESETTIMER进行设置,点击一下增加一。

完成以后点击PAUSE/START,即可保存并进行下一项设置,依次下去便可以设置秒、分和时。

设置秒设置分设置时设置时间后,程序继续将在设置时间的基础上继续运行跑秒功能

 

第七章总结与体会

在这一次课程设计当中,我进行了多方面的学习和实践,虽然当中遇到了许多的困难,但最终还是把它们一一地克服了。

学习就是这样的,要做好每一件事,都有很多的因素影响制约着我们,我们必须快速准确的适应这样的环境,通过改变自己来更快的融入社会。

有了这份经历,我觉得自己少了一分浮躁,多了一份沉稳。

我深深地感到要有科学的思维方法和学习方法是极其重要的。

刚刚拿到课程设计的题目时真不知道从哪里开始动手,课题名称里的芯片根本就没听说过。

通过上网查找资料,弄清楚了它的功能,才真正开始了设计。

但这个东西包括了几个部分,所以一定要把握好它的整体设计思路,在其框架之下,对各部分的单元电路进行分析和设计,最后经过电路的修改,参数的确定,将各个部分连接起来,形成总的电路图。

书到用时方恨少,在这次课程设计过程中遇到了很多大大小小的难题,这时才发现在知识的海洋里自己是多么的渺小,但这也激起了我学习的热情,我进行了多方面的学习和实践,最终还是把它们都克服了。

在这次课程设计过程中我还学会了与同学交流和沟通,这样才能把自己在设计过程中学到的知识进行交流,在交流中进一步巩固自己的知识。

这次课程设计只有两个星期的时间,时间比较紧张,提高工作、学习效率是唯一的办法。

有了这份经历,更让我觉得知识海洋的广博,驱使怀着好奇之心的我进一步努力学习告诉我为了填满好奇心,无时无刻不需要学习。

每一次新的认识,总是疑问重重,不断的分析解决问题、解决问题,等到最后回想起来都是如此的简单。

能学习能提高不容易,更重要的是我学会了如何解决问题,这次课程设计让我增加了自信心,懂得的越来越多,又感觉在以后的路上明白了很多知识。

同时也感谢老师的指导和共同探讨研究问题的同学们,希望在以后的学习和工作中能够进一步提高对单片机的认识和应用能力。

 

参考文献

1、王迎旭编.《单片机原理与应用》[M].机械工业出版社.

2、楼然苗编.《51系列单片机设计实例》[M].北京航空航天大学出版社.

3、黄勤编.《计算机硬件技术基础实验教程》[M].重庆大学出版社

4、刘乐善编.《微型计算机接口技术及应用》[M].华中科技大学出版社.

5、陈光东编.《单片微型计算机原理及接口技术》[M].华中科技大学出版社.

6、周向红编《51系列单片机应用与实践教程》[M].北航出版社

 

附录

电路图

系统程序

ORG0000H

LJMPSTART

ORG000BH

LJMPINIT0

START:

MOVR0,#70H;主程序开始

MOVR7,#0CH

INIT:

MOV@R0,#00H

INCR0

DJNZR7,INIT

MOV72H,#10;对连字符进行装值

MOV75H,#10

MOVTMOD,#01H;选择定时器/计数器T0的方式1

MOVTL0,#0B0H;对低位赋初值

MOVTH0,#03CH;高位赋初值

SETBEA

SETBET0

SETBTR0

START1:

LCALLSCAN

LCALLKEYSCAN

SJMPSTART1

DL1MS:

MOVR6,#14H;延时1子程序

DL1:

MOVR7,#19H

DL2:

DJNZR7,DL2

DJNZR6,DL1

RET

DL20MS:

ACALLSCAN;延时20ms子程序

ACALLSCAN

ACALLSCAN

RET;数码管显示程序开始

SCAN:

MOVA,78H

MOVB,#0AH

DIVAB;时间秒的十位送给A,时间秒的个位送B

MOV71H,A;时间秒要显示的十位

MOV70H,B;时间秒要显示的个位

MOVA,79H

MOVB,#0AH

DIVAB;时间分的十位送给A,时间分的个位送B

MOV74H,A;时间分要显示的十位送地址

MOV73H,B;时间分要显示的个位送地址

MOVA,7AH

MOVB,#0AH

DIVAB;时间时的十位送给A,时间时的个位送B

MOV77H,A;时间时显示的十位送地址

MOV76H,B;时间时要显示的个位送地址

MOVR1,#70H

MOVR5,#0FEH

MOVR3,#08H

SCAN1:

MOVA,R5;数码管的显示程序

MOVP2,A

MOVA,@R1

MOVDPTR,#TAB

MOVCA,@A+DPTR;对字段表取值显示

MOVP0,A

MOVA,R5

LCALLDL1MS

INCR1

MOVA,R5

RLA

MOVR5,A

DJNZR3,SCAN1

MOVP2,#0FFH

MOVP0,#0FFH

RET;"0~9"和"-"的字段表

TAB:

DB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H,0BFH

;定时/计数器T0中断程序

INIT0:

PUSHACC

PUSHPSW

CLRET0

CLRTR0

MOVTL0,#0B0H

MOVTH0,#03CH

SETBTR0

INC7BH

MOVA,7BH

CJNEA,#14H,OUTT0;50ms是否到20次,没有到就继续执行50ms的延时

MOV7BH,#00

INC78H

MOVA,78H

CJNEA,#3CH,OUTT0;一秒的延时是否计到60次,没有就继续执行

MOV78H,#00

INC79H

MOVA,79H

CJNEA,#3CH,OUTT0

MOV79H,#00

INC7AH

MOVA,7AH

CJNEA,#18H,OUTT0;60分钟的延时是否计到24次,没有就继续执行程序

MOV7AH,#00

OUTT0:

SETBET0;启动定时器T0

POPPSW

POPACC

RETI

;按键处理程序

KEYSCAN:

CLREA

JNBP1.0,KEYSCAN0;P1.0有按键按下则跳转到子程序

JNBP1.1,KEYSCAN1;P1.1有按键按下则跳转到子程序

JNBP1.2,KEYSCAN2;P1.2有按键按下则跳转到子程序

KEYOUT:

SETBEA

RET

KEYSCAN0:

LCALLDL20MS;20ms的延时消抖

JBP1.0,KEYOUT

WAIT0:

JNBP1.0,WAIT0;判断按键是否松手,松手就往下执行程序

INC7CH

MOVA,7CH

CLRET0

CLRTR0

CJNEA,#03H,KEYOUT;按下第一次和第二次对时、分选定

MOV7CH,#00;按下第三次时就启动计时

SETBET0

SETBTR0

SJMPKEYOUT

KEYSCAN1:

LCALLDL20MS;按键加一的程序

JBP1.1,KEYOUT

WAIT1:

JNBP1.1,WAIT1

MOVA,7CH

CJNEA,#02H,KSCAN11;如果功能键按下则对时加一调整

INC79H

CJNEA,#3CH,KEYOUT;如果加到60则清零

MOV79H,#00

SJMPKEYOUT

KSCAN11:

INC7AH;如果功能键是按下第二次则对分进行加一调整

MOVA,7AH

CJNEA,#18H,KEYOUT

MOV7AH,#00

SJMPKEYOUT

KEYSCAN2:

LCALLDL20MS;延时消抖程序

JBP1.2,KEYOUT

WAIT2:

JNBP1.2,WAIT2;判断是否放开按键

MOVA,7CH

CJNEA,#02H,KSCAN21;如果功能键是按下第一次对时进行减一

DEC79H

MOVA,79H

CJNEA,#0FFH,KEYOUT

MOV79H,#3BH

SJMPKEYOUT

KSCAN21:

DEC7AH;如果功能键是按下第二次则对分进行减一

CJNEA,#0FFH,KEYOUT

MOV7AH,#17H

SJMPKEYOUTEND

课程设计评分表

项目

评价

及格

设计方案合理性与创造性(10%)

开发板焊接及其调试完成情况*(10%)

硬件设计或软件编程完成情况(20%)

硬件测试或软件调试结果*(10%)

设计说明书质量(20%)

答辩情况(10%)

完成任务情况(10%)

独立工作能力(10%)

出勤情况(10%)

综合评分

指导教师签名:

________________

日期:

________________

注:

表中标*号项目是硬件制作或软件编程类课题必填内容;

此表装订在课程设计说明书的最后一页。

课程设计说明书装订顺序:

封面、任务书、目录、正文、评分表、附件(非16K大小的图纸及程序清单)。

 

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

当前位置:首页 > 求职职场 > 简历

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

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