当前位置:文档之家› 单片机电子闹钟课程设计

单片机电子闹钟课程设计

学号:课程设计题目电子闹钟的设计与制作学院信息工程学院专业电子信息工程班级姓名指导教师2016年1月9日课程设计任务书学生姓名:专业班级:指导教师:工作单位:信息工程学院题目: 电子闹钟的设计仿真与制作初始条件:(1)PROTEUS、KEIL、WA VE等软件;(2)课程设计辅导书:《单片微型计算机与接口技术》要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)(1)课程设计时间:1 周;(2)课程设计题目:电子闹钟的设计仿真与制作;(3)本课程设计统一技术要求:本系统采用单片机AT89C52作为本设计的核心元件,利用7段LED作为显示器件。

接入LED显示器,可显示时、分钟、秒、单片机外围接有定时报警系统,定时时间到,扬声器发出报警声。

电路由下列部分组成:时钟电路、复位电路、LED显示,报警电路,芯片选用AT89C52单片机。

(4)课程设计说明书按学校“课程设计工作规范”中的“统一书写格式”撰写,并标明参考文献。

(5)写出本次课程设计的心得体会。

时间安排:第18周指导教师签名:年月日系主任(或责任教师)签名:年月日目录摘要 (1)Abstract (2)1 软件介绍 (3)1.1 Proteus (3)1.2 Kell (4)1.3 Wave6000 (4)2 设计方案 (5)3 硬件设计 (6)3.1芯片AT89C52 (6)3.2 喇叭SPEAKER (8)3.3 时钟电路 (8)3.4显示器模块的设计 (9)4 软件设计 (11)4.1划分模块 (11)4.2程序流程图 (11)4.3模块程序 (15)4.3.1 时间的设置程序 (15)4.3.2 闹钟时间的设置程序 (17)4.3.3 喇叭响应程序 (19)4.4 数码显示 (20)5 系统仿真 (21)6 课设过程中的体会 (25)7 心得体会 (26)参考文献 (27)附录A 源程序代码 (28)附录B 系统原理图 (39)附录C 实物图 (40)本科生课程设计成绩评定表 (41)摘要本课程设计主要是通过单片机AT89C52,综合运用定时器、中断、数码显示等知识设计一个可定时的电子钟。

它包括系统总体方案及硬件设计,软件设计,Proteus软件仿真等部分。

硬件设计的主要任务是根据总体设计要求,以及在所选机型的基础上,确定系统扩展所要用的存储器,I/O电路及有关外围电路等然后设计出系统的电路原理图。

合理的软件结构是设计出一个性能优良的单片机应用性系统软件的基础,因此必须充分重视。

编写完程序后在用Proteus软件仿真检查设计是否合理。

关键词:可定时电子钟,软件,硬件,AT89C52AbstractThis course design mainly by single chip microcomputer system, the integrated use of the timer, interrupt, digital display, such as knowledge to design a can timing electronic clock. It including the system overall scheme and hardware design, software design, and Proteus simulation software.Is the main task of the hardware design based on the general design requirements, and on the basis of the selected type, determine the system extensions to use memory, I/O circuit and related peripheral circuit, and then design the circuit principle diagram of the system.The reasonable structure of software is to design a good performance of the basis of single chip microcomputer application system software, so must full attention. After writing the program in use Proteus software simulation check whether the design is reasonable.Keywords:timing electronic clock software, hardware, AT89C521软件介绍1.1 ProteusProteus软件是英国Lab Center Electronics公司出版的EDA工具软件。

它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。

它是目前比较好的仿真单片机及外围器件的工具。

虽然目前国内推广刚起步,但已受到单片机爱好者、从事单片机教学的教师、致力于单片机开发应用的科技工作者的青睐。

Proteus是世界上著名的EDA工具(仿真软件),从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到PCB设计,真正实现了从概念到产品的完整设计。

是目前世界上唯一将电路仿真软件、PCB设计软件和虚拟模型仿真软件三合一的设计平台,其处理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和MSP430等,2010年又增加了Cortex和DSP系列处理器,并持续增加其他系列处理器模型。

在编译方面,它也支持IAR、Keil和MATLAB等多种编译器。

课程设计、毕业设计是学生走向就业的重要实践环节。

由于PROTEUS提供了实验室无法相比的大量的元器件库,提供了修改电路设计的灵活性、提供了实验室在数量、质量上难以相比的虚拟仪器、仪表,因而也提供了培养学生实践精神、创造精神的平台随着科技的发展,―计算机仿真技术‖已成为许多设计部门重要的前期设计手段。

它具有设计灵活,结果、过程的统一的特点。

可使设计时间大为缩短、耗资大为减少,也可降低工程制造的风险。

相信在单片机开发应用中PROTEUS也能茯得愈来愈广泛的应用。

使用Proteus 软件进行单片机系统仿真设计,是虚拟仿真技术和计算机多媒体技术相结合的综合运用,有利于培养学生的电路设计能力及仿真软件的操作能力;在单片机课程设计和全国大学生电子设计竞赛中,我们使用Proteus 开发环境对学生进行培训,在不需要硬件投入的条件下,学生普遍反映,对单片机的学习比单纯学习书本知识更容易接受,更容易提高。

实践证明,在使用Proteus 进行系统仿真开发成功之后再进行实际制作,能极大提高单片机系统设计效率。

因此,Proteus 有较高的推广利用价值。

1.2 KellkeilKeil C51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。

Keil提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(uVision)将这些部分组合在一起。

运行Keil软件需要WIN98、NT、WIN2000、WINXP等操作系统。

如果你使用C语言编程,那么Keil几乎就是你的不二之选,即使不使用C语言而仅用汇编语言编程,其方便易用的集成环境、强大的软件仿真调试工具也会令你事半功倍。

1.3 Wave6000wave6000,这个软件是南京伟福公司的单片机开发软件,一般就是用在C51单片机。

不需要购买仿真器,使用软件模拟器就可以了,使用很方便的。

也支持KEILC,但最好不要在WA VE内使用C,如果想用C编写,还是用KEIL C方便。

WA VE6000编译软件,采用中文界面。

用户源程序大小不受限制,有丰富的窗口显示方式,能够多方位、动态地展示程序的执行过程。

其项目管理功能强大,可使单片机程序化大为小,化繁为简,便于管理。

另外,其书签、断点管理功能以及外设管理功能等为51单片机的仿真带来极大的便利。

2 设计方案本课程设计的定时闹钟采用单片机AT89C52芯片作为核心芯片,用汇编语言进行编程,时、分、秒用6位LED 数码管显示。

在电路中通过四个按键S1、S2、S3和S4来进行定时和调时,定时时间到通过喇叭发出报警声。

电路由下列部分组成:时钟电路、复位电路、控制电路、LED 显示,报警电路,芯片选用AT89C52 单片机。

系统框图:图2.1 系统框图晶振及复位 键盘(按钮)单片机 AT89C52 RESPACK-8 SPEAKER喇叭3 硬件设计3.1芯片AT89C52AT89C52是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—Falsh Programmable and Erasable Read Only Memory)的低电压,可稳定地工作于5V的电源下。

该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。

由于将多功能8位CPU 和闪烁存储器组合在单个芯片中,ATMEL的AT89C52是一种高效微控制器。

图3.1 AT89C52引脚图AT89C52管脚说明:VCC:供电电压。

GND:接地。

P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。

当P1口的管脚第一次写1时,被定义为高阻输入。

P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。

在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。

P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。

P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。

在FLASH编程和校验时,P1口作为第八位地址接收。

此外,与AT89C51不同之处是,P1.0和P1.1还可分别作为定时/计数器2的外部计数输入(P1.0/T2)和输出(P1.1/T2EX)P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写―1‖时,其管脚被内部上拉电阻拉高,且作为输入。

并因此作为输入时,P2口的管脚被外部拉低,将输出电流。

这是由于内部上拉的缘故。

相关主题