单片机课程设计 单片机电子时钟设计文档格式.docx
《单片机课程设计 单片机电子时钟设计文档格式.docx》由会员分享,可在线阅读,更多相关《单片机课程设计 单片机电子时钟设计文档格式.docx(25页珍藏版)》请在冰豆网上搜索。
理工类高等学校教育的一个重要目标是将学生培养成工程技术人才!
课程设计正是为实现该目标而开设的!
通过课程设计,增强学生的科学素养、研发能力和创新意识,培养学生综合运用课程所学知识分析、解决课程相关实际问题的能力,巩固学生对课程知识的理解,积累产品开发(专案策划、软硬件设计、调试、专案跟踪)经验,提高学生文献检索、处理及科技论文撰写能力。
二、已知技术参数和条件
电子时钟解决方案:
单片机(含控制程序)+接口电路+执行机构+人机交互;
微控制器:
专用单片机(电脑程控器);
人机交互:
按键(独立式键盘),显示(LED或LCD);
实验平台:
proteus仿真软件;
三、任务和要求
任务:
利用其定时器和6位数码管,设计一个电子时钟。
具体功能:
1.开机时,显示00:
00:
00的时间开始计时。
2.有秒,分,时的调节功能。
3.具有复位功能。
按键对时间进行调节;
个人负责方面:
计时功能和数码管显示及复位功能
注:
1.此表由指导教师填写,经系、教研室审批,指导教师、学生签字后生效;
2.此表1式3份,学生、指导教师、教研室各1份。
四、参考资料和现有基础条件(包括实验室、主要仪器设备等)
信息检索系统:
工程索引EI、科学引文索引SCI、科技会议录索引ISTP、科学评论索引ISR、万方数据资源系统、维普资讯、中国知网
参考教材:
[1]付家才.单片机控制工程实践技术.北京:
化学工业出版社,2004
[2]刘湘涛,江世明.单片机原理与应用[M].北京:
电子工业出版社,2006
[3]张一斌,余建坤.单片机原理课程序设计.中南大学出版社,2009
[4]张迎新.单片机初级教程——单片机基础[M].北京航空航天出版社,2006.
软、硬件设计平台:
Wave、Keil、Proteus、电子综合实训系统
五、进度安排
阶段
起止时间
工作任务
备注
文献参阅
2011.6.13
认真参阅课题相关文献、明确设计任务;
系统规划
2011.6.14
构思设计思路、确定设计方案、拟定论文框架;
硬件设计
2011.6.15至6.16
单元电路、整机电路设计及仿真;
部分论证
软件设计
2011.6.17
至
6.19
软硬件接口分析、整机程序编写;
假期完成
系统测试
2011.6.20
6.21
软硬件联调(功能测试、软硬件调试及优化);
论文撰写
2011.6.22
6.23
依据设计笔记整理完成论文;
课设结题
2011.6.24
资料归档
表中进度仅供参考!
具体设计进度可依据个人实际情况调整。
六、教研室审批意见
教研室主任(签字):
年月日
七、主管教学主任意见
主管主任(签字):
八、备注
指导教师(签字):
学生(签字):
目录
1系统概述7
1.1课程设计目的7
1.2课程设计要求7
1.3硬件系统框图8
1.4软件系统框图8
2系统硬件设计9
2.1晶振复位电路9
2.2开关控制电路9
2.3显示电路10
2.4硬件电路总图11
3软件系统设计12
3.1程序概述12
3.2程序流程图12
3.3源程序15
4系统仿真与调试20
4.1仿真软件proteus简介20
4.2仿真结果20
5总结与致谢23
参考文献:
24
摘要
单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。
它由CPU、存储器(包括RAM和ROM)、I/O接口、定时/计数器、中断控制功能等均集成在一块芯片上,片内各功能通过内部总线相互连接起来。
它具有优异的性能价格比、集成度高、体积小、可靠性高、控制功能强、低电压、低功耗等诸多优点。
单片机内部也用和电脑功能类似的模块,比如CPU,内存,并行总线,还有和硬盘作用相同的存储器件,不同的是它的这些部件性能都相对我们的家用电脑弱很多,不过价钱也便宜得多,一般不超过10元,用它来做一些控制电器一类相对简单的应用,其功能足矣。
日常生活中的全自动滚筒洗衣机、冰箱、电磁炉排烟罩、VCD等家电都可以看到它的身影。
它主要是作为控制部分的核心部件。
我们这学期开设了这门课,由于课时较少,讲授的只能是基础的理论知识,要想进一步提高单片机技术,我们除了必须了解单片机的硬件结构,掌握基本的汇编语言的编程方法,还要能熟练使用一些的编程软件及仿真软件。
另外,基本的电路知识和电路连接方法也是不可或缺的一部分。
总之单片机的应用必须具备全面的基础知识和扎实的理论基础。
关键词:
8051单片机、7SEG8位数码管、调时按键、数字
1系统概述
1.1课程设计目的
单片计算机即单片微型计算机。
(Single-ChipMicrocomputer),是集CPU,RAM,ROM,定时,计数和多种接口于一体的微控制器。
他体积小,成本低,功能强,广泛应用于智能产品和工业自动化上。
而51单片机是各单片机中最为典型和最有代表性的一种。
这次课程设计通过对它的学习,应用,从而达到学习、设计、开发软、硬的能力。
通过查阅资料、硬件设计、程序设计、安装调试、撰写论文等环节,初步掌握工程设计方法和组织实践的基本技能;
熟悉科学实践的程序和办法,为今后从事生产技术工作打下必要的基础;
学会灵活运用已经学过的知识,并能不断接受新的知识,大胆发明创造的设计理念。
1.2课程设计要求
该课程设计是利用MCS-51单片机内部的定时/计数器、中断系统、以及行列键盘和LED显示器等部件,设计一个单片机电子时钟。
设计的电子时钟通过数码管显示,并能通过按键实现设置时间和暂停、启动控制等。
用定时/计数器T0,工作于定时,采用方式1,对12MHZ的系统时钟进行定时计数,初值设为XXYY(自己计算)。
形成定时时间为50ms。
用片内RAM的7BH单元对50ms计数,计20次产生秒计数器78H单元加1,秒计数器加到60则分计数器79H单元加1,分计数器加到60则时计数器7AH单元加1,时计数器加到24则时计数器清0。
然后把秒、分、时计数器分成十位和个位放到8个数码管的显示缓冲区,通过数码管显示出来。
显示格式为小时十位、小时个位---分十位、分个位---秒十位、秒个位。
在处理过程中加上了按键判断程序,能对按键处理
1.3硬件系统框图
图1.1硬件系统框图
1.4软件系统框图
图1.2软件系统框
2系统硬件设计
2.1晶振复位电路
复位是单片机的初始化操作,单片机启动运行时,都必须复位。
他的作用是使CPU和系统中其他的部件都处于一个确定的初始状态,并从这个状态开始工作。
一般,80C51系列单片机本身是不能自动复位的,必须配合相应的外部电路才能实现。
图2.1晶振及复位电路
2.2开关控制电路
开关K1、K2、K3分别接在单片机的P1.0、P1.1、P1.2三个I/0口上,分别具有选定时分秒,加一,减一的功能。
程序中的去抖动要求按键按下时间必须大于10MS才进行加一操作。
图2.2开关控制电路
2.3显示电路
显示电路由一块8位共阳数码管组成,将各数码管的各段(A,B,C,D,E,F,G及DP)依次连接到单片机的P0.0------P0.7端口上,其公共端则依次连接到P2.0------P2.7,程序汇总采用扫描方法轮流依次点亮各位LED,使每位分时显示该位显示的字符。
图2.3管脚连接图和引脚图
图2.4显示电路部分
2.4硬件电路总图
将各个部分组装连接起来,认真检查并烧入程序,调试直至结果正确。
总电路图如下:
图2.5仿真电路总图
3软件系统设计
3.1程序概述
本计算器程序通过LED动态扫描的方法,给数码管送数据,并通过定时器T0和循环程序实现一秒的精确计时,同时通过外部中断来控制时分秒的增减操作。
程序中包含有显示、中断、加一、减一、延时等子程序,通过各个子程序和主程序之间的调用和跳转,最终完成该简易数字时钟。
3.2程序流程图
1.T0中断服务程序
进入中断后,判定进入中断次数是否等于20,当等于20次时,表明已达到延时1秒,此时将显示的时间秒位上加1,同时判定秒位上是否到达60,如果到达60,则分位上加1,再判定分位上是否到达60,如果到达60,则时位上加1定时器仍赋初值,继续进行延时。
图3.1中断程序流程图
2.主程序流程图
初始化时,选用定时器0,设置初值,打开中断总开关,打开定时器0和中断允许开关,启动定时器0,再进行时间初值显示,并判断按键。
图3.2程序总流程图
3.3源程序
ORG0000H
LJMPSTART
ORG000BH;
定时器0中断入口
LJMPINTT0;
中服程序
START:
;
主程序初始化
MOVR0,#70H
MOVR7,#0CH;
开辟长度为13,始地址为70H的一段地址
INIT:
MOV@R0,#00H
INCR0
DJNZR7,INIT;
将此段地址的内容清0
MOV72H,#10
MOV75H,#10;
给72H,75H赋定值A,用于显示“—”
MOVTMOD,#01H;
启动定时器0
MOVTL0,#0B0H
MOVTH0,#03CH;
定时器0赋初值,计时时间为50MS
SETBEA;
打开中断总开关
SETBET0;
允时定时器0中断
SETBTR0;
START1:
功能程序
LCALLSCAN;
时间显示
LCALLKEYSCAN;
判断按键,对时间进行调节
SJMPSTART1;
循环判断
DL1MS:
1MS延时程序
MOVR6,#14H
DL1:
MOVR7,#19H
DL2:
DJNZR7,DL2
DJNZR6,DL1
RET
DL20MS:
20MS延时程序
ACALLSCAN
ACALLSCAN;
不使显示中断,延时程序中继续进行显示
SCAN:
时间显示程序
MOVA,78H;
秒时间寄存地址
MOVB,#0AH
DIVAB;
除以10,使寻址地址在指定范围内
MOV71H,A
MOV70H,B
MOVA,79H
DIVAB
MOV74H,A
MOV73H,B
MOVA,7AH
MOVB,#0AH
MOV77H,A
MOV76H,B;
使除72H,75H,从70H到77H的一段地址的值为分别为00A00A00
MOVR1,#70H;
从7