基于51单片机定时闹钟设计
基于51单片机的多功能电子钟设计
![基于51单片机的多功能电子钟设计](https://img.taocdn.com/s3/m/85bc5ac1cd22bcd126fff705cc17552707225ef5.png)
基于51单片机的多功能电子钟设计1. 本文概述随着现代科技的发展,电子时钟已成为日常生活中不可或缺的一部分。
本文旨在介绍一种基于51单片机的多功能电子钟的设计与实现。
51单片机因其结构简单、成本低廉、易于编程等特点,在工业控制和教学实验中得到了广泛应用。
本文将重点阐述如何利用51单片机的这些特性来设计和实现一个具有基本时间显示、闹钟设定、温度显示等功能的电子钟。
本文的结构安排如下:将详细介绍51单片机的基本原理和特点,为后续的设计提供理论基础。
接着,将分析电子钟的功能需求,包括时间显示、闹钟设定、温度显示等,并基于这些需求进行系统设计。
将详细讨论电子钟的硬件设计,包括51单片机的选型、时钟电路、显示电路、温度传感器电路等。
软件设计部分将介绍如何通过编程实现电子钟的各项功能,包括时间管理、闹钟控制、温度读取等。
本文将通过实验验证所设计的电子钟的功能和性能,并对实验结果进行分析讨论。
通过本文的研究,旨在为电子钟的设计提供一种实用、经济、可靠的方法,同时也为51单片机的应用提供一个新的实践案例。
2. 51单片机概述51单片机,作为一种经典的微控制器,因其高性能、低功耗和易编程的特性而被广泛应用于工业控制、智能仪器和家用电器等领域。
它基于Intel 8051微处理器的架构,具备基本的算术逻辑单元(ALU)、程序计数器(PC)、累加器(ACC)和寄存器组等核心部件。
51单片机的核心是其8位CPU,能够处理8位数据和执行相应的指令集。
51单片机的内部结构主要包括中央处理单元(CPU)、存储器、定时器计数器、并行IO口、串行通信口等。
其存储器分为程序存储器(ROM)和数据存储器(RAM)。
程序存储器通常用于存放程序代码,而数据存储器则用于存放运行中的数据和临时变量。
51单片机还包含特殊功能寄存器(SFR),用于控制IO端口、定时器计数器和串行通信等。
51单片机的工作原理基于冯诺伊曼体系结构,即程序指令和数据存储在同一块存储器中,通过总线系统进行传输。
基于51单片机内部定时器的简易闹钟课程设计论文
![基于51单片机内部定时器的简易闹钟课程设计论文](https://img.taocdn.com/s3/m/e029bb3bdd36a32d737581b5.png)
基于51单片机内部定时器的简易闹钟摘要现代社会电子闹钟已广泛用于各种私人和公众场合,成为我们生活、工作和学习中不可缺少的好帮手,因此研究实用性更强的电子闹钟具有十分重要的意义。
本设计是基于单片机的电子钟设计,不仅具有时分秒的显示功能,还具有双闹铃和倒计时的功能,实用性非常强。
电子钟的计时部分采用AT89S52单片机内部定时器实现,而显示功能是采用液晶模块LCD1602来实现,该电子闹钟可以让使用者通过按键来轻松选择的功能菜单和调节时间,具有非常良好地人机界面。
关键词:电子闹钟;倒计时;AT89S52;液晶LCD1602;按键AbstractIn modern society, the electronic alarm clock has been widely used in various occasions and become indispensable to life.It is a good helper to our work and learning. So,there is very important significance to research more practical electronic alarm clock.This design is based on single chip microcomputer,It has display function of hours,minutes and seconds,dual alarm and countdown.The internal timer of AT89S52 achieve the part of time.The liquid crystal LCD1602 achieve the part of display.The users can use the push-buttons to choice the menu of functions and adjust the time.The man-machine interface is very good.Key words: electronic alarm; countdown; AT89S52; liquid crystal LCD1602; button目录引言 (1)1 设计要求 (2)2 方案论证 (2)2.1 计时方案的选择 (2)2.2 显示方案的选择 (2)2.3 按键功能方案设计 (3)2.4 指示灯和响铃方案设计 (3)3 系统组成 (3)4 硬件设计 (4)4.1 单片机最小系统设计 (4)4.2 显示电路设计 (1)4.3 蜂鸣器电路设计 (1)4.4 按键电路设计 (2)5 软件设计 (2)5.1 走时部分 (2)5.2 闹铃检测部分 (3)5.3 键盘扫描部分 (3)5.4 液晶部分 (4)5.5 流程图 (4)6 仿真设计 (8)7 系统调试及结果 (8)7.1 软件调试 (8)7.2 硬件调试 (10)7.3 调试结果 (10)8 总结 (10)谢辞 (11)参考文献........................................... 错误!未定义书签。
基于MCS51单片机的闹钟提醒器设计报告
![基于MCS51单片机的闹钟提醒器设计报告](https://img.taocdn.com/s3/m/5253c04633d4b14e8424686a.png)
成绩课程论文题目:基于MCS51单片机的闹钟提醒器设计报告目录一、设计方案选定: (3)1.1 前言 (3)1.2 实验目的 (3)1.3总体设计要求 (3)1.3.1、基本要求 (3)1.3.2、自由发挥部分 (4)1.4 方案选定 (4)二、硬件电路设计 (4)2.1 AT89C52 (4)2.2 复位电路 (5)2.3 晶振电路 (5)2.4 时钟显示 (6)2.4.1 LCD1602 (6)2.4.2 DS1302: (6)2.5 程序框图 (7)2.6 基本电路及工作原理 (8)三、软件设计和仿真 (8)3.1 软件设计 (9)3.2 Proteus仿真 (25)四、课程设计体会 (27)参考文献 (28)基于MCS51单片机的闹钟提醒器学生:陈浩敏指导教师:张水锋电气信息工程学院电子信息工程专业一、设计方案选定:1.1 前言:单片计算机即单片微型计算机,(Single-Chip Microcomputer)。
是集CPU ,RAM ,ROM,定时,计数和多种接口于一体的微控制器。
他体积小,成本低,功能强,广泛应用于智能产品和工业自动化上。
而51单片机是各单片机中最为典型和最有代表性的一种。
这次课程设计通过对它的学习,应用,从而达到学习、设计、开发软、硬的能力。
基于单片机的定时和控制装置在许多行业有着广泛的应用。
而数字定时闹钟是其中最基本,也是最有代表性的一个实例。
数字定时闹钟的设计方法有许多种,例如,可以用中小规模集成电路组成数字定时闹钟,也可以利用专用的时钟芯片配以显示电路及其所需要的外围电路组成数字定时闹钟,还可以利用单片机来实现数字定时闹钟。
这些方法都各有其特点,其中,利用单片机来实现数字定时闹钟具有编程灵活、精度高等特点,便于数字定时闹钟功能的扩充,同时还可以用该数字定时闹钟发出各种控制信号。
1.2 实验目的:1、熟悉集成电路的引脚安排。
2、掌握各芯片的逻辑功能及使用方法。
3、充分认识单片机设计。
基于单片机定时闹钟的设计
![基于单片机定时闹钟的设计](https://img.taocdn.com/s3/m/257104cb85868762caaedd3383c4bb4cf7ecb71a.png)
基于单片机定时闹钟的设计随着科技的快速发展,嵌入式系统已经深入到我们生活的各个角落。
其中,单片机以其高效性、灵活性和低成本性,广泛应用于各种设备的设计中。
本文将探讨如何基于单片机设计一个定时闹钟。
一、硬件需求1、单片机:选择一个适合你项目的单片机。
比如Arduino UNO,它具有丰富的IO口和易于使用的开发环境。
2、显示模块:为了能直观地展示时间,你需要一个LCD显示屏。
可以选择常见的16x2字符型LCD显示屏。
3、按键模块:用于设定时间和闹钟功能。
一般可以选择4个按键,分别代表功能设置、小时加、小时减和分钟加。
4、蜂鸣器:当到达设定时间时,蜂鸣器会发出声音提醒。
二、软件需求1、开发环境:你需要一个适用于你单片机的开发环境,例如Arduino IDE。
2、编程语言:一般使用C或C++进行编程。
3、程序设计:你需要编写一个程序来控制单片机,让其根据设定时间准时唤醒。
程序应包括初始化和设定时间的功能,以及到达设定时间后的闹钟提醒功能。
三、设计流程1、硬件连接:将单片机、显示模块、按键模块和蜂鸣器按照要求连接起来。
2、初始化:在程序中初始化所有的硬件设备。
3、时间设定:通过按键模块设定时间。
你需要编写一个函数来处理按键输入,并在LCD显示屏上显示当前时间。
4、闹钟提醒:在程序中加入一个计时器,当到达设定时间时,程序会唤醒并触发蜂鸣器发出声音。
5、循环检测:在主循环中不断检测时间是否到达设定时间,如果到达则触发闹钟提醒,然后继续检测。
四、注意事项1、时钟源:你需要一个稳定的时钟源来保证闹钟的准确性。
可以考虑使用网络时钟或者GPS模块。
2、功耗优化:如果你的设备需要长时间运行,那么需要考虑到功耗的问题,比如使用低功耗的单片机或者在不需要闹钟提醒的时候关闭蜂鸣器等。
3、人机交互:考虑增加更多的功能以满足用户的需求,如设置多个闹钟、调整闹钟的音量等。
4、安全性:保证设备的电源稳定,避免在突然断电的情况下数据丢失或设备损坏。
基于51单片机内部定时器的简易闹钟课程设计论文
![基于51单片机内部定时器的简易闹钟课程设计论文](https://img.taocdn.com/s3/m/9cbaacc8d15abe23482f4d4f.png)
基于51单片机内部定时器的简易闹钟摘要现代社会电子闹钟已广泛用于各种私人和公众场合,成为我们生活、工作和学习中不可缺少的好帮手,因此研究实用性更强的电子闹钟具有十分重要的意义。
本设计是基于单片机的电子钟设计,不仅具有时分秒的显示功能,还具有双闹铃和倒计时的功能,实用性非常强。
电子钟的计时部分采用AT89S52单片机内部定时器实现,而显示功能是采用液晶模块LCD1602来实现,该电子闹钟可以让使用者通过按键来轻松选择的功能菜单和调节时间,具有非常良好地人机界面。
关键词:电子闹钟;倒计时;AT89S52;液晶LCD1602;按键AbstractIn modern society, the electronic alarm clock has been widely used in various occasions and become indispensable to life.It is a good helper to our work and learning. So,there is very important significance to research more practical electronic alarm clock.This design is based on single chip microcomputer,It has display function of hours,minutes and seconds,dual alarm and countdown.The internal timer of AT89S52 achieve the part of time.The liquid crystal LCD1602 achieve the part of display.The users can use the push-buttons to choice the menu of functions and adjust the time.The man-machine interface is very good.Key words: electronic alarm; countdown; AT89S52; liquid crystal LCD1602; button目录引言 (1)1 设计要求 (2)2 方案论证 (2)2.1 计时方案的选择 (2)2.2 显示方案的选择 (2)2.3 按键功能方案设计 (3)2.4 指示灯和响铃方案设计 (3)3 系统组成 (3)4 硬件设计 (4)4.1 单片机最小系统设计 (4)4.2 显示电路设计 (5)4.3 蜂鸣器电路设计 (5)4.4 按键电路设计 (6)5 软件设计 (6)5.1 走时部分 (6)5.2 闹铃检测部分 (7)5.3 键盘扫描部分 (7)5.4 液晶部分 (8)5.5 流程图 (8)6 仿真设计 (11)7 系统调试及结果 (11)7.1 软件调试 (11)7.2 硬件调试 (12)7.3 调试结果 (13)8 总结 (13)谢辞 (14)参考文献........................................... 错误!未定义书签。
基于51单片机的简易电子钟设计
![基于51单片机的简易电子钟设计](https://img.taocdn.com/s3/m/4ef0e57886c24028915f804d2b160b4e767f81e6.png)
基于51单片机的简易电子钟设计一、设计目的现代社会对于时间的要求越来越精确,电子钟成为家庭和办公场所不可缺少的设备之一、本设计基于51单片机,旨在实现一个简易的电子钟,可以显示当前的时间,并且能够通过按键进行时间的调整和设置闹钟。
二、设计原理本设计主要涉及到51单片机的IO口、定时器、中断、LCD显示技术等方面知识。
1.时钟模块时钟模块采用定时器0的中断进行时间的累加和更新。
以1秒为一个时间单位,每当定时器0中断发生,就将时间加1,并判断是否需要更新小时、分钟和秒的显示。
同时,根据用户按键的操作,可以调整时间的设定。
2.显示模块显示模块采用16x2字符LCD显示屏,通过51单片机的IO口与LCD连接。
可以显示当前时间和设置的闹钟时间。
初次上电或者重置后,LCD显示时间为00:00:00,通过定时器中断和键盘操作,实现时间的更新和设定闹钟功能。
3.键盘模块键盘模块采用矩阵键盘连接到51单片机的IO口上,用于用户进行时间的调整和设置闹钟。
通过查询键盘的按键状态,根据按键的不同操作,实现时间的调整和闹钟设定功能。
4.中断模块中断模块采用定时器0的中断,用于1秒的定时更新时间。
同时可以添加外部中断用于响应用户按键操作。
三、主要功能和实现步骤1.系统初始化。
2.设置定时器,每1秒产生一次中断。
3.初始化LCD显示屏,显示初始时间00:00:00。
4.查询键盘状态,判断是否有按键按下。
5.如果按键被按下,根据不同按键的功能进行相应的操作:-功能键:设置、调整、确认。
-数字键:根据键入的数字进行时间的调整和闹钟设定。
6.根据定时器的中断,更新时间的显示。
7.判断当前时间是否与闹钟设定时间相同,如果相同,则触发闹钟,进行提示。
8.循环执行步骤4-7,实现连续的时间显示和按键操作。
四、系统总结和改进使用51单片机设计的简易电子钟可以显示当前时间,并且实现时间的调整和闹钟设定功能。
但是由于硬件资源有限,只能实现基本的功能,不能进行其他高级功能的扩展,例如闹铃的音乐播放、温度、湿度的显示等。
基于AT89C51单片机定时闹钟设计
![基于AT89C51单片机定时闹钟设计](https://img.taocdn.com/s3/m/5189b250de80d4d8d05a4f2e.png)
塔里木大学信息工程学院《单片机原理与外围电路》课程论文题目:单片机定时闹钟设计姓名:海热古丽·依马木学号:**********班级:计算机15-1班摘要:本设计是单片机定时闹钟系统,不仅能实现系统要求的功能,而且还有附加功能,即还能设定和修改当前所显示的时间。
本次设计的定时闹钟在硬件方面就采用了AT89C51芯片,用6位LED数码管来进行显示。
LED用P0口进行驱动,采用的是动态扫描显示,能够比较准确显示时时—分分—秒秒。
通过S1、S2、S3、和S4四个功能按键可以实现对时间的修改和定时,定时时间到喇叭可以发出报警声。
在软件方面采用汇编语言编程。
整个定时闹钟系统能完成时间的显示,调时和定时闹钟、复位等功能,并经过系统仿真后得到了正确的结果。
关键词:单片机、AT89C51、定时闹钟、仿真Abstract:T his design is a single-chip timing alarm system, can not only realize the function of system requirements, and there are additional functions, which can set up and modify the display time. Timing alarm clock this design adopts the AT89C51 chip on the hardware side, with 6 LED digital tube to display. LED P0 export driven, by using dynamic scanning display, can accurately display always -sub -seconds seconds. Through the S1, S2, S3, and S4 four function keys can be achieved on the time changes and timing, timing to the horn can send out alarm sound. Using assembly language programming in the software. The timing clock system has functions of time display, timing and timing alarm clock, reset and other functions, and the system simulation to obtain correct results.Keywords: single chip microcomputer, AT89C51, alarm clock, simulatio目录1绪论 (2)1.1课题背景及研究意义 (2)1.2国内外现状 (2)1.3课题的设计目的 (2)1.4课题的主要任务 (2)1.5课题的主要功能 (2)2系统概述 (3)2.1方案论证 (3)2.2系统设计原理 (3)3系统硬件设计 (4)3.1单片机AT89C51简介 (4)3.2数码管显示电路 (6)3.3时钟电路 (7)3.4喇叭:SPEAKER (8)4系统软件设计 (8)4.1系统软件设计说明 (8)4.2 程序调试 (8)4.3 程序流程图 (9)4.3仿真步骤 (10)4.4仿真结果 (10)结论 (12)参考文献 (13)附录A 系统整体电路 (14)附录B 全部程序清单 (14)附录C:PCB图和3D图 (23)1绪论1.1课题背景及研究意义进入信息时代,计算机的影子无处不在,带有像单片机一类嵌入式处理器的小型智能化电子产品,已经成为家用电器的主流,市场需求前景广阔,因此,掌握小型单片机应用系统设计方法,已成为当今电子应用工程师所必备的技能,定时闹钟具备小型单片机应用系统的一切要素,其结构简单、成本低廉、走时精确、设置方便,所以智能化方面有广泛的用途。
基于51单片机定时闹钟设计
![基于51单片机定时闹钟设计](https://img.taocdn.com/s3/m/99af379602d276a200292eb6.png)
目录1. 摘要 ........................................................................................................................ 错误!未定义书签。
2. 设计目的要求 (2)3. 设计实现方案 (3)3.1系统总框图 (3)3.2原理及工作过程说明 (3)3.3元器件功能说明 (4)3.3.1 AT89C51单片机 (4)3.3.2 1602LCD液晶显示器 (7)3.3.3 其他重要元件 (8)4. 软件设计 (11)4.1程序流程图 (12)4.2源代码 (12)5. 系统仿真 (22)6. 心得体会 (33)7. 参考文献............................................................................................................... 错误!未定义书签。
1. 摘要本设计师定时闹钟的设计,由单片机AT89C51芯片和LCD、LED显示器,辅以必要的的电路,构成一个单片机定时闹钟。
电子钟可采用数字电路实现,也可以采用单片机来完成。
LCD显示“时”,“分”,LED闪动来做秒计数,定时时间到能发出警报声或者启动继电器,从而控制电器的启停。
现在是自动化高度发达的时代,特别是电子类产品都是靠内部的控制电路来实现对产品的控制,达到自动运行的目的,这就需要我们这里要做的设计中的电器元件及电路的支持。
在这次设计中主要是用AT89S51来进行定时,也结合着其他辅助电路实施控制,在定时的时候,按一下控制小时的键对小时加一;按一下控制分钟的键对分钟加一;到达预设的时间,此电路就会发出报警声音提示已经到点。
关键字:定时闹钟AT89C51 LCDSummary:The regular alarm clock designers design, by the microcontroller AT89C51 chip and LCD, LED display, combined with the necessary circuitry to form a single-chip timer alarm clock. Clock can be digital circuit, the microcontroller can also be used to complete. LCD display "when", "sub", LED flash to do the second count, regular time to be able to sound an alarm or start relay to control the electrical start and stop. Now is the era of highly developed automation, especially electronic products are relying on the internal control circuitry to achieve control of the product to achieve the purpose of automatic operation, which requires us to do the design of electrical components and circuits to support .In this design it is mainly used to carry out regular AT89S51, but also combined with other auxiliary circuit implementation of the control, in time, when you click a control button on the hour plus one hour; click the button on the control minutes plus one minute; reach preset time, this will sound an alarm circuit has prompted the point,. Keywords: time clock AT89C51 LCD2.设计目的要求1).本次课程设计应达到的目的:1、综合运用相关课程中所学到的理论知识去独立完成某一设计课题;2、通过查阅手册和相关文献资料,培养学生独立分析和解决问题的能力;3、进一步熟悉单片机和常用接口电路,加深对专业知识和理论知识学习的认识和理解;4、学会电路的安装与调试;5、进一步熟悉电子仪器的正确使用;6、学会撰写课程设计的总结报告;7、培养严肃认真的工作作风和严谨的科学态度。
基于51单片机实现的简单闹钟设计
![基于51单片机实现的简单闹钟设计](https://img.taocdn.com/s3/m/c3606f4cf56527d3240c844769eae009581ba297.png)
基于51单片机实现的简单闹钟设计本设计利用单片机AT89C52制作一个简单的倒计时定时闹钟,这是一个很实用的工具。
我们使用按键来设定需要定时的时间长短,然后利用中断设置20次中断定义一秒,利用程序设计时间倒数。
同时,我们使用4个8段数码管来显示分和秒,并且在定时结束后使用电铃警示。
在硬件系统方面,我们使用proteus仿真,这样就能观察到系统的实际运行情况。
具体地说,我们使用AT89C52单片机芯片作为控制芯片,使用四位相连的8段共阴数码管,并且使用74HC573锁存器控制数码管的显示。
在定时过程中,我们使用s1控制十分位,s2控制分位,s3控制十秒位,s4控制秒位,s5开始倒计时。
这样,我们就能实现一个简单而实用的倒计时定时闹钟。
关于AT89C52单片机芯片,它是___MCS-51系列单片机中基本的产品,采用___可靠的CHMOS工艺技术制造的高性能8位单片机,属于标准的MCS-51的HCMOS产品。
它结合了HMOS的高速和高密度技术及CHMOS的低功耗特征,基于标准的MCS-51单片机体系结构和指令系统,集成了时钟输出和向上或向下计数器等更多的功能,适合于类似马达控制等应用场合。
80C52内置8位中央处理单元、256字节内部数据存储器RAM、8k片内程序存储器(ROM)32个双向输入/输出(I/O)口、3个16位定时/计数器和5个两级中断结构,一个全双工串行通信口,片内时钟振荡电路。
此外,80C52还可工作于低功耗模式,可通过两种软件选择空闲和掉电模式。
在空闲模式下冻结CPU而RAM定时器、串行口和中断系统维持其功能。
掉电模式下,保存RAM数据,时钟振荡停止,同时停止芯片内其它功能。
80C52有PDIP(40pin)和PLCC(44pin)两种封装形式。
8051片内有ROM,无须外接外存储器和373,更能体现“单片”的简练。
最后,关于74HC573芯片,它是一个锁存器,用于控制数码管的显示。
基于51单片机的电子闹钟设计报告
![基于51单片机的电子闹钟设计报告](https://img.taocdn.com/s3/m/8bc1768371fe910ef12df8ae.png)
*********大学********学院电子闹钟设计报告专业:******学号:******姓名:*******一.仿真电路图:二. 器件30P电容2个12MHZ晶振1个喇叭1个38译码器1个89c52单片机1个按键4个5V电源300欧电阻7个8位共阴数码管1个三.流程图:电子闹钟主流程图:调时、调日期、调星期流程图:倒计时结束流程图:音乐播放流程图:闹铃功能流程图:四.功能介绍:有计时,计日期,计星期,调时、调日期、调星期、闹钟、调闹钟、音乐闹铃、秒表、99秒倒计时、60秒倒计时、5秒倒计时、倒计时结束播放提醒音乐、直接按键播放音乐共计15个小的功能,分为四个功能模块,用四个按键来实现1.调时,查看日期以及调日期,查看星期以及调星期按键1进入该模块后,显示该模块的界面“1234”,分别代表在该界面中要用到的按键编号。
此时按1即进入调时界面,显示当前时间,按1秒加1,按2分加1,按3时加1,按4退出该界面而回到模块界面。
此时按2即进入查看日期以及调日期的界面,显示当前日期,按1天加1,按2月加1,按3年加1,按4退出该界面而回到模块界面。
此时按3即进入查看星期以及调星期的界面,显示当前星期,按1星期加1,按4退出该界面而回到模块界面。
此时按4则退出功能模块1而回到主界面。
2.调闹钟进入该模块时,显示闹钟时间,按1秒加1,按2分加1,按3时加1,按4退出调闹钟模块而回到主界面3.秒表,倒计时进入该模块后,显示界面“12 4”,分别代表在该界面中要用到的按键编号。
此时按1进入秒表计时状态,按4退出,回到模块界面。
此时按2进入99秒倒计时状态,按1切换到60秒倒计时,按1切换到5秒倒计时,在倒计时进行中,按4可以回到模块界面。
此时按4,可以回到主界面4.音乐进入该界面后,显示界面“00-00-00”,按1播放歌曲1,按2播放歌曲2,按3播放歌曲3,按4播放歌曲4,在播放歌曲时,按4可以结束播放音乐并且回到主界面。
基于C51单片机的数字时钟课程设计(C语言,带闹钟).
![基于C51单片机的数字时钟课程设计(C语言,带闹钟).](https://img.taocdn.com/s3/m/f6bf972fb90d6c85ec3ac6c8.png)
单片机技术课程设计数字电子钟学院:班级:姓名:学号:教师:摘要电子钟在生活中应用非常广泛,而一种简单方便的数字电子钟则更能受到人们的欢迎。
所以设计一个简易数字电子钟很有必要。
本电子钟采用AT89C52单片机为核心,使用12MHz 晶振与单片机AT89C52 相连接,通过软件编程的方法实现以24小时为一个周期,同时8位7段LED数码管(两个四位一体数码管)显示小时、分钟和秒的要求,并在计时过程中具有定时功能,当时间到达提前定好的时间进行蜂鸣报时。
该电子钟设有四个按键KEY1、KEY2、KEY3、KEY4和KEY5键,进行相应的操作就可实现校时、定时、复位功能。
具有时间显示、整点报时、校正等功能。
走时准确、显示直观、运行稳定等优点。
具有极高的推广应用价值。
关键词:电子钟 AT89C52 硬件设计软件设计目录一、数字电子钟设计任务、功能要求说明及方案介绍 (4)1.1 设计课题设计任务 (4)1.2 设计课题的功能要求说明 (4)1.3 设计课的设计总体方案介绍及工作原理说明 (4)二、设计课题的硬件系统的设计 (5)2.1硬件系统各模块功能简要介绍 (5)2.1.1 AT89C52简介 (5)2.1.2 按键电路 (6)三、设计课题的软件系统的设计 (6)3.1 使用单片机资源的情况 (6)3.2 软件系统个模块功能简要介绍 (7)3.3 软件系统程序流程框图 (7)3.4 软件系统程序清单 (7)四、设计课题的设计结论、仿真结果、误差分析 (9)4.1 设计结论及使用说明 (9)4.2 仿真结果 (10)结束语 (12)参考文献 (12)附录 (13)附录A:程序清单 (13)一、数字电子钟设计任务、功能要求说明及方案介绍1.1 设计课题设计任务设计一个具有特定功能的电子钟。
具有时间显示,并有时间设定,时间调整功能。
1.2 设计课题的功能要求说明设计一个具有特定功能的电子钟。
该电子钟上电或按键复位后能自动显示系统提示符“d.1004-22”,进入时钟准备状态;第一次按电子钟启动/调整键,电子钟从12时59分0秒开始运行,进入时钟运行状态;按电子钟S5键,则电子钟进入时钟调整状态,此时可利用各调整键调整时间,调整结束后可按S5键再次进入时钟运行状态。
51单片机设置的电子闹钟(可调时间和闹钟)
![51单片机设置的电子闹钟(可调时间和闹钟)](https://img.taocdn.com/s3/m/8a00c40016fc700abb68fc38.png)
#include<reg52.h>#define uint unsigned int#define uchar unsigned char#define LED P0 // 数码管的段选#define LIGHT P1 // 时分秒位的指示灯#define WS P2 // 数码管的位选sbit key1=P3^0; // 时间暂停/开始sbit key2=P3^1; // 时间/闹钟设置sbit key3=P3^2; // 增加sbit key4=P3^3; // 减少sbit alarm=P3^6; // 闹铃uchar tab[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; // 0-9uchar tab_dp[10]={0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd,0x87,0xff,0xef}; // 0.-9.(带小数点)uchar data1[]={0,0,0,0,0,0};uchar data2[]={0,0,0,0,0,0};uint t,k,kk,k1,flag;uint bbh,bbm,bbs,bbh1,bbm1,bbs1;uint sec,min,hour,sec1,min1,hour1; // 定义秒,分,时void init();void display();void display_bb();void delay( uint );void keyscan();void main(){init();while(1){keyscan();if(k1==0||k1==1||k1==2||k1==3) // 显示调节时间{display();}if(k1==4||k1==5||k1==6) // 显示调节闹钟{display_bb();}if((bbh==hour)&&(bbm==min)&&data1[4]==0&&data1[5]==5) // 5s报时{alarm=~alarm;delay(1);}if((bbs==sec)&&(bbm==min)&&(bbh==hour)) // 可调报时{alarm=~alarm;delay(1);}}}void init(){WS=LIGHT=flag=0;sec=min=hour=0; // 将0赋给时分秒TMOD=0x01; // 方式1 P129(见课本)TH0=0x3c; // 65536-50000=15536=0x3cb0(50ms) P128(见课本)TL0=0xb0;EA=1; // 开总中断P161(见课本)TR0=1; // 定时/计数器0开启ET0=1; // 定时器/计数器0溢出中断启动P161(见课本)}void delay( unsigned int t) // 延时函数{unsigned int i;while(t--)for(i=0;i<125;i++);}void display() // 显示时间函数{if(TF0==1) // 定时器/计数器溢出P130(见课本){TF0=0; // 清中断标志位t++;if(t==20) // (50ms*20=1s){t=0;sec++; // 秒加1if(sec==60) // 秒为60,则清零,分加1{sec=0;min++;}if(min==60) // 分为60,则清零,时加1{min=0;hour++;}if(hour==24)// 时为24,则清零{hour=0;}}}data1[5]=sec%10;data1[4]=sec/10;data1[3]=min%10;data1[2]=min/10;data1[1]=hour%10;data1[0]=hour/10;WS=0xdf; // 1101 1111 ,低电平显示LED=tab[data1[5]];delay(1);WS=0xef; // 1110 1111LED=tab[data1[4]];delay(1);WS=0xf7; // 1111 0111LED=tab_dp[data1[3]];delay(1);WS=0xfb; // 1111 1011LED=tab[data1[2]];delay(1);WS=0xfd; // 1111 1101LED=tab_dp[data1[1]];delay(1);WS=0xfe; // 1111 1110LED=tab[data1[0]];delay(1);}void display_bb() // 显示闹钟函数{data2[5]=bbs%10;data2[4]=bbs/10;data2[3]=bbm%10;data2[2]=bbm/10;data2[1]=bbh%10;data2[0]=bbh/10;WS=0xdf; // 1101 1111 ,低电平显示LED=tab[data2[5]];delay(1);WS=0xef; // 1110 1111LED=tab[data2[4]];delay(1);WS=0xf7; // 1111 0111LED=tab_dp[data2[3]];delay(1);WS=0xfb; // 1111 1011LED=tab[data2[2]];delay(1);WS=0xfd; // 1111 1101LED=tab_dp[data2[1]];delay(1);WS=0xfe; // 1111 1110LED=tab[data2[0]];delay(1);}void keyscan() // 键盘扫描{if(key1==0) // 暂停/开始{++kk;while(!key1){display();if(kk==1){TR0=0;if(k1==0||k1==1||k1==2||k1==3) // 显示调节时间{display();}if(k1==4||k1==5||k1==6) // 显示调节闹钟{display_bb();}if(key2==0) // 模式选择(调节时间/闹钟){k1++;while(!key2){if(k1==1) // 第1次按下{sec1=sec; // 保存秒的数值sec=88; // 显示88,表示可以调节秒的数值了display(); // 显示88sec=sec1; // 恢复前一刻秒的数值}if(k1==2){min1=min;min=88;display();delay(1);min=min1;}if(k1==3){hour1=hour;hour=88;delay(1);hour=hour1;}if(k1==4){sec1=bbs; // 保存秒的数值bbs=66; // 显示66,表示可以调节秒的数值了display_bb(); // 显示66bbs=sec1; // 恢复前一刻秒的数值}if(k1==5){min1=bbm;bbm=66;display_bb();delay(10);bbm=min1;}if(k1==6){hour1=bbh;bbh=66;display_bb();delay(10);bbh=hour1;}if(k1==7){k1=0;display();}}}if(key3==0) // 时间/闹钟增加设置{while(!key3){if(k1==1){sec++;// 秒加1if(sec==60)sec=0;display();}if(k1==2){min++;delay(60);if(min==60)min=0;display();}if(k1==3){hour++;delay(60);if(hour==24)hour=0;display();}if(k1==4){bbs++; // 秒加1delay(60);if(bbs==60)bbs=0;display_bb();}if(k1==5){bbm++;delay(60);if(bbm==60)bbm=0;display_bb();}if(k1==6){bbh++;delay(60);if(bbh==24)bbh=0;display_bb();if(k1==7){k1=0;display();}}}if(key4==0) // 时间/闹钟减少设置{while(!key4){if(k1==1){sec--; // 秒加1delay(60);if(sec==0)sec=60;display();}if(k1==2){min--;delay(60);if(min==0)min=60;display();}if(k1==3){hour--;delay(60);if(hour==0)hour=24;display();}if(k1==4){bbs--; // 秒减1delay(60);if(bbs==0)bbs=60;display_bb();if(k1==5){bbm--;delay(60);if(bbm==0)bbm=60;display_bb();}if(k1==6){bbh--;delay(60);if(bbh==0)bbh=24;display_bb();}if(k1==7){k1=0;display();}}}}}if(kk==2){kk=0;k1=0;TR0=1;}}}。
基于51的电子闹钟设计报告(附原理图、PCB图、程序)
![基于51的电子闹钟设计报告(附原理图、PCB图、程序)](https://img.taocdn.com/s3/m/285ae5c32cc58bd63186bd3f.png)
成都信息工程学院第五届嵌入式创新技术大赛基于MCS51的智能电子闹钟设计报告姓名学院班级实物图目录1.电子时钟的设计原理和方法 (1)1.1设计原理 (1)1.2 硬件电路的设计 (1)1.2.1 STC89C51RC简介 (1)1.2.2 键盘电路的设计 (2)1.2.3蜂鸣器驱动电路 (3)1.2.4 数码管驱动电路 (3)1.2.5 电源电路 (4)1.3软件部分的设计 (4)1.3.1主程序部分的设计 (4)1.3.2中断计时器及时间进位 (5)1.3.3 闹钟子函数 (7)1.3.4 按键扫描 (8)1.3.5 时钟闹钟设置 (9)1.3.6 显示数字函数 (10)1.3.7 显示界面函数 (10)1.3.8 闹钟记录及读取 (11)2.硬件调试 (13)附录A:电路原理图 (15)附录B:电路PCB图 (16)附录C:源程序 (17)1.电子时钟的设计原理和方法1.1设计原理系统框图1.2硬件电路的设计1.2.1 STC89C51RC简介STC89C52R CSTC89C51RC是一种带8K闪烁可编程可擦除只读存储器(FPETOM-FlashProgrammabalandErasableReadOnlyMemory )的低电压、高性能CMOS8位微型处理器,即单片机芯片。
单片机的可擦除只读存储器可以反复擦除1000次,内部FLASH 擦写次数为100000次以上。
该芯片使用高密度非易失存储制造技术,与工业标准的MCS-51指令集和输出管脚相兼容。
由于将多功能8位CPU 和闪烁存储器集成在单个芯片中,使得STC89C51RC 成为了一种性价比极高的微型处理器芯片,在许多电路设计中都得到了应用。
STC89C51RC 单片机特点:工作电压:5.5V-3.4V 工作频率:0-40MHz 用户应用程序空间:8K 片上集成128*8RAMISP (在系统可编程)/IAP (在应用可编程),无需专用编程器/仿真器可通过串口(P3.0/P3.1)直接下载用户程序EEPROM 功能共3个16位定时器/计数器,其中定时0还可以当成2个8位定时器使用外部中断4路通用异步串行口(UART ),还可用定时器软件实现多个UART 工作温度范围:0-75℃引脚说明:VCC:供电电压 GND :接地P0:P0是一个8位漏级开路双向I/O 口,低8位地址复用总线端口。
基于51单片机的智能数字闹钟设计与实现
![基于51单片机的智能数字闹钟设计与实现](https://img.taocdn.com/s3/m/33519af6c281e53a5802ffe9.png)
基于51单片机的智能数字闹钟设计与实现摘要单片机自20世纪70年代问世以来,因为单片机极高的性能价格比,越发受到了人们的重视和关注,应用领域广泛、发展很快。
而51单片机是各单片机中最为典型的,也是最具有代表性的一种。
本设计是一款基于AT89C51的智能数字钟,该数字钟表由主控模块、按键模块、定时模块、温度检测模块和显示模块构成。
主控模块由主控芯片AT89C51、晶振电路和复位电路构成;定时模块采用时钟芯片DS1302实现精确定时;用温度传感器DS18B20作为温度采集源,检测当前温度;用液晶显示器1602显示年、月、日、时间及温度。
通过这种方法的实现,使智能数字闹钟的电路简单,性能可靠,实时性好,时间和温度精度高,操作简单。
在Proteus和Keil µvision4的环境下,完成了电路原理图的绘制以及程序的编译后,用焊接的方法在电路板上焊接实物,将Keil µvision4中生成的.hex文件的程序烧到电路中,检测并调试电路,实现智能数字闹钟的功能。
该智能数字闹钟可以应用于人们的生活和工作中,也可通过改装,将智能数字闹钟的性能提高,还可以增加新的功能,让智能数字闹钟显示更多方面的内容与功能,给人们的生活和工作带来更多的方便。
关键词:单片机,时钟芯片,温度传感器,液晶显示器,智能数字钟AT89S52 based Digital Clock Design of IntelligentAbstractAbstractSCM since the advent of the 1970s , because of high performance and low cost single chip , has been more and more people's attention and concern , widely used in the field , has developed rapidly. The microcontroller 51 is the most typical each MCU is the most representative one.The designer is one section based on AT89C51 intelligent digit clock, this clock and watch by the master control module, fixed time the module, the temperature examines the module and the display module constitution. Master control module by master control chip AT89C51, crystal oscillator electric circuit and reset circuit constitution; Fixed time the module uses clock chip DS1302 to realize precisely fixed time; Gathers the source with temperature sensor DS18B20 as the temperature, the examination current temperature; 1602 demonstrate the year, the month, Japan, the time and the temperature with the liquid-crystal display. The method has the advantage of being simple circuit, reliable performance, good real-time, high precision of the time and temperature, simply operation【19】.Under the environment of Proteus and Keil μvision4 , after finishing drawing circuit schematic and compiling program, Welding material on the circuit board by welding method. Then, .Hex files, the generation of Keil µ vision4 ,is made into the circuit. Finally, testing and debugging the circuit, and to realize the function of Intelligent digital alarm clock.The electronic clock can be applied to the general living and working, can also be modified to improve performance add new functions and brings more convenient to people’s life and work.Key Words:NC machining; NC verification; Machining environment; Help files目录摘要........................................................................ Abstract ....................................................................... 第一章引言. 01.1 智能数字闹钟的研究背景和意义 01.2智能数字闹钟的功能 01.3 智能数字闹钟的发展趋势 (1)第二章方案的论证与选择 (1)2.1 方案的论证 (1)2.2 方案的选择 (3)第三章硬件电路的设计 (3)3.1 主控电路模块 (3)3.2 按键电路模块 (6)3.3 定时电路模块 (7)3.4 温度电路模块 (8)3.5 显示电路模块 (10)第四章软件设计 (12)4.1总体系统软件设计 (12)4.1.1 主程序设计 (13)4.1.2 温度采集模块设计 (15)4.1.3 定时模块设计 (17)4.1.4 显示模块设计 (17)第五章系统的安装与调试 (19)5.1 系统硬件的安装与调试 (19)5.2 系统软件的调试 (20)第六章总结与展望 (24)参考文献 (25)致谢..................................................... 错误!未定义书签。
基于51单片机定时器的电子时钟设计
![基于51单片机定时器的电子时钟设计](https://img.taocdn.com/s3/m/279cb1b47d1cfad6195f312b3169a4517723e5e7.png)
基于51单片机定时器的电子时钟设计电子时钟是一种集计时、显示时间等功能于一体的电子设备。
它可以准确地显示当前的时间,并通过定时器控制乃至更新时间。
本文将介绍基于51单片机定时器的电子时钟设计。
设计步骤如下:步骤一:硬件设计首先,需要准备以下硬件元件:1.51单片机:作为主要控制单元;2.DS1302实时时钟芯片:用于计时和保存时间数据;3.16x2字符LCD显示屏:用于显示时间;4.4x4矩阵键盘:用于调整时间和设置闹钟;5.蜂鸣器:用于报时功能;6.电位器:用于调整LCD背光亮度。
将这些硬件元件按照电路图连接起来,注意正确连接引脚和电源。
步骤二:软件设计在51单片机上编写程序,实现以下功能:1.初始化:a.初始化DS1302实时时钟芯片,设置初始时间;b.初始化LCD显示屏;c.初始化矩阵键盘;2.获取时间:a.从DS1302芯片读取当前时间;3.显示时间:a.将时间数据转换为字符,并在LCD上显示出来;4.键盘输入:a.监测矩阵键盘输入,判断用户按下的是哪个键;b.根据不同的键,执行相应的操作,如设置时间、设置闹钟等;5.闹钟功能:a.设置闹钟时间,当当前时间与闹钟时间相同时,触发蜂鸣器报时;b.可以通过按键来设置闹钟时间和开启/关闭闹钟功能。
以上是基本的电子时钟功能,可以根据实际需求进行扩展和添加其他功能。
步骤三:测试与调试步骤四:优化与扩展在基本功能正常运行的基础上,可以对电子时钟进行优化和扩展。
添加一些实用的功能,如温湿度显示、日期显示、闹钟音乐选择等,以提高电子时钟的实用性和用户体验。
总结:本文介绍了基于51单片机定时器的电子时钟设计步骤,包括硬件设计和软件编程。
通过该设计,可以实现准确显示时间、调整时间、设置闹钟等功能。
为了使电子时钟更加实用,可以根据需要进行优化和扩展。
基于51单片机的定时闹钟设计
![基于51单片机的定时闹钟设计](https://img.taocdn.com/s3/m/0fbe5e0b6c85ec3a87c2c593.png)
目录1 系统设计 (1)1.1 实验箱主要组件 (1)1.2 系统框图及说明 (3)1.3 系统软件设计 (3)1.3.1 C51的编程基础 (3)1.3.2 系统软件设图 (4)1.3.3 部分复杂函数流程图 (5)2 系统仿真 (6)2.1 仿真软件 (6)2.2 仿真结果 (7)3 结论 (7)3.1 本课程设计的主要特点及贡献 (7)3.2 改善建议 (7)3.3 自我体会 (8)参考文献 (9)附录 (10)1 单片机定时闹钟程序源代码 (10)2 仿真软件Proteus ISIS使用方法简单介绍 (20)3.1 本课程设计的主要特点及贡献 (7)1 系统设计1.1 实验箱主要组件本课程设计使用的是河海大学常州校区刘玉宏老师设计的单片机课程实验箱中的“基础型实验”部分。
该部分主要由单片机最小系统,LED 数码管显示部分,外部中断控制部分,独立式与行列式键盘按键输入部分,串行口通信部分,蜂鸣器与继电器等部分组成。
详细电路图见图1。
单片机最小系统部分由内含FLASH ROM 的STC89C52RC ,EA 接高电平;各并行口都234567891R910k*812345678161514131211109U10SW-DIP81312U16F 74071110U16E 740798U16D 740756U16C740734U16B 740712U16A 7407D8+5R20100D7+5R1810012J22SIP162738495J1DB9-PINKEY2R 15100+5D6SW5RESETD51N4148MR 1VCC 2GND 3PFI4PFO5WDI 6RST 7WDO 8U9IMP813L +5SCL 6SDA5A12NC 1WP 7VCC 8NC 3GND4U824CXX 30p30pX T 211MC1+1V+2C1-3C2+4C2-5V-6T2OUT 7R2IN8R2OUT9T2IN 10T1IN 11R1OUT 12R1IN 13T1OUT 14GND 15VCC 16U7MAX232E510uE310uE410uE210uR13100+5D11R11100+5D10D9+5R10100456U3B 7400C410NSW9int0C347UR71KTRIG2Q3R4C V o l t5THR6DIS7V C C8G N D1U4NE555KEY1123U3A 7400C210NFC11UFR6150KR5270KTRIG2Q3R4C V o l t5THR 6DIS7V C C8G N D1U2NE555R41KR2100+5S1Q19013234567891R110k*8EA/VP 31X119X218RESET 9RD 17WR16INT012INT113T014T115P101P112P123P134P145P156P167P178P0039P0138P0237P0336P0435P0534P0633P0732P2021P2122P2223P2324P2425P2526P2627P2728PSEN29ALE/P 30TXD 11RXD 10U18031D1SW123451R3150*8SW2D2SW3D3D4SW4TRIG2Q3R4C V o l t5THR6DIS7V C C8G N D1U5NE555R81KC547USW10int1C610NRO 1RE 2DE 3DI4GND5A 6B 7VCC 8U6RS485VCC +5L2L3L4L6L5L7L8L18910U3C 7400234567891R12150*8+5RXD 23248550ms 50ms f=1hz clk-offclk-on232OUT 232INX2X1+5485A485B RXDX2X1232IN>232OUT<TXDDOGSDASCL EN485DOG SDA SCL RESETT0T1INT0INT1RESETGNDVCCGND VCCGND VCC GND TTLOUT>TTLIN<DB9RX DB9TX+5T0+5+5T1+5P10P11P12P13P10P11P12P13+5+5INT0INT1EN485TXD P20P21P22P23P24P25P26P27P20P21P22P23P24P25P26P27图1 实验箱“基础型实验”部分电路图加了10K的上拉电阻;晶振为11.0592M。
51单片机24小时可调定时闹钟
![51单片机24小时可调定时闹钟](https://img.taocdn.com/s3/m/9c5384a2998fcc22bcd10dbc.png)
51单片机24小时可调定时闹钟#include<reg51.h> unsigned charseg[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};unsigned char con[6]={0x1,0x2,0x4,0x8,0x10,0x20};unsigned char mm=0; unsigned char ss=0; unsigned char hh=0; unsigned char count=100; unsigned char T=01,m; sbit S1=P3^3;sbit S2=P3^4;sbit S3=P3^5;sbit S4=P3^6;sbit bell=P3^0;sbit S5=P3^7;main(){TMOD=1;TH0=-10000>>8;TL0=-10000; //10毫秒间隔EA=1;ET0=1;TR0=1;while(1);}void isr_time0() interrupt 1 //24小时{unsigned int i=0,j;unsigned char time[6];TH0=-10000>>8;TL0=-10000;count--;if(count==0){count=100;ss++;if(ss==60){ss=0;mm++;if(mm==60){mm=0;hh++;if(hh==24)hh=0;}}if(S5==0) //定时T点{T++;}if(hh==T) //定时T点闹铃{ unsigned int a,b,y;if(mm>=01){m=0;} //分大于或等于01就把m清零,若不成立向下执行if(mm==00){if(m<10) //闹10次{do{ //循环-变频m++;ss++;for(a=0;a<1250;a++){bell=!bell;for(b=0;b<24;b++);} //取反for(y=0;y<1250;y++){bell=!bell;for(b=0;b<25;b++);}for(a=0;a<1250;a++){bell=!bell;for(b=0;b<26;b++);}for(a=0;a<1250;a++){bell=!bell;for(b=0;b<27;b++);}}while(m<10); //闹10次结束}}}if(S1==0){hh++; //时钟加if(hh==23){hh=0;}}if(S2==0){mm++; //分钟加if(mm==60){ mm=0;}}if(S3==0){hh--; //时钟减if(hh==0){hh=23;}}if(S4==0){mm--; //分钟减if(mm==0){ mm=60;}}}time[3]=hh/10;time[2]=hh%10; //显示位time[1]=mm/10;time[0]=mm%10; for(i=0;i<6;i++) {P2=con[i];if(i==1||i==2) //小数点P1=seg[time[i]]&0x7f;else P1=seg[time[i]];for(j=100;j>0;j--); }}。
基于51单片机电子闹钟的设计.
![基于51单片机电子闹钟的设计.](https://img.taocdn.com/s3/m/4dea5979c850ad02de80417b.png)
前言20世纪末,电子技术获得了飞速的发展。
在其推动下,现代电子产品几乎渗透了社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高。
同时也使现代电子产品性能进一步提高,产品更新换代的节奏也越来越快。
时间对人们来说总是那么宝贵,工作的忙碌性和繁杂性容易使人忘记当前的时间。
忘记了要做的事情,当事情不是很重要的时候,这种遗忘无伤大雅。
但是,一旦重要事情,一时的耽误可能酿成大祸。
例如,许多火灾都是由于人们一时忘记了关闭煤气或是忘记充电时间。
所以有必要制作一个定时系统。
随时提醒这些容易忘记时间的人。
而钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能。
诸如定时自动报警、按时自动打铃、时间程序自动控制、定时广播、定时启闭电路、定时开关烘箱、通断动力设备,甚至各种定时电气的自动启用等等。
所有这些,都是以钟表数字化为基础的。
因此,研究数字钟及扩大其应用,有着非常现实的意义。
随着生活水平的提高,人们越来越追求人性化的事物。
传统的时钟已不能满足人们的需求。
而现代的时钟不仅需要模拟电路技术和数字电路技术而且更需要单片机技术,增加数字钟的功能。
利用软件编程尽量做到硬件电路简单稳定,减小电磁干扰和其他环境干扰,减小因元器件精度不够引起的误差,但是数字钟还是可以改进和提高如选用更精密的元器件。
但与机械式时钟相比已经具有更高的准确性和直观性,且无机械装置,具有更长的使用寿命,因此得到了广泛的使用。
数字钟通过数字电路实现时、分、秒。
数字显示的计时装置,广泛用于个人家庭、车站、码头办公室等公共场所成为人们日常生活中不可少的必需品。
由于数字集成电路的发展和石英晶体振荡器的广泛应用,使得数字钟的精度远远超过老式钟表。
多功能数字钟的应用非常普遍。
由单片机作为数字钟的核心控制器,通过它的时钟信号进行实现计时功能,将其时间数据经单片机输出,利用显示器显示出来。
通过键盘可以进行校时、定时等功能。
输出设备显示器可以用液晶显示技术和数码管来显示技术。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
课程设计任务书系别:机电系专业:电信0901学生姓名:课程设计题目:基于 51 单片机定时闹钟设计起迄日期 : 6 月 4 日~ 6 月 17 日课程设计地点: 教学实验楼 B502 楼指导教师 :下达任务书日期: 2012 年 6 月 4 日目录1.摘要....................................................错误!未定义书签。
2.设计目的要求.............................................................23.设计实现方案.............................................................33.1系统总框图............................................................33.2原理及工作过程说明....................................................43.3元器件功能说明........................................................43.3.1AT89C51单片机....................................................43.3.21602LCD液晶显示器.................................................73.3.3其他重要元件.....................................................84.软件设计................................................................114.1程序流程图...........................................................124.2源代码...............................................................125.系统仿真................................................................226.心得体会................................................................357.参考文献................................................错误!未定义书签。
1.摘要本设计师定时闹钟的设计,由单片机AT89C51芯片和LCD、LED显示器,辅以必要的的电路,构成一个单片机定时闹钟。
电子钟可采用数字电路实现,也可以采用单片机来完成。
LCD显示“时”,“分”,LED闪动来做秒计数,定时时间到能发出警报声或者启动继电器,从而控制电器的启停。
现在是自动化高度发达的时代,特别是电子类产品都是靠内部的控制电路来实现对产品的控制,达到自动运行的目的,这就需要我们这里要做的设计中的电器元件及电路的支持。
在这次设计中主要是用AT89S51来进行定时,也结合着其他辅助电路实施控制,在定时的时候,按一下控制小时的键对小时加一;按一下控制分钟的键对分钟加一;到达预设的时间,此电路就会发出报警声音提示已经到点。
关键字:定时闹钟AT89C51LCDSummary:Theregularalarmclockdesignersdesign,bythemicrocontrollerAT89C51chipandLCD,LEDdisplay,combinedwiththenecessarycircuitrytoformasingle-chiptimeralarmclock.Clockcanbedigitalcircuit,themicrocontrollercanalsobeusedtocomplete.LCDdisplay"when","sub",LEDflashtodothesecondcount,regulartimetobeabletosoundanalarmorstartrelaytocontroltheelectricalstartandstop.Nowistheeraofhighlydevelopedautomation,especiallyelectronicproductsarerelyingontheinternalcontrolcircuitrytoachievecontroloftheproducttoachievethepurposeofautomaticoperation,whichrequiresustodothedesignofelectricalcomponentsandcircuitstosupport.InthisdesignitismainlyusedtocarryoutregularAT89S51,butalsocombinedwithotherauxiliarycircuitimplementationofthecontrol,intime,whenyouclickacontrolbuttononthehourplusonehour;clickthebuttononthecontrolminutesplusoneminute;reachpresettime,thiswillsoundanalarmcircuithaspromptedthepoint,.Keywords:timeclockAT89C51LCD2.设计目的要求1 ).本次课程设计应达到的目的:1、综合运用相关课程中所学到的理论知识去独立完成某一设计课题;2、通过查阅手册和相关文献资料,培养学生独立分析和解决问题的能力;3、进一步熟悉单片机和常用接口电路,加深对专业知识和理论知识学习的认识和理解;4、学会电路的安装与调试;5、进一步熟悉电子仪器的正确使用;6、学会撰写课程设计的总结报告;7、培养严肃认真的工作作风和严谨的科学态度。
2 ).设计要求使用AT89C51单片机结合字符型LCD显示器设计一个简易的定时闹钟LCD时钟,若LCD选择有背光显示的模块,在夜晚或黑暗的场合中也可使用。
定时闹钟的基本功能如下:显示格式为“时时:分分”。
由LED闪动来做秒计数表示。
一旦时间到则发出声响,同时继电器启动,可以扩充控制家电开启和关闭。
程序执行后工作指示灯LED闪动,表示程序开始执行,LCD显示“00:00”,按下操作键K1~K4动作如下:(1)K1设置现在的时间。
(2)K2显示闹钟设置的时间。
(3)K3设置闹铃的时间。
(4)K4闹铃ON/OFF的状态设置,设置为ON时连续三次发出“哗”的一声,设置为OFF发出“哗”的一声。
设置当前时间或闹铃时间如下。
(1)K1时调整。
(2)K2分调整。
(3)K3设置完成。
(4)K4闹铃时间到时,发出一阵声响,按下本键可以停止声响。
本项目的难点在于4个按键每个都具有两个功能,以最终实现菜单化的输入功能。
采用通过逐层嵌套的循环扫描,实现嵌套式的键盘输入。
3.实现方案3.1系统总框图图1原理图3.2原理及工作过程说明(1)定时闹钟的基本功能如下:(a)使用LCD液晶显示器来显示现在的时间。
(b)程序执行之后显示“Time:00:00”;并且LED闪烁,表示开始已经计时。
( c)由L ED 闪动来做秒计数表示。
(2)按键功能如下:按键K1设置现在的时间和时调整;按键K2显示闹钟设置的时间和分调整;按键K3设置闹铃的时间和设置完成;按键K4闹铃ON/OFF的状态设置,设置为ON时连续三次发出“哗”的一声,设置为OFF发出“哗”的一声和闹铃时间到时,发出一阵声响,按下本键可以停止声响。
(3)调整计时器时间如下:按下K1键,然后按K1调整小时,K2调整分钟,按下K3表示时间设置完成。
(4)调整闹钟时间设置如下:再次按下K3开始闹中设置,LCD下一行显示“Alarm:00:00”按下K1设置小时,按一下K2设置分钟,再次按下K3设置完成,并且设置时间消失,当再次按一下K2时“Alarm:00:00再次显示并马上消失。
按一下K4关闭闹钟,再次按下打开闹钟。
3.3元器件功能说3.3.1AT89C51单片机本设计的核心硬件就是8051芯片,这里选择了AT89C51,AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROMFalshProgrammableandErasableReadOnlyMemory)的低电压,高性能CMOS8位微处理器,俗称单片机。
该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。
由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
3.3.1.1AT89C51引脚图3.3.1.2引脚功能说明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口作为第八位地址接收。
P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。
并因此作为输入时,P2口的管脚被外部拉低,将输出电流。
这是由于内部上拉的缘故。
P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。
在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。
P2口在FLASH编程和校验时接收高八位地址信号和控制信号。
P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。
当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。
作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。