基于AT89S52数字钟的设计与制作
- 格式:doc
- 大小:444.00 KB
- 文档页数:5
摘要单片机在电子产品中的应用越来越广泛,特别是51系列的单片机,由于其使用方便、价格低廉等优势,在市场上占有很大的份额。
AT89S52就是51系列中的一个比较成熟的型号,它完全兼容51单片机的指令。
本文详细介绍了一款基于AT89S52单片机数字钟的设计,通过多功能数字钟的设计思路,详细叙述了系统硬件、软件的具体实现过程。
论文重点阐述了数字钟硬件中时钟模块、和相关控制模块等的模块话设计与制作;软件同样采用模块话的设计,包括中断模块、时间调整模块设计,并采用简单流通性强的C语言编写实现。
本设计实现了用LCD1602显示器显示年、月、日、星期、时、分、秒的显示功能以及跑表功能。
关键词AT89S52单片机/数字钟/LCD1602/DS1302时钟芯片目录第一章工程训练目的、要求概述 (3)1.1 基本目的 (3)1.2 基本要求 (3)第二章设计方案的选择和确定 (4)2.1、单片机选择与论证 (4)2.2、时钟实现的选择与论证 (4)2.3、显示的选择与论证 (4)第三章系统硬件设计 (5)3.1器件选型 (5)3.2器件介绍 (5)3.2.1 单片机AT89S52 (5)3.2.2 LCD1602显示模块 (6)3.2.3 时钟芯片DS1302 (6)第四章系统的软件设 (8)4.1、proteus仿真图 (8)4.2、设计流程图 (8)第五章PCB板的制作与元器件的安装 (11)5.1、PCB板的制作流程介绍 (11)5.2、protel原理图 (11)5.3、生成PCB图及制板 (11)5.4、安装元器件 (11)第六章性能测试、故障分析及作品展示 (12)6.1、故障分析 (12)6.2、作品展示 (12)第七章心得体会 (13)附录1:工程训练成绩评定表 (14)附录2:时钟设计程序 (15)第一章工程训练目的、要求概述1.1 基本目的此次工程训练选择使用52系列单片机来制作日历时钟。
学生通过实训了解相关芯片的基本结构、工作原理、特性和参数以及由它们构成的日历时钟的工作原理、原理图的设计和参数的计算、元器件的选用、计算机软件实现硬件的仿真、PCB板的设计、电路的安装和调试,最后完成达到技术指标要求的标准产品。
XX大学XXX学院单片机课程设计———电子时钟报告姓名:XXX学号:XXXXX班级:XXXXXX1、课程设计的目的该课程设计是利用MCS-51单片机内部的定时/计数器、中断系统、以及外围的按键和LED显示器等部件,设计一个单片机电子时钟。
设计的电子时钟通过数码管显示,并能通过按键实现设置时间和暂停、启动控制等。
2、课程设计具体要求用定时/计数器T0,工作于定时,采用方式1,对12MHZ的系统时钟进行定时计数,初值设为XXYY(自己计算)。
形成定时时间为50ms。
用片内RAM的7BH单元对50ms 计数,计20次1秒钟到,然后对秒计数器78H单元加1,秒计数器加到60后向分进位,则分计数器79H单元加1而秒计数器78H单元清零;分计数器加到60后又向时进位,则时计数器7AH单元加1而分计数器79H单元清零;时计数器加到24则时计数器清零。
然后把秒、分、时计数器分成十位和个位放到8个数码管的显示缓冲区,通过数码管显示出来。
显示格式为小时十位、小时个位---分十位、分个位---秒十位、秒个位。
在处理过程中加上了按键判断程序,能对按键处理。
3、mcs-51单片机系统简介MCS-51系列单片机是美国Intel公司在1980年推出的高性能8位单片机,它包含51和52 两个子系列。
对于51子系列,主要有8031、8051、8751 三种机型,它们的指令系统与芯片引脚完全兼容,仅片内程序存储器有所不同,8031芯片不带ROM,8051芯片带4KB的ROM,8751芯片带4KB的EPROM。
51子系列单片机的主要特点如下。
对于52子系列,有8032、8052、8752 三种机型。
52子系列与51子系列相比大部分相同,不同之处在于:片内数据存储器增至256B;8032芯片不带ROM,8052芯片带8KB的ROM,8752芯片带8KB的EPROM;有3个16位定时器/计数器;6个中断源。
4、mcs-51单片机内部定时/计数器中断系统简介1.MCS-51系列中51子系列有两个16位的可编程定时/计数器:定时/计数器T0和定时/计数器T1,52子系列有三个,还有一个定时/计数器T2。
摘要本课程设计要求基于STC89C52单片机实现用8位数码管进行时钟显示。
采用了AT89C52单片机和DS1302实时时钟芯片,使用5V电源进行供电。
设计的时钟可以通过按键切换,数码管显示北京时间(时、分、秒)以及月份、日期、星期,并且可以实现时钟的校准功能。
主要的程序有:时钟芯片驱动程序,数码管显示及驱动程序等。
设计成果制作成可供实际检测的实物电路板。
关键词:单片机;DS1302;时钟电路;数码管显示;AbstractThe requirements of the curriculum design is based on STC89C52 single chip microcomputer, using 8-bit digital tubes to display clock. Using AT89C52 single chip microcomputer and DS1302 real-time clock chip, and the use of 5V power supply. Design of the clock by means of the key switches, display Beijing time ( hours,minutes, seconds ) and month, date, week, with digital tubes, and also can achieve the function of clock calibration. The main procedures : Clock Chip Driver, the digital display and control drivers. The design results can be used in the practical detection which have been made into a real circuit board.Key words:single chip microcomputer; DS1302; clock circuit; digital tube display;目录引言 (1)1 电子钟功能及总体方案介绍 (2)电子钟功能介绍 (2)基本功能要求 (2) (2)总体方案介绍 (2) (2) (2)2 时钟系统的硬件设计 (2)控制芯片的选择 (2)AT89S52单片机性能与特点 (2) (3)AT89S52引脚的功能说明 (3)存储器的配置 (5)DS1302的结构及工作原理 (5)引脚功能及内部结构 (5)DS1302的控制字节 (6)74HC573结构及工作原理 (7) (7) (7)数码管的基本介绍 (7)时钟电路设计 (8) (8) (8) (9)3 软件模块设计 (10)主程序设计 (10)时钟芯片实时时间 (10)4 硬件组装 (11)元件清单 (11)电路板 (11)5 课程设计结果及总结 (12) (12) (12)参考文献 (13)引言21世纪,电子技术获得了飞速的发展,在其推动下,现代电子产品几乎渗透了社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高,同时也使现代化电子产品性能进一步提高,产品更新换代的节奏也越来越快。
单片机技术课程设计说明书数字电子钟系、部:电气与信息工程系学生姓名:张海龙指导教师:宋绍明专业:自动化班级: 0803完成时间:2010年12月25日摘要本设计是一款多功能数码管,可应用于数字电子钟,数字频率计,数字电压表,交通灯,数字式秒表,计数器,数字温度计等方面。
本人的意向是制作一款简单方便的数字温度计所以只叙述数字温度计方面的制作。
本数码管所采用的主要元件有传感器18B20,单片机AT89S52,,四位共阳极数码管2个,蜂鸣器一个,排阻2个,数据口一个,开关一个,电容电阻、三极管、发光二极管、排针、触发开关若干。
单片机模块中最常见的是数字钟,数字钟是一种用数字电路技术实现时、分、秒计时的装置,与机械式时钟相比具有更高的准确性和直观性,且无机械装置,具有更更长的使用寿命,因此得到了广泛的使用。
数字钟是采用数字电路实现对“时”、“分”、“秒”数字显示的计时装置。
数字钟的精度、稳定度远远超过老式机械钟。
在这次设计中,我们采用LED数码管显示时、分、秒,以24小时计时方式,根据数码管动态显示原理来进行显示,用12MHz的晶振产生振荡脉冲,定时器计数。
在此次设计中,电路具有显示时间的其本功能,还可以实现对时间的调整。
数字钟是其小巧,价格低廉,走时精度高,使用方便,功能多,便于集成化而受广大消费的喜爱,因此得到了广泛的使用。
关键词单片机;数字钟AbstractThis design is a new multi-functional digital tube, can be applied to digital electric clock, digital frequency meter, digital voltmeter, lights, digital stopwatch, counter, digital thermometer, etc. My intention is made of a simple probiotic yogurts probiotic yogurts convenient digital thermometer so only narrative digital thermometer aspects of production. This digital tube adopted by the main components 18B20 had sensors, monolithic integrated circuit AT89S52,, four altogether anode digital tube 2, buzzer a, exclusion 2, data mouth a, switch a, capacitance resistance, triode, light emitting diode, row needles, triggering switch is some. SCM module are the most common digital clock, a digital clock is a kind of digital circuit technology implementation, minutes and seconds timing device, and the mechanical clock compared with higher accuracy and intuitive, and without a mechanical device, has more longer service life, so it has been widely used. A digital clock is adopting digital circuit implementation of ", "" points" and "second" digital display timer device. A digital clock precision, stability than old mechanical clock. In this design, we adopt LED digital display when tube, minutes and seconds to 24 hours timer way, according to digital tube dynamic display elements shows, with the 12MHz crystals produce oscillation pulse, the timer counting. In this design, circuit has show time its this function can also realize to the time of adjustment. A digital clock is its small, cheap, when high precision, easy to use, the function is much, facilitate integration and receives general consumer's favorite, so it has been widely used.Key word microcontroller;digital clock目录第一章电子钟系统总体方案的设计 (1)1.1 设计任务 (1)1.2 功能要求 (1)1.3 总体方案的设计 (1)1.3.1 单片机的选择 (1)1.3.2 单片机的基本结构 (1)第二章数字钟硬件电路的设计 (5)2.1 最小系统设计 (5)2.1.1 整体设计 (5)2.1.2外接晶体引脚 (5)2.1.3 复位RST 9 (6)2.1.4 输入输出引脚 (6)2.2 LED显示电路 (7)2.3 键盘控制电路 (9)第三章系统软件的设计 (10)3.1 监控程序流程图 (10)3.2 显示“P.”主程序流程框图 (11)3.3 键扫描子程序流程图 (12)3.4 定时器0服务程序流程图 (13)3.5 程序清单 (14)第四章系统的仿真及调试 (20)4.1 仿真软件的简介 (20)4.2 电子钟系统PROTUES仿真结果 (21)4.3 系统误差分析 (21)结束语 (22)参考文献 (23)致谢 (24)附录一系统硬件电路原理图附录二硬件电路元件清单第一章电子钟系统总体方案的设计1.1设计任务设计一个具有特定功能的电子钟。
目录摘要 (1)关键词 (1)Abstract (1)Key words. (1)1. 引言 (2)2. 系统总体设计方案 (4)系统可实现的功能 (4)2.2 数字时钟的硬件系统框图 (5)2.3各元器件的选用 (6)2.3.1 单片机AT89C52 (6)2.3.2 时钟芯片DS1302 (9)2.3.3 显示器的结 (10)3. 系统硬件设计 (11)3.1单片机复位电路的设计 (11)3.1.1 设计原理 (11)3.1.2 方案的比较与选择 (11)3.1.3 复位电路与单片机的连接 (11)3.2单片机时钟电路的设计 (12)3.2.1振荡器电路原理 (12)3.2.2 DS1302时钟电路 (13)3.3 显示器和单片机的接口电路 (14)3.3.1 显示电路 (14)3.3.2 显示器的接入 (15)4. 系统软件设计 (16)4.1软件系统中的主模块设计 (16)4.1.1 主模块的C语言实现 (16)5. 系统的实现 (18)5.1 电路的仿真 (18)6. 总结 (18)参考文献 (18)致谢: (20)液晶显示的数字钟的设计与实现(湖南人文科技学院湖南娄底)摘要:数字钟是一种用数字电路技术实现时、分、秒计时的装置,与机械式时钟相比具有更高的准确性和直观性,且无机械装置,具有更长的使用寿命,因此得到了广泛的使用。
本文介绍了一款基于AT89C52单片机数字钟的设计,通过多功能数字钟的设计思路,详细叙述了系统硬件、软件的具体实现过程。
软件采用简单流通性强的C语言编写实现。
本设计实现了年、月、日和时、分、秒的显示功能。
并且运用Proteus软件进行仿真,通过对比实际的时钟,查找出了误差的来源,确定了调整误差的方法,尽可能的减少误差,使得系统可以达到实际数字钟的允许误差范围内。
关键词:AT89C52单片机数字钟 Proteus.The Design and Implementation of LCD Digital ClockFang He(Hunan Institute of Humanities Science and Technology,Loudi,Hunan) Abstract:A digital clock is a kind of device which is used by digital circuit technology to achieve the timing . It is higher than the mechanical clock in accuracy and intuitive . And it has no machinery and has more longer service life, so it has been widely used . The design of LCD digital clock based on SCM of AT89C52 was introduced in the paper , the specific process of how the system hardware and software achieved were detailed description through the design of multifunction digital clock. Software design used the C language to achieve because of its simple and strong negotiability. In this design, the functions of the year, month, day , hour, minute and seconds display have been achieved.,andthe Proteus software has been used to simulate. By comparing the actual clock, we can find out the source of the error and determine the method of adjusting error, reduce errors as much as possibly, so this system can achieve a practical digital clock with error within the permissible range.Key words :AT89C52 microcontroller; Digital clock; Proteus .1引言现今数字钟已成为人们日常生活必不可少的必需品,广泛用于个人家庭以及办公室等公共场所,给人们的生活、学习、工作、娱乐带来了极大的方便,由于数字集成技术的发展和采用先进的石英技术,使数字钟具有走时准确、性能稳定、携带方便等特点,它还应用于计时、自动报时及自动控制等各个领域,尽管目前的市场上已经有现成的数字钟集成电路芯片出售,价钱便宜、使用方便,但鉴于数字钟集成电路的基本电路包含了数字电路的主要部分,因此进行数字的设计是必要的,研究数字钟及扩大其应用有着非常现实的意义。
摘要单片机在电子产品中的应用越来越广泛,特别是51系列的单片机,由于其使用方便、价格低廉等优势,在市场上占有很大的份额。
AT89S52就是51系列中的一个比较成熟的型号,它完全兼容51单片机的指令。
本文详细介绍了基于AT89S52单片机的数字电子钟的设计,本电子钟可以实现日期、时间的显示和调整,带有整点提示和一个闹钟,并且可以显示当前气温。
本设计包括硬件设计和软件设计两部分。
主要硬件有:三端稳压器LM7805、AT89S52单片机、字符型液晶显示模块HY1602A、单总线数字温度计DS18B20和若干按键等。
软件大致思路为:使用12MHz的晶振,单片机内部的定时器0工作在方式1,每计数50000个机器周期(即50ms)产生一次中断,中断20次就是一秒,这样就可以实现精确计时的目的。
用数字温度计DS18B20测量当前气温,在把实时数据显示在LCD1602上的同时,不断扫描按键,如果有按键按下,则对按键做出相应的响应。
关键字:单片机;电子钟;测温; LCD1602;AbstractMCU in the application of electronic products becomes more widely, particularly the 51 series of MCU, because of its ease of use, low prices and other advantages,it’s in a large market share. AT89S52 is a more mature models in the51series, it is fully compatible with the directive MCU 51.This paper describes the MCU based on the AT89S52 the design of digital electronic clock, the electronic clock can be achieved date, time and adjust the show, it also has the exact point timekeeping and a clock,for the better it can display the current temperature.The design includes hardware and software design in two parts. Main hardware: three-terminal regulator LM7805, AT89S52 MCU, character LCD module HY1602A, single-bus digital thermometer DS18B20 and a number of buttons. the general idea for Software: by use of 12 MHz crystal, the MCU's internal timer 0 works in the methods 1, each count 50,000 machine cycle (50 ms) resulted in an interruption, Composition a second by interruptting 20 times, so that you can achieve precise The purpose of time. After DS18B20 digital thermometer measuring the current temperature,it will be displayed the real-time data on the LCD1602 at the same time, and constantly scan button, if a button is depressed, it will be produce the corresponding response with the button.Keywords: MCU; electronic clock; Temperature measure; LCD1602;目录摘要 (i)Abstract ................................................................................................................ i i 1 绪论 (1)1.1 设计要求 (1)1.2 设计思路 (1)1.3 设计重难点 (2)2 硬件设计 (3)2.1 器件选型 (3)2.2 硬件总图 (3)2.3 器件介绍 (4)2.3.1 电源模块 (4)2.3.2 单片机AT89S52 (5)2.3.3 数字式温度传感器DS18B20 (12)2.3.4 LCD1602显示模块 (15)3 软件设计 (19)3.1 软件设计思路 (19)3.1.1 实现功能 (19)3.1.2 显示状态 (19)3.1.3 定义变量 (19)3.1.4 接线方式 (20)3.1.5 编程思路 (20)3.2 主程序流程图 (21)3.3 程序清单及注释 (22)3.3.1 主程序“电子钟.C” (23)3.3.2 延时子程序“DELAY.C” (39)3.3.3 扫描按键子程序“KEY_SCAN.C” (40)3.3.4 温度测量子程序“DS18B20.C” (41)3.3.5 液晶显示子程序“LCD1602.C” (43)4 精度分析 (49)4.1 误差来源 (49)4.1.1 硬件误差 (49)4.1.2 软件误差 (49)4.1.3 消除误差的办法 (49)5 总结与展望 (52)致谢 (53)参考文献 (54)附录:硬件电路设计图 (55)1 绪论“一寸光阴一寸金,寸金难买寸光阴”!时间对于我们每一个人都是非常宝贵的,所以钟表作为人们掌握时间的工具就显得十分重要!钟表的出现已经有几百年历史,尤其是摆钟和后来的怀表,可以称作钟表中的经典,不仅大方实用,而且制作精美。
单片机原理课程设计题目: 基于AT89S52的电子时钟设计姓名:学院: 工学院专业: 自动化班级: 自动化01,02班学号:指导教师:2013 年6月15日南京农业大学教务处制目录摘要 (3)关键词 (3)Abstract (3)Key words (4)引言 (4)1.设计要求与内容 (4)1.1设计要求 (4)1.2 设计内容 (4)2.系统的设计与实现 (4)2.1 电路设计框图 (5)2.2 系统概述 (5)2.3 主要单元电路 (5)2.3.1 AT89S52单片机主控制模块 (5)2.3.2 时钟电路模块 (7)2.3.3 LCD显示模块 (7)2.3.4 温度模块 (10)2.3.5 键盘模块 (10)2.3.6 蜂鸣器模块 (12)3.系统的程序设计 (13)3.1程序流程框图...................................... 错误!未定义书签。
3.2 部分程序设计 (14)4.实物展示 (14)5.实习心得体会 (18)致谢 (19)参考文献 (19)附录 (19)基于AT89S52的电子时钟设计自动化魏贤盼谷雄飞指导教师胡飞吕成绪摘要:单片机在电子产品中的应用越来越广泛,其具有使用方便、价格低廉等优势,在市场上占有很大的份额。
A T89S52就是51系列中的一个比较成熟的型号,它完全兼容51单片机的指令。
本设计是基于AT89S52单片机的一个多功能实时时钟,包含DS1302时钟芯片、LCD12864液晶屏、DS18B20温度传感器等模块,能实现秒表、整点报时、闹铃、显示当前温度、调整时间等功能,所有功能均可通过按键进行操作。
本设计实现了日常生活所需的基本功能,给大家带来方便,具有整体性好、人性化强、可靠性高等优点。
关键词:电子时钟A T89S52 DS1302 LCD12864 DS18B20Electronic clock system design based on AT89S52Students majoring in automationWei Xianpan Gu XiongfeTutor Hu Fe LvChengXuAbstract: MCU in the application of electronic products becomes more widely, which is of its ease of use, low prices and other advantages, so it takes a large market share. AT89S52 is a more mature model in the 51-series, and it is fully compatible with the directive MCU 51.The design is a multi-function real time clock based on AT89S52, including the three main parts—DS1302, LCD12864, DS18B20,and so on. It can realize the followed functions, including stopwatch, alarm at the whole point, alarm clock, a display of current temperature, adjust the time and so on. All thefunctions can be realized by the keys. The design meets the need of daily life, and brings convenience to everyone. The good integrity, strong humanization and high reliability are the main merits of the electronic clock.Key words:Electronic clock A T89S52 DS1302 LCD12864 DS18B20引言随着科技的快速发展,时间的流逝,从观太阳、摆钟到现在电子钟,人类不断研究,不断创新纪录。
基于AT89S52单片机的智能数字电子时钟设计
(1)数字钟实现对年、月、日、时、分、秒、星期显示的计时装置,由于数字集成电路的发展和石英晶体振荡器的广泛应用,使得数字钟的精度,远远超过老式钟表,钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能。
(2)诸如定时自动报警、时间程序自动控制、自动起闭路灯、通断动力设备、甚至各种定时电气的自动启用等,所有这些,都是以钟表数字化为基础的。
因此,研究数字钟及扩大其应用,有着非常现实的意义。
利用AT89S52单片机和LCD1602电子显示屏实现电子时钟,可由按键进行调时和12/24小时切换。
功能:(1)实现年、月、日、星期、时、分、秒的显示;
(2)实现调时功能;
(3)实现12/24小时制切换;
(4)实现整点报时功能。
设计方案:
器件选择(主要器件)(1)AT89S52单片机
(2)LCD1602液晶屏
AT89S521602LCD分为带背光和不带背光两种,基控制器大部分为HD44780,带背光的比不带背光的厚,是否带背光在应用中并无差别。
1602LCD主要技术参数:显示容量:162个字符,芯片工作电压:4.55.5V,工作电流:2.0mA(5.0V),模块最佳工作电压:5.0V,字符尺寸:2.954.35(WH)mm
LCD1602引脚图第1脚:VSS为地电源。
第2脚:VDD接5V正电源。
第3脚:VL为液晶显示器对比度调整端,接正电源时对比度最弱,接地时对比度最高,对比度过高时会产生鬼影,使用时可以通过一个10K的电位器调整对比度。
课程设计(论文)说明书题目:基于AT89S52单片机实现用数码管显示时钟院(系):专业:学生姓名:学号:指导教师:职称:2011年 12月15日摘要本课程设计要求基于STC89C52单片机实现用8位数码管进行时钟显示。
采用了AT89C52单片机和DS1302实时时钟芯片,使用5V电源进行供电。
设计的时钟可以通过按键切换,数码管显示北京时间(时、分、秒)以及月份、日期、星期,并且可以实现时钟的校准功能。
主要的程序有:时钟芯片驱动程序,数码管显示及驱动程序等。
设计成果制作成可供实际检测的实物电路板。
关键词:单片机;DS1302;时钟电路;数码管显示;AbstractThe requirements of the curriculum design is based on STC89C52 single chip microcomputer, using 8-bit digital tubes to display clock. Using AT89C52 single chip microcomputer and DS1302 real-time clock chip, and the use of 5V power supply. Design of the clock by means of the key switches, display Beijing time ( hours, minutes, seconds ) and month, date, week, with digital tubes, and also can achieve the function of clock calibration. The main procedures : Clock Chip Driver, the digital display and control drivers. The design results can be used in the practical detection which have been made into a real circuit board.Key words:single chip microcomputer; DS1302; clock circuit; digital tube display;目录引言 (1)1 电子钟功能及总体方案介绍 (2)1.1 电子钟功能介绍 (2)1.1.1 基本功能要求 (2)1.1.2扩展功能要求 (2)1.2 总体方案介绍 (2)1.2.1计时方案 (2)1.2.2按键/显示方案 (2)2 时钟系统的硬件设计 (2)2.1 控制芯片的选择 (2)2.1.1 AT89S52单片机性能与特点 (2)2.1.2单片机的内部结构 (3)2.1.3 AT89S52引脚的功能说明 (3)2.1.4 存储器的配置 (5)2.2 DS1302的结构及工作原理 (5)2.2.1 引脚功能及内部结构 (5)2.2.2 DS1302的控制字节 (6)2.3 74HC573结构及工作原理 (7)2.3.1高性能硅门COMS器件介绍 (7)2.3.2引脚结构图及其功能 (7)2.4 数码管的基本介绍 (7)2.5 时钟电路设计 (8)2.5.1时钟芯片通信电路 (8)2.5.2按键调时电路设计 (8)2.5.3显示模块的电路设计 (9)3 软件模块设计 (10)3.1 主程序设计 (10)3.2 时钟芯片实时时间 (10)4 硬件组装 (11)4.1 元件清单 (11)4.2 电路板 (11)5 课程设计结果及总结 (12)5.1结果展示 (12)5.2课程设计总结 (12)谢辞 (13)参考文献 (14)引言21世纪,电子技术获得了飞速的发展,在其推动下,现代电子产品几乎渗透了社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高,同时也使现代化电子产品性能进一步提高,产品更新换代的节奏也越来越快。
基于AT89S52数字钟的设计与制作
作者:王少炯
来源:《山东工业技术》2015年第16期
摘要:采用纯数字集成电路设计制作数字钟电路较复杂,而单片机数字钟只用了较简单的硬件,通过编写C程序可实现完善的功能。
关键词:数字钟;AT89S52;C程序、
0 前言
在以前很多杂志上都介绍了数字钟的制作,其电路或者较为复杂,或者所选的单片机很多编程器不支持,不便于初学者自制。
本文设计的数字钟具有电路简单、成本低(全部元件近30元)、元件易购、功能全、走时精度高的特点,很适合万能实验板自制。
1 硬件系统设计:
(1)元件清单:
(2)电路原理图如图1。
本数字数字钟采用ATMEL公司的AT89S52为主芯片。
AT89S52为40脚双列直插封装的单片机,与MCS-51单片机产品兼容,8K字节在系统可编程Flash存储器,1000次擦写周期,32个可编程I/O口线,三个16位定时器/计数器,八个中断源,支持ISP,是单片机初学者首选芯片。
为了简化电路安装,数码管分别采用1位(显示星期,也可以采用2位代替),2位(显示时、分、月、日),4位(显示年)共阳极数码管,引脚功能见图,需要注意的是,不同厂家的数码管的引脚可能不同,可用万用表或电池进行测试。
驱动三极管采用1N5401,也可采用2SC1015等小功率PNP型三极管,但要注意脚位。
功能按钮采用微动开关,S1为位选择,接于P3.2口, S2为增1,接于P3.3口,S3为减1,接于P3.4口。
按一次S1按钮,分位闪烁,再按一次,依次为时、星期、日、月、年位闪烁,此时,按S2,或S3按钮,选定位加一或减一,达到调整时钟的目的。
在年位闪烁时,再按一次S1,返回正常计时状态。
由于P3口内有上拉电阻,所以外部无需上拉电阻。
复位电路,只要求持续2个机器周期,R*C>2us,即可对单片机进行复位。
S4为复位按钮,可对数字钟进行初始化复位。
AT89S52 40脚接+5V,20脚接地,31脚为EA/VPP,访问外部程序存储器控制信号。
为使能从0000H 到FFFFH的外部程序存储器读取指令,EA必须接GND。
为了执行内部程序指令,EA应该接VCC。
由于该数字钟的程序、数据都存储在AT89S52内部,所以31脚应接
+5V。
18、19脚外接晶体振荡器,本电路采用12M晶振。
P0口分别接数码管a、b、c、d、e、f、g,从P0口输出数码。
P1口接年、月、日数码管阳极,P2口接时、分、星期数码管阳极,P3.0口接秒指示灯,当其为低电平时,发光二极管发光,反之熄灭,用以指示秒。
在设计数字钟过程中,为了调试方便,增加了ISP插座,本人使用的是伟纳ME300B编程器,该编程器使用10针ISP接口。
对于其它编程器,只要将插针与AT89S52的6、7、8、9、+5v、地对应连接即可。
2 软件系统设计:
(1)软件流程图如图3。
源程序见附件。
(2)软件采用C语言编写,原理如下:
1)进行按键扫描中,应去抖,再保存于变量中,确保按键操作的精度和可靠性。
由于要对多个时间变量进行操作,设置了位选择功能,每按一次选择按钮,位选择变量加1,在后面的数码管扫描程序中,可根据位选择变量的值,就可对各个时间变量进行调整。
在按键扫描过程中要先关中断,操作完后再开中断; 2)定时器0,用于动态扫描数码管,其定时时间不能太大,否则数码管会闪烁。
同时在扫描过程中,要根据位选择变量的值确定哪位数码管闪烁,为0时不闪烁,工作于正常计时状态; 3)定时器1, 1/100秒触发一次,100次秒变量加1,60秒后分变量加1,60分后时变量加1,24时后日变量、周变量加1,根据月份,日变量满28,30,31后月变量加1,月变量满12后年变量加1。
3 注意事项:
(1)定时器初值如采用65536-10000=55536(十进制)转化为十六进制为D8F0,会出现走时不准确,本人采用KEIL进行仿真,确定赋值为D912时,走时最精确。
(2)本电路简单,可用万能板搭接,连接导线用漆包线。
(3)组装前先确定数码管、单片机芯片的位置,统筹布局,做到美观、合理,本人采用已坏的数字钟外壳,制作成数字钟见图5,图5。
敷铜板面见图图6。
4 功能扩展
(1)在此基础上,再加入SD18B20,修改程序,可显示当前温度。
(2)在电源电路中接入6V蓄电池,保证停电也能正常工作,且能自动对电池充电。
(3)此电路中未加入农历功能,有兴趣的读者可在此基础上添加,如I/O口不够,可采用移位寄存器芯片74HC595进行扩展。
(4)若数字钟的走时精度不高,可更换5PPM精度较高的32768晶体振荡器。