蜂鸣器流水灯数码管显示作息时间控制单片机课程设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、课程设计目的
《单片机原理及应用》课程设计是一项重要的实践性教育环节,是学生在校期间必须接受的一项工程训练。在课程设计过程中,在教师指导下,运用工程的方法,通过一个简单课题的设计练习,可使学生初步体验单片机应用系统的设计过程、设计要求、完成工作内容和具体的设计方法,了解必须提交的各项工程文件,也达到巩固、充实和综合运用所学知识解决实际问题的目的。
通过课程设计,应能加强学生如下能力的培训:
(1)独立工作能力和创造力;
(2)查阅图书资料,产品手册和各种工具书的能力;
(3)工程绘图的能力;
(4)编写技术报告和编制技术资料的能力
(5)综合运用专业及基础知识,解决实际工程技术问题的能力;
二、设计要求
2.1总体要求
(1) 独立完成设计任务
(2) 绘制系统硬件总框图
(3) 绘制系统原理电路图
(4) 制定编写设计方案,编制软件框图,完成详细完整的程序清单和注释;
(5) 制定编写调试方案,编写用户操作使用说明书
(6) 写出设计工作小结。对在完成以上文件过程所进行的有关步骤如设计思想、指标论证、方案确定、参数计算、元器件选择、原理分析等作出说明,并对所完成的设计作出评价,对自己整个设计工作中经验教训,总结收获和今后研修方向。
2.2 具体要求
本次工程实践的校内部分主要以单片机为基础,进行单片机软件编程,目的是为了提高学生的软件编程和系统设计能力,整个设计系统包括两个部分,硬件及软件部分,硬件部分已经制作成功,学生只需要掌握其原理和焊接相应的元器件,掌握元器件的辨别和元器件的作用以及应用场所即可,另外对所焊接的电路还需要进行仔细的检查,判断是否有焊接错误的地方或者短路的地方,对出现的异常情况要能够根据现象判别原因,并具备解决问题的能力,从而切实提高学生的硬件电子电路的分析、判断能力。
软件编程是本次工程实践的重要环节。在为期两周的工程实践中,将占据主要时间,学生要完成的软件编程任务主要包括以下几点:
1)、熟悉Keil C51编程平台及相关编程软件
2)、编写、调试蜂鸣器、继电器动作、方波程序并进行软硬件联调
3)、编写、调试LED流水灯(循环显示)程序并进行软硬件联调
4)、编写、调试键盘扫描子程序并进行软硬件联调
5)、编写、调试数码管动态扫描程序并进行软硬件联调
6)、电子钟设计(包括键盘、时钟、显示等)
7)、作息时间控制系统设计(包括键盘、显示、时钟、报警等)
8)、智能交通灯控制系统设计
9)、车速里程测量、显示设计
三、设计内容及方法
单片机原理及其应用课程设计通常选择一般常见、常用的简单应用装置或对象进行微机控制。所涉及的系统可以实际制作,也可以实验室模拟,具体步骤和内容如下:
3.1设计准备
认真研究设计任务书,明确设计要求、条件、内容、和步骤;通过阅读有关
资料,了解设计对象;复习课程有关内容,熟悉有关单元电路的设计方法和设计步骤;搜集、分析、消化相关资料、软件等,掌握微型计算机应用系统软件的设计方法;准备好设计需要的图书、资料和工具;拟定设计计划等。
3.2功能设计及系统总体设计
要求学生有创新精神和创新意识,分析所掌握的资料,了解设计对象的功能。在充分考虑功能设计后,进行总体设计,以功能、结构为标,制定总体方案,规划硬、软件功能分配等;初步确定关键元器件地选择。
四、硬件电路总体设计
4.1 硬件总框图
原理说明:
本电路以单片机AT89C52为主控电路,分别连接按键控制扫描模块、时钟模块、数码显示模块、LED显示模块、扬声器模块。首先,按键扫描模块的四个按键分别用来控制数码显示、LED显示和扬声器工作,P0口用来控制其段选以显示相应的数值。P1口控制数码管的位选,以显示相应的数值。在其位选控制部分,采用了9012型的三极管,要求当P1口输出低电平时,位选成功,使得该位选的数码管亮,数码管显示时分通过按键1控制。P2口作为输出口,用来控制LED的亮灭,要使其亮只需要让P2.0-P2.7口保持低电平就可以使8个灯亮起来。同时通过P3.4端控制蜂鸣器发生,当P3.4输出低电平时候使蜂鸣器发出声音,按下按键3时使蜂鸣器发声。最后通过按按键4实现作息时间控制的功能。
4.1.1 主控电路
本次课程设计中主要是设计一个以作息时间控制为主的多功能控制系统。该设计中我们主控电路部分采用了单片机AT89C52芯片来实现这些功能,AT89C52是一个低电压,高性能CMOS的8位单片机,片内含8KB的可反复擦写的Flash只读程序存储器和256B的随机存取数据存储器(RAM)。其引脚如下图所示:
图1.AT89C52引脚图
VCC:供电电压。
GND:接地。
P0口(P0.0-P0.7):P0口来控制数码管的段选,以显示相应的数值。
P1口 (P1.0-P1.7):P1口用来控制数码管的位选,以达到动态显示的效果。P2口 (P2.0-P2.7):P2口来控制LED的亮灭。
P3口 (P3.0-P3.7):P3.0为RXD(串行输入口),P3.1为TXD(串行输出口),P3.2为/INT0(外部中断0),P3.3为/INT1(外部中断1),P3.4为T0(记时器0外部输入),
P3.5为T1(记时器1外部输入),P3.6为/WR(外部数据存储器写选通),P3.7为/RD(外部数据存储器读选通)。
XTAL1(19 脚)和XTAL2(18 脚)为振荡器输入输出端口,外接12MHz 晶振。RST/Vpd(9 脚)为复位输入端口,外接电阻电容组成的复位电路。VCC (40 脚)和VSS(20 脚)为供电端口,分别接+5V电源正负端。P0~P3 为