单片机多功能电子钟课程设计报告.doc
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《单片机多功能电子钟课程设计报告.doc》由会员分享,可在线阅读,更多相关《单片机多功能电子钟课程设计报告.doc(27页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、单片机原理及应用课程设计报告课题: 以电子钟为主的多功能设计 班级 车辆3101 学号 3102117107 学生姓名 秦延力 指导教师 段卫平 淮阴工学院电子与电气工程学院目 录1 课程设计概述4 1.1 设计课题任务4 1.2 功能要求说明4 1.3 设计课题总体方案及工作原理42 设计课题硬件系统的设计62.1 硬件系统各模块功能简要介绍62.2 原理电路图72.3 设计PCB图,元器件布局图与与器件清单73 软件系统的设计83.1 软件系统各功能模块简要介绍83.2 设计课题软件系统程序流程框图83.3 设计课题软件系统程序清单 114 仿真与误差分析 124.1 设计课题的设计结论及
2、使用说明 124.2 设计课题的仿真结果 124.3 设计课题的误差分析 124.4 设计体会 134.5 教学建议 13参考文献 14致谢 15附录 16一、设计目的1总体要求(1) 独立完成设计任务(2) 绘制系统硬件总框图(3) 绘制系统原理电路图(4) 制定编写设计方案,编制软件框图,完成详细完整的程序清单和注释;(5) 制定编写调试方案,编写用户操作使用说明书 (6) 写出设计工作小结。对在完成以上文件过程所进行的有关步骤如设计思想、指标论证、方案确定、参数计算、元器件选择、原理分析等作出说明,并对所完成的设计作出评价,对自己整个设计工作中经验教训,总结收获和今后研修方向。2 具体要
3、求本次工程实践的校内部分主要以单片机为基础,进行单片机软件编程,目的是为了提高学生的软件编程和系统设计能力,整个设计系统包括两个部分,硬件及软件部分,硬件部分已经制作成功,学生只需要掌握其原理和焊接相应的元器件,掌握元器件的辨别和元器件的作用以及应用场所即可,另外对所焊接的电路还需要进行仔细的检查,判断是否有焊接错误的地方或者短路的地方,对出现的异常情况要能够根据现象判别原因,并具备解决问题的能力,从而切实提高学生的硬件电子电路的分析、判断能力。 软件编程是本次工程实践的重要环节。在为期两周的工程实践中,将占据主要时间,学生要完成的软件编程任务主要包括以下几点: 1)、熟悉Keil C51编程
4、平台及相关编程软件 2)、编写、调试蜂鸣器、继电器动作、方波程序并进行软硬件联调 3)、编写、调试LED流水灯(循环显示)程序并进行软硬件联调 4)、编写、调试键盘扫描子程序并进行软硬件联调 5)、编写、调试数码管动态扫描程序并进行软硬件联调 6)、电子钟设计(包括键盘、时钟、显示等) 7)、温度测量控制系统设计(包括键盘、显示、控制、报警等) 其中前五个内容是后两个内容的基础,主要是编制一些子程序,为后继的整个系统设计打下基础。 电子钟设计一个简单的单片机编程设计,要求电子钟软件程序必须具备键盘扫描、数码管显示、时钟以及日历、秒表和闹钟功能。 温度测量与控制系统设计是一种非常简单而又应用普遍
5、的温度控制系统、他包括温度采集、信号转换、单片机处理以及控制、报警等部分。要求学生采用声光报警方式。二 、总体设计2.1 系统硬件总框图图1 系统设计总框图此次课程设计,AT89C52是一种带2K字节闪烁可编程可擦除只读存储器(FPEROMFalsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS 8位微处理器,俗称单片机。此次课程设计的电子钟就是由AT89C52单片机、时钟电路、报警电路,LED流水灯电路,动态数码管显示电路、音乐电路等组成。运用汇编语言来控制单片机AT89C52来实现LED流水灯、报警器、动态数码显示、电子音乐
6、等功能,并在此基础上综合运用上述功能,实现电子钟的设计(包括键盘、时钟、显示等),温度测量控制系统(包括键盘、显示、控制、报警等)。且本设计中的AT89C52单片机是整个工作过程的核心,是整个设计灵魂,它控制了脉冲时序的产生,显示信号的发送控制显示LED的选择。同时也考虑到AT89C52单片机来制作电子时钟其最大的好处就是可最大的调整时钟使其准确度更高。2.2 设计原理图图2 时钟电路原理图三、硬件单元设计3.1 NE555P模块图3为555定时器管脚分布。555定时器可构成多谐振荡器,是一种性能较好的时钟源。调节电位器RW1,使在555输出端3获得频率为5060Hz的矩形波信号,当基本RS触
7、发器Q为1时,门5开启,此时脉冲信号通过门5作为计数脉冲加于计数器的计数输入端CP。3.2 数码管显示为了能使电路简单我们采用数码管动态显示方式。数码管不同位显示的时间间隔可以通过调整延时程序的延时长短来完成。数码管显示的时间间隔也能够确定数码管显示时的亮度,若显示的时间间隔长,显示时数码管的亮度将亮些,若显示的时间间隔短,显示时数码管的亮度将暗些。若显示的时间间隔过长的话,数码管显示时将产生闪烁现象。图4 数码管显示图3.3 DS1302模块DS1302的RST是复位/片选线,通过把RST输入驱动置高电平来启动所有的数据传送。当RST为高电平时,所有的数据传送被初始化,允许对DS1302进行
8、操作。如果在传送过程中RST置为低电平,则会终止此次数据传送,I/O引脚变为高阻态。其管脚图如下:图5 DS1302管脚图各引脚功能:Vcc1为后备电源,VCC2为主电源,X1和X2是振荡源, SCLK为输入端RST输入有两种功能:首先,RST接通控制逻辑,允许地址/命令序列送入 移位寄存器;其次,RST提供终止单字节或多字节数据的传送 手段。3.4时钟控制 石英晶体振荡器是利用石英晶体的压电效应制成的一种谐振器件,它的基本构成大致是:从一块石英晶体上按一定方位角切下薄片,在它的两个对应面上涂敷银层作为电极,在每个电极上各焊一根引线接到管脚上,再加上封装外壳就构成了石英晶体谐振器。其产品一般用
9、金属外壳封装,也有用玻璃壳、陶瓷或塑料封装的。HMOS型MCS-51外部时钟源的接发:在XTLA1和XTLA2两端跨接晶体或陶瓷振荡器,与内部反相器构成稳定的自激振荡器。其发出的时钟脉冲直接送入片内定时控制部件,其中C电容对频率有微调作用。图6 时钟电路3.5 扬声器图7 扬声器原理图蜂鸣器发声原理是电流通过电磁线圈,使电磁线圈产生磁场来驱动振动膜发声的。因此需要一定的电流才能驱动它,单片机IO口输出的电流较小,其TTL电平基本上驱动不了蜂鸣器,因此需要增加一个电流放大的电路。程序中通过改变单片机对应IO口输出波形的频率,就可以调整控制蜂鸣器音调,产生各种不同音色、音调的声音。另外,改变其占空
10、比,也可以控制蜂鸣器的声音大小。可以有两种驱动方式,即用PNP或NPN三极管电流放大电路驱动。本电路通过一个PNP三极管9012来放大驱动蜂鸣器,当输出高电平时,三极管Q1截止,没有电流流过线圈,蜂鸣器不发声;当输出低电平时,三极管导通,这样蜂鸣器的电流形成回路,发出声音。因此,我们可以通过程序控制IO口输出的电平来使蜂鸣器发出声音和关闭,从而实现各种可能音响的产生。启动报警子程序如下: 停止报警子程序如下:START: SETB P1.0 STOP: CLR P1.0RET RET3.6 LED灯显示图8 LED灯显示电路图本次课程设计中,“程序语言”通过“翻译”软件“翻译”成单片机所需的二
11、进制代码,单片机可工作。要用外加电源和分压电阻来控制低电平驱动点亮,因为单片机不能直接高电平驱动LED灯。如图D1-D8和R1、R2以及R6-R11连接到单片机IO口,当P1口某脚变低时相应LED发光。实现LED灯的闪烁,只需利用编程方法依次从低位到高位逐个变为低电平,等待少许时刻再变高即可。3.7 键盘图9 键盘电路在MCS-51系列单片机的指令系统中设有散转指令JMP A+DPTR,可看成是专门配合键入程序是整个应用程序的核心部分。键盘的操作,无论是按键或键盘都是利用机械触点的合、断作用。一个电压信号通过机械触点的闭合、断开过程。由于机械触点的弹性作用,在闭合及断开瞬间均有抖动过程,会出现
12、一系列负脉冲。抖动时间的长短,与开关的机械特性有关,一般为510ms。一组按键或键盘都要通过I/O口线查询按键的开关状态。且独立式按键电路配置灵活,软件结构简单,但每个按键必须占用一根I/O口线,在按键数量较多时,I/O口线浪费较大。3.8 AT89C52 AT89C52是此次课程设计的核心部分。其管脚图如下:图10 AT89C52管脚图AT89C52是低功耗、高性能的CMOS8位单片机。片内带有8KB的Flash存储器,且允许在系统内改写或用编程器编程。另外,AT89C52的指令系统和引脚与80C52完全兼容。AT89C52各管脚功能如下:VCC:供电电压;GND:接地;P0口:P0口为一个
13、8位漏级开路双向I/O口,每脚可吸收8TTL门电流。;P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流;P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流;P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入;P3口管脚功能: P3.0是RXD(串行输入口);P3.1是TXD(串行输出口);P3.2是/INT0(
14、外部中断0);P3.3是/INT1(外部中断1);P3.4是T0(记时器0外部输入);P3.5是T1(记时器1外部输入);P3.6是/WR(外部数据存储器写选通);P3.7是/RD(外部数据存储器读选通);P3口同时为闪烁编程和编程校验接收一些控制信号。RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/PROG:当访问外部存储器时,地址锁存允许输出电平用于锁存地址的地位字节。/PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。/EA/VPP:当/EA保
15、持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2:来自反向振荡器的输出。四、软件单元设计4.1程序流程图开始取系统时间并转二进制为ACSII码将时间存入显示缓冲区显示时间和界面调用延时子程序返回DOS程序结束调用清屏子程序C键按下?ESC键按下?否是是否调用时间修改程序读键盘输入值4.2程序清单T_R Bit P3.4 ;实时时钟复位线引脚 T_C Bit P3.2 ;实时时钟时钟线引脚 T_I Bit P3.3 ;实时时钟数据线引脚 SEC EQU 30H MIN EQU 31H H
16、 EQU 32H D EQU 33H MON EQU 34H W EQU 35H Y EQU 36H ORG 0000H LJMP start ORG 001bH AJMP INTT1 ORG 0030HSTART: LCALL KEY AJMP START ;*蜂鸣器*KEY0: SETB P3.4 LCALL DELAY LCALL DELAY CLR P3.4 LCALL DELAY LCALL DELAYSETB P3.4LCALL DELAYLCALL DELAYCLR P3.4LCALL DELAYLCALL DELAYSETB P3.4LCALL DELAYLCALL DELAY
17、CLR P3.4RET ;*流水灯*KEY1: MOV R2,#2REB: MOV R1,#8 MOV A,#0AFHLOOPB: MOV P2,A RL A LCALL DELAY DJNZ R1,LOOPB DJNZ R2,REB RET;*日期* KEY2: CLR T_R CLR T_C MOV SP,#60H ;修改堆栈 MOV SEC,#00H ;初始时间设为10:00:00 MOV MIN,#00H MOV H,#10H MOV D,#18h ;初始日期设为08年1月18日第一周 MOV MON,#01H MOV W,#01H MOV Y,#08H LCALL SETDS1302
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 多功能电子钟 课程设计报告 多功能 电子钟 课程设计 报告
![提示](https://www.deliwenku.com/images/bang_tan.gif)
限制150内