单片机电子秒表程序设计.doc
《单片机电子秒表程序设计.doc》由会员分享,可在线阅读,更多相关《单片机电子秒表程序设计.doc(27页珍藏版)》请在沃文网上搜索。
1、电子秒表程序设计1.设计主要内容及要求:要求:1)具有秒表基本功能。 2)显示最小数为0.1秒。 3)能够进行多路计数并分别显示。2.对设计论文撰写内容、格式、字数的要求:(1).课程设计论文是体现和总结课程设计成果的载体,一般不应少于3000字。(2).学生应撰写的内容为:中文摘要和关键词、目录、正文、参考文献等。课程设计论文的结构及各部分内容要求可参照沈阳工程学院毕业设计(论文)撰写规范执行。应做到文理通顺,内容正确完整,书写工整,装订整齐。(3).论文要求打印,打印时按沈阳工程学院毕业设计(论文)撰写规范的要求进行打印。(4). 课程设计论文装订顺序为:封面、任务书、成绩评审意见表、中文
2、摘要和关键词、目录、正文、参考文献。3.时间进度安排;顺序阶段日期计 划 完 成 内 容备注11月2日教师讲解题目,学生查阅相关资料21月3日查阅相关资料、进行方案论证31月4日确定多路计数和显示方法41月5、6、9日编写程序51月10、11日调试程序61月12日撰写论文71月13日论文答辩沈 阳 工 程 学 院 单片机 课程设计成绩评定表系(部): 自控系 班级: 测控本091班 学生姓名: 吕平 指 导 教 师 评 审 意 见评价内容具 体 要 求权重评 分加权分调研论证能独立查阅文献,收集资料;能制定课程设计方案和日程安排。0.15432工作能力态度工作态度认真,遵守纪律,出勤情况是否良
3、好,能够独立完成设计工作, 0.25432工作量按期圆满完成规定的设计任务,工作量饱满,难度适宜。0.25432说明书的质量说明书立论正确,论述充分,结论严谨合理,文字通顺,技术用语准确,符号统一,编号齐全,图表完备,书写工整规范。0.55432指导教师评审成绩(加权分合计乘以12) 分加权分合计指 导 教 师 签 名: 年 月 日评 阅 教 师 评 审 意 见评价内容具 体 要 求权重评 分加权分查阅文献查阅文献有一定广泛性;有综合归纳资料的能力0.25432工作量工作量饱满,难度适中。0.55432说明书的质量说明书立论正确,论述充分,结论严谨合理,文字通顺,技术用语准确,符号统一,编号齐
4、全,图表完备,书写工整规范。0.35432评阅教师评审成绩(加权分合计乘以8)分加权分合计评 阅 教 师 签 名: 年 月 日课 程 设 计 总 评 成 绩分摘 要单片机是一种集成在电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的计算机系统。本次课程设计的核心是C8051F020单片机。自20世纪70年代末诞生至今,经历了单片微型计算机SCM、微控制器MCU及片上系统SoC三大阶段
5、,前两个阶段分别以MCS-51和80C51为代表。随着在嵌入式领域中对单片机的性能和功能要求越来越高,以往的单片机无论是运行速度还是系统集成度等多方面都不能满足新的设计需要,这时Silicon Labs 公司推出了C8051F系列单片机,成为SoC的典型代表。传统的秒表可以分为机械停表和电子秒表。其中,电子秒表在我们日常生活中随处可见,它不仅应用在体育计时中,而且还与工业计时有着重要的联系。这次电子秒表设计通过对一个基于C8051F020单片机的功能实现电子秒表工作的设计学习,详细介绍了单片机应用中的数据转换显示,液晶显示原理,单片机的定时中断原理。从而达到学习、了解单片机相关指令在各方面的应
6、用。设计初衷是为了能够后实现电子秒表的基本功能,分组计时,多组(两组以上)存储数据,分组提取数据等。并且结合液晶显示原理,可以方便的存储与读取,以达到设计的最初目的,从而实现秒表功能。关键词 C8051F020单片机,电子秒表,LCD液晶显示, - 23 -目录课 程 设 计I单片机 课程设计成绩评定表IV摘 要V目录I1设计任务描述- 1 -1.1 设计课题- 1 -1.2 设计目的- 1 -1.3 基本要求- 1 -2设计思路- 2 -3 设计框图- 3 -4 各部分程序设计及参数计算- 4 -4.1 定时器T0设计- 4 -4.2 存储时间设计- 5 -4.3 调出时间设计- 7 -4.
7、4 转换成ASCII码程序设计- 8 -4.5 液晶显示程序设计- 9 -5 工作过程分析- 11 -6 元器件清单- 12 -7 主要元器件介绍- 13 -7.1 C8051f020单片机- 13 -7.1.1管脚图- 13 -7.1.2简介- 13 -总结- 14 -致谢- 15 -参考文献- 16 -源程序清单- 17 - 1设计任务描述1.1 设计课题 电子秒表程序设计1.2 设计目的掌握定时器工作原理,会使用定时器。利用C8051F单片机并行I/O的输入和输出使用。通过液晶显示器接口电路的设计与编程,掌握液晶显示器的原理使用方法,使用液晶显示器并把它嵌入到便携式电子产品中。灵活的运用
8、中断程序。1.3 基本要求 具有秒表的基本功能 显示最小数为0.1秒 能够进行多路计数并分别显示2设计思路 电子秒表程序,首先参照的是赛跑用的秒表。启动秒表时,开始计时,当每按一次键时,能够将数据存储起来,同时保证不影响秒表的计时。按另一个键时,能够调出之前存储的时间。此外,秒表还有清零,重新计时的功能。 所以,设计的电子秒表程序包含T0计数器,外部中断6和外部中断7,以及液晶显示三个部分。运行程序时,打开外部中断6,开始计时,再每按一次中断6时,存储数据。启动外部中断7,停止计时,每按一次中断7时,调出数据。其中,计数部分,是将分存在32H里,秒存在31H里,毫秒存在30H里。为了更精确,我
9、将秒表精确到0.01秒。还有显示部分,显示是在LED液晶显示器里显示的,而液晶显示器只识别ASCII码,所以要将32H、31H、30H里所存储的十六进制数转换成ASCII码。3 设计框图 启动程序 KEY3计时 存储时间 KYE4 调出时间将十六进制数转换成ASCII码 显示时间4 各部分程序设计及参数计算4.1 定时器T0设计选择时钟源:f=12MHz,12分频 CKC0N=00H计数方式:方式1;16位定时计数器初值计算:定时周期为10ms T=216-10000=55536=D8F0H定时器程序:T0: MOV TL0,#0F0H ;初值 MOV TH0,#0D8H INC 30H MO
10、V A,30H CJNE A,#100,LV MOV 30H,#00H INC 31H MOV A,31H CJNE A,#60,LV MOV 31H,#00H INC 32H MOV A,32H CJNE A,#60,LV MOV 30H,#00H MOV 31H,#00H MOV 32H,#00HLV: RETI4.2 存储时间设计30H,31H,32H中的数为十六进制数,液晶显示器无法直接显示其中的数值,因此必须将十六进制转化为液晶显示器是别的ASCII码。即将32H中的十六进制数放在累加器A中。把10放在寄存器B中,执行DIV AB此时A、B中都是BCD数,而LCD只能识别ASCII码
11、,所以要分别将A和B中的数加30H转化成ASCII码33H和34H中,再由33H,34H送给P7口输出。中断6程序: KEY3: CLR 00H SETB TR0 MOV R0,#43H MOV R1,#00H MOV 7FH,#00H MOV A,R6 CJNE A,#00H,LOP1 INC A MOV R6,A MOV R1,#00H LJMP LOP6LOP1: MOV A,R6 CJNE A,#01H,LOP2 INC A MOV R6,A MOV 43H,30H MOV 44H,31H MOV 45H,32H LJMP LOP6LOP2: MOV A,R6 CJNE A,#02H,
12、LOP3 INC A MOV R6,A MOV 46H,30H MOV 47H,31H MOV 48H,32H LJMP LOP6LOP3: MOV A,R6 CJNE A,#03H,LOP4 INC A MOV R6,A MOV 49H,30H MOV 4AH,31H MOV 4BH,32H LJMP LOP6LOP4: MOV A,R6 CJNE A,#04H,LOP5 INC A MOV R6,A MOV 4CH,30H MOV 4DH,31H MOV 4EH,32H LJMP LOP6LOP5: MOV A,R6 CJNE A,#05H,LOP6 MOV 4FH,30H MOV 50H
13、,31H MOV 51H,32H INC A MOV R6,A CLR TR0LOP6: MOV P3IF,#00H RETI4.3 调出时间设计程序如下:KEY4: JB 00H,LOOP1 ;位1跳转 CLR TR0 MOV 7FH,#01H DJNZ R6,LOOP2LOOP1: MOV 30H,#00H MOV 31H,#00H MOV 32H,#00H MOV R6,#00H MOV R1,#00H SETB 00H LJMP LOOP3LOOP2: INC R1 MOV A,R0 MOV 30H,A NC R0 MOV A,R0 MOV 31H,AINC R0 MOV A,R0 M
14、OV 32H,AINC R0LOOP3: MOV P3IF,#00H RETI 4.4 转换成ASCII码程序设计程序如下:ASCII: MOV A,32H;把32H(分)单元中数送到累加器A中 MOV B,#10 DIV AB ;除法,十位给A,个位给B ADD A,#30H ;将A的数转换成ASCII码 MOV 33H,A MOV A,B ADD A,#30H ;将B的数转换成ASCII码 MOV B,A MOV 34H,B MOV A,31H ;把31H(秒)中数送到累加器A中 MOV B,#10 DIV AB ADD A,#30H MOV 35H,A MOV A,B ADD A,#30
15、H MOV B,A MOV 36H,B MOV A,30H; 把30H(毫秒)中数送到累加器A中 MOV B,#10 DIV AB ADD A,#30H MOV 37H,A MOV A,B ADD A,#30H MOV 38H,A 4.5 液晶显示程序设计用LCD模块的3条信号线RSR/W和E控制LCD的读写操作,RS为寄存器选择位,RS=1,选择数据寄存器;RS=0,选择指令寄存器;E为使能信号,下降沿解发;R/W反为读/写信号,R/W反=1,读;R/W反=0,写;D0-D7是8位数据总路线;将P6.0线与E端相连,P6.1线与R/W端相连,P6.2线与RS端相连可利用I/O线P6.2,P6
16、.1和P6.0代替RS,R/W反和E实现读/写操作。程序一如下:MOV P7,#38H ;两行显示5*7点阵MOV P6,#01H ;写命令 MOV P6,#00H ;结束写命令LCALL DELAYMOV P7,#0EH ;开显示,开光标,字符不闪烁MOV P6,#01H ;写命令MOV P6,#00H ;结束写命令LCALL DELAY MOV P7,#06H;I/D=1,AC自动增一,S=0整体显示不移动MOV P6,#01H ;写命令MOV P6,#00H ;结束写命令 LCALL DELAYMOV P7,#01H ;清除DDRAM,置AC=0MOV P6,#01H ;写命令 MOV
17、P6,#00H ;结束写命令LCALL DELAYMOV 30H,#00H ;清零MOV 31H,#00HMOV 32H,#00H程序二: MOV P7,33H ;液晶显示分的十位 MOV P6,#05H MOV P6,#04H LCALL DELAY MOV P7,34H ;液晶显示分的个位 MOV P6,#05H MOV P6,#04H LCALL DELAY MOV P7,#: ;液晶显示“:” MOV P6,#05H MOV P6,#04H LCALL DELAY MOV P7,35H ;液晶显示秒的十位 MOV P6,#05H MOV P6,#04H LCALL DELAY MOV
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
20 积分
下载 | 加入VIP,下载更划算! |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 电子 秒表 程序设计