大学设计单片机数字电子钟设计与研究
单片机课程设计数字钟实验报告
单片机课程设计:电子钟一、实现功能1、能够实现准确计时,以数字形式显示时、分、秒的时间。
2、小时以24小时计时形式,分秒计时为60进位,能够调节时钟时间。
3、闹钟功能,一旦走时到该时间,能以声或光的形式告警提示。
4、能够实现按键启动与停止功能。
5、能够实现整点报时功能。
6、能够实现秒表功能。
二、设计思路1、芯片介绍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口作为第八位地址接收。
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)这是由于上拉的缘故。
P3口也可作为AT89C51的一些特殊功能口,如下表所示:口管脚备选功能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(外部数据存储器读选通)P3口同时为闪烁编程和编程校验接收一些控制信号。
基于单片机电子时钟的设计与实现
基于单片机电子时钟的设计与实现一、设计目标设计一个基于单片机的电子时钟,能够准确显示时间并能够进行设置和调整。
二、硬件设计1.时钟部分:采用晶振芯片提供准确的时钟信号2.数码管显示部分:使用共阴数码管进行数字显示3.按键部分:设计几个按键用于设置和调整时间4.电源部分:采用直流电源供电三、软件设计1.功能设计a.时间设置功能:通过按键可以设置当前的时间,包括小时、分钟和秒钟。
b.时间调整功能:通过按键可以调整当前的时间,包括小时、分钟和秒钟。
c.时间显示功能:通过数码管可以实时显示当前的时间。
2.代码实现以C语言为例,以下是一个基于单片机的电子时钟的代码实现示例:```c#include <reg51.h>sbit DS18B20=P1^3; // 定义18B20数据线接口sbit beep=P2^3; // 定义蜂鸣器接口unsigned char hour,min,sec; // 定义小时、分钟、秒钟变量//函数声明void Delay_1ms(unsigned int count);bit Ds18b20Init(;unsigned char Ds18b20ReadByte(;void ReadTime(;void WriteTime(;void DisplayTime(;//主函数void mainP2=0x00;WriteTime(; // 写入时间while(1)ReadTime(; // 读取时间DisplayTime(; // 显示时间Delay_1ms(1000); // 延时1秒}//毫秒延时函数void Delay_1ms(unsigned int count) unsigned int i, j;for(i=0; i<count; i++)for(j=0; j<1275; j++);//18B20初始化函数bit Ds18b20Initbit presence;DS18B20=0;Delay_1ms(100); // 延时450us~1000us DS18B20=1;Delay_1ms(10); // 延时15us~60us presence=DS18B20;Delay_1ms(30); // 延时60us~240us return presence;//18B20读取字节函数unsigned char Ds18b20ReadByte unsigned char i, dat;for(i=0; i<8; i++)DS18B20=0;//主机发起读时序_nop_(; // 延时1us_nop_(; // 延时1us_nop_(; // 延时1usDS18B20=1;//主机释放总线_nop_(; // 延时1us_nop_(; // 延时1us_nop_(; // 延时1usdat,=(DS18B20<<i); // 读取数据位,存放在dat变量中Delay_1ms(3); // 读时序完成后等待48us再接收下一位}return dat;//读取时间函数void ReadTimeunsigned char temp;temp=0x00;while(temp!=0xaa)Ds18b20Init(; // 初始化温度传感器Delay_1ms(1);DS18B20=0xcc;Delay_1ms(1);DS18B20=0xbe;Delay_1ms(1);temp=Ds18b20ReadByte(; // 读取时间数组的标志位}for(temp=0; temp<7; temp++)//写入时间函数void WriteTimeunsigned char i,j;while(1)Ds18b20Init(;Delay_1ms(1);DS18B20=0xcc;Delay_1ms(1);DS18B20=0x4e;Delay_1ms(1);for(i=0; i<7; i++)DS18B20=0x55;Delay_1ms(1);DS18B20=0xaa;Delay_1ms(1);Ds18b20Init(;Delay_1ms(1);DS18B20=0xcc;Delay_1ms(1);DS18B20=0x48;Delay_1ms(1);j=Ds18b20ReadByte(; // 判断是否写入成功if(j==0x0a)break;}//显示时间函数void DisplayTimeP1=seg[hour/10]; // 显示十位小时P2=(P2&0xf0),0x08; // 点亮第一个数码管Delay_1ms(5); // 延时一段时间P2=0x0f;//熄灭数码管P1=seg[hour%10]; // 显示个位小时P2=(P2&0xf0),0x04; // 点亮第二个数码管Delay_1ms(5); // 延时一段时间P2=0x0f;//熄灭数码管P1=seg[min/10]; // 显示十位分钟P2=(P2&0xf0),0x02; // 点亮第三个数码管Delay_1ms(5); // 延时一段时间P2=0x0f;//熄灭数码管P1=seg[min%10]; // 显示个位分钟P2=(P2&0xf0),0x01; // 点亮第四个数码管Delay_1ms(5); // 延时一段时间P2=0x0f;//熄灭数码管P1=0x00;//空显示P2=0x00;//熄灭数码管```四、总结通过以上的硬件设计和软件实现,可以实现一个基于单片机的电子时钟。
毕业设计论文_单片机电子时钟的设计
毕业设计论文_单片机电子时钟的设计摘要:电子时钟作为一种常见的时间显示装置,在现代社会中应用广泛。
本文设计了一款基于单片机的电子时钟,使用DS1307实时时钟芯片来获取系统时间,并通过数码管进行显示。
设计过程中,通过对单片机的编程和电路的连接,实现了时间的显示与调节功能,具有较高的准确性和稳定性。
该设计方案简单、实用,可用于各种场合。
关键词:单片机;电子时钟;DS1307;数码管1.引言电子时钟是一种利用电子技术构造的显示时间的装置,具有时间准确、使用简单、显示清晰等特点,广泛应用于生活和工作中。
本文以单片机为核心,设计了一款实时准确的电子时钟,提高了时间的准确度和稳定性。
2.设计原理该设计的核心是通过单片机与DS1307实时时钟芯片的连接,使得单片机可以获取到准确的系统时间,并通过数码管进行显示。
DS1307芯片通过I2C总线与单片机连接,通过读取芯片中的时间寄存器,单片机可以获得当前的时间信息。
3.硬件设计本设计中使用了AT89S52单片机作为主控芯片,通过引脚与DS1307芯片相连。
单片机的P0口接到数码管的段选信号,P1口接到数码管的位选信号,通过控制这两个口的输出状态,可实现对数码管上显示的数字进行控制。
同时,为了使时钟可以正常运行,需外接一个晶振电路为单片机提供时钟信号。
4.软件设计通过对单片机的编程,实现了以下功能:(1)初始化DS1307芯片,设置初始时间;(2)每隔一秒读取一次DS1307芯片的时间寄存器,将时间信息保存到单片机的RAM中;(3)根据当前时间信息,在数码管上显示对应的小时和分钟。
5.调试与测试经过硬件的连接以及软件的编写,进行了调试与测试。
将初始时间设置为08:30,观察数码管上的显示是否正确,以及时间是否准确。
同时,通过手动调节DS1307芯片中的时间,检查单片机是否能正确获取时间,并进行显示。
6.总结与展望本文设计了一款基于单片机的电子时钟,通过单片机与DS1307芯片的连接和编程,实现了准确的时间显示功能。
单片机课程设计报告单片机的电子钟设计
单片机课程设计报告---单片机的电子钟设计单片机课程设计报告---单片机的电子钟设计一、设计简介本课程设计是以单片机为核心,设计一个具有显示时间和闹钟功能的电子钟。
电子钟是人们日常生活中必备的计时工具,其精度和稳定性直接影响到人们的时间安排和生活质量。
因此,本设计的目的是通过学习和实践,掌握单片机的应用和电子钟的设计方法,提高我们的实践能力和理论知识水平。
二、硬件设计1.单片机选择本设计选用AT89C51单片机作为主控制器。
AT89C51是一种低功耗、高性能的8位单片机,具有丰富的I/O口和片内资源,适合用于各种嵌入式系统开发。
2.显示模块显示模块采用LED数码管,用于显示时间、日期和闹钟状态。
为了方便调试和编程,我们选用4位一体式数码管。
3.按键模块按键模块包括功能键和调整键,用于设置时间、日期和闹钟。
我们选用4个独立式按键,分别实现上调、下调、设置和闹钟功能。
4.蜂鸣器模块蜂鸣器模块用于发出闹钟声音。
我们选用一款常见的无源蜂鸣器,通过单片机的一个IO口控制其频率,实现声音提示功能。
三、软件设计1.时钟芯片驱动本设计选用DS1302时钟芯片,用于提供实时时间和日期的信息。
DS1302与单片机通过I2C协议进行通信,需要编写相应的驱动程序。
驱动程序包括时钟芯片的初始化、数据读写和中断处理等。
2.显示驱动显示驱动程序负责控制数码管的显示。
驱动程序包括延时函数、位选函数和段选函数等。
通过调用这些函数,我们可以实现时间、日期和闹钟状态的动态显示。
3.按键驱动按键驱动程序负责识别用户的按键操作。
驱动程序通过检测独立式按键的状态变化,识别出不同的按键操作,并执行相应的功能。
例如,当用户按下上调键时,驱动程序将调用时钟芯片的读秒函数,并将时间的小时数加1。
4.蜂鸣器驱动蜂鸣器驱动程序负责控制蜂鸣器的声音频率。
驱动程序通过设置单片机的定时器寄存器,产生一定频率的方波信号,驱动蜂鸣器发声。
为了实现不同的声音效果,我们可以通过改变方波信号的频率和持续时间来实现。
基于单片机的电子时钟设计与实现
基于单片机的电子时钟设计与实现电子时钟是现代人生活中不可或缺的一部分。
随着现代科技的发展,基于单片机的电子时钟已经成为人们常见的选择。
本文将详细介绍基于单片机的电子时钟设计与实现。
一、基于单片机的电子时钟的原理基于单片机的电子时钟是通过控制晶体振荡器的频率来实现时钟的精度。
当晶体振荡器振荡周期稳定时,控制晶体振荡器的频率就可以实现时钟的精确。
二、基于单片机的电子时钟的设计1、硬件设计(1)时钟芯片:MCU常用的计时器是AT89S52,这是一个高性能的、低功耗的8位CMOS微控制器,使用半导体工艺方案,集成了66个I/O口和4个定时/计数器。
MCU的定时器的时钟源要保证准确,采用低失真、低相位噪声的晶振可以保证这一点。
(2)显示器件:本设计采用单片机驱动数码管来显示时间,以节省成本。
数码管是由点阵组成的,共有八段,其中七段是用来表示数字的,而第八段是用来显示小数点、时间标志等字符。
(3)按键及配套链路:按键和链路的作用是用来调整电子时钟的计时和校准。
采用常开或常闭接触式按钮即可实现这一功能。
2、软件设计(1)时钟芯片:AT89S52时钟芯片采用C语言编程,最终生成.HEX文件,充当芯片程序的载体,烧录进芯片后即可实现自动扫描、计时、纠偏、时间显示、闹铃、定时关闭等多项功能。
(2)扫描及计时:8个数码管需要进行扫描的操作,程序运行时根据八个位选信号,依次驱动八个共阳数码管的位选脚。
在每次扫描完成后即进行时钟计时的工作,判断闹钟时间是否到达,若到达则执行闹铃程序。
(3)时间设置:根据按键的输入状态,进行时间值的修改,来实现时钟时间的设置。
(4)闹铃:当当前时间与闹钟设置时间相等时,启动闹铃程序,进行可选的led闪烁、蜂鸣器响声等提醒操作。
三、基于单片机的电子时钟的实现将设计好的电路板焊接好,控制程序烧录进入AT89S52芯片,并将电子时钟放置在合适的位置或固定于墙壁上即可使用。
四、基于单片机的电子时钟的优缺点优点:精度高、误差小、易于校对和设置、功能多样化、体积小、寿命长。
单片机数字电子钟综合设计报告(指导教师、学生填写)
武汉工程大学计算机科学与工程学院综合设计报告设计名称:科研训练(I)设计题目:数字电子时钟学生学号:专业班级:学生姓名:学生成绩:指导教师(职称):课题工作时间:至说明:1、报告中的第一、二、三项由指导教师在综合设计开始前填写并发给每个学生;四、五两项(中英文摘要)由学生在完成综合设计后填写。
2、学生成绩由指导教师根据学生的设计情况给出各项分值及总评成绩。
3、指导教师评语一栏由指导教师就学生在整个设计期间的平时表现、设计完成情况、报告的质量及答辩情况,给出客观、全面的评价。
4、所有学生必须参加综合设计的答辩环节,凡不参加答辩者,其成绩一律按不及格处理。
答辩小组成员应由2人及以上教师组成。
5、报告正文字数一般应不少于5000字,也可由指导教师根据本门综合设计的情况另行规定。
6、平时表现成绩低于6分的学生,取消答辩资格,其本项综合设计成绩按不及格处理。
7、此表格式为武汉工程大学计算机科学与工程学院提供的基本格式(适用于学院各类综合设计),各教研室可根据本门综合设计的特点及内容做适当的调整,并上报学院批准。
成绩评定表学生姓名:学号:班级:答辩记录表指导教师评语武汉工程大学计算机科学与工程学院综合设计报告目录摘要 (II)Abstract (II)第一章课题背景(或绪论、概述) (1)1.1 课题背景、目的、意义 (1)1.2 设计应达到的技术要求 (1)第二章设计简介及设计方案论述 (2)2.1 数字电子钟的设计思想 (2)2.2 数字电子钟的设计方法 (2)2.3 数字电子钟总体设计图 (2)第三章详细设计 (3)3.1 硬件部分设计 (3)3.1 软件程序设计 (4)第四章设计结果及分析 (6)4.1 设计结果 (6)4.2 设计结果分析 (7)总结 (8)致谢 (9)参考文献 (10)附录主要程序代码 (11)摘要单片机是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D 转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统。
基于51单片机的简易电子钟设计
基于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单片机设计的简易电子钟可以显示当前时间,并且实现时间的调整和闹钟设定功能。
但是由于硬件资源有限,只能实现基本的功能,不能进行其他高级功能的扩展,例如闹铃的音乐播放、温度、湿度的显示等。
(完整版)基于51单片机的电子时钟设计与实现毕业设计
摘要单片机自20世纪70年代问世以来,以其极高的性能价格比,受到人们的重视和关注,应用很广、发展很快。
单片机体积小、重量轻、抗干扰能力强、环境要求不高、价格低廉、可靠性高、灵活性好、开发较为容易。
由于具有上述优点,在我国,单片机已广泛地应用在工业自动化控制、自动检测、智能仪器仪表、家用电器、电力电子、机电一体化设备等各个方面,而51单片机是各单片机中最为典型和最有代表性的一种。
这次毕业设计通过对它的学习、应用,以AT89S51芯片为核心,辅以必要的电路,设计了一个简易的电子时钟,它由4.5V直流电源供电,通过数码管能够准确显示时间,调整时间,从而到达学习、设计、开发软、硬件的能力。
电子时钟是采用数字电路实现对“时”、“分”、“秒”数字显示的计时装置。
电子时钟的精度、稳定度远远超过老式机械钟。
在这次设计中,我们采用LED数码管显示时、分、秒,以24小时计时方式,根据数码管动态显示原理来进行显示,用12MHz 的晶振产生振荡脉冲,定时器计数。
在此次设计中,电路具有显示时间的其本功能,还可以实现对时间的调整。
电子时钟是其小巧,价格低廉,走时精度高,使用方便,功能多,便于集成化而受广大消费的喜爱,因此得到了广泛的使用。
关键词:单片机;AT89S51ABSTRACTSince the 1970 s chip since the advent, with its high cost performance and attention by people and attention, it is widely used and fast development. SCM small volume, light weight, strong anti-jamming capability, environmental demand is not high, low cost, high reliability, flexibility is good, development more easy. Because of the above features, in our country, the microcontroller is widely used in industrial automation control, automatic detection, intelligent instrument and apparatus, household appliances, power electronics, mechanical and electrical equipment, and other aspects, and 51 SCM is the most typical chip and most representative one. The graduation design through to its study, application to AT89S51 chips as the core, with the necessary circuit, design of a simple electronic clock, it by 4.5 V dc power supply, through the electronic tube can show time, adjust the time, thus to learning, the design, the development of software and hardware in the ability.Electronic Clock is a electronic circuit implementation of the "when", "sub", "seconds" The figures show the timing device. Electronic clock precision, stability, far more than the old mechanical clock. In this design, we use LED electronic display hours, minutes, seconds, to 24-hour time mode, according to electronic control theory to dynamic display to display, use the 12MHz crystal oscillation pulse, the timer count. In this design, the circuit has a display time of the this function, you can also realize the time adjustment. Electronic clock is its compact, low cost, travel time and high precision, easy to use, features and more, easy integration and loved by the general consumer, so widely used.Key words:Single-chip microcomputer ; AT89S51独创声明本人郑重声明:所呈交的毕业设计(论文),是本人在指导老师的指导下,独立进行研究工作所取得的成果,成果不存在知识产权争议。
基于单片机的多功能数字电子钟设计学士学位毕业设计论文
学士学位毕业设计(论文)基于单片机的多功能数字电子钟设计学生姓名:XX学号:XXXXXX指导教师:XXXX所在学院:XXXXXXXX专业:XXXXXXXXXXXXX中国·大庆2014 年 5 月黑龙江八一农垦大学本科毕业设计(论文)任务书注:1.任务书由指导教师填写后交给学生,要求学生妥善保存。
2.此任务书夹于论文扉页与论文一并装订,作为论文评分依据之。
摘要电子钟是当今社会中最主要的计时工具,它广泛的被应用在电脑,手机,和其他社会生活的各个方面,和所有要求时间的场所。
20世纪90年代,电子技术的飞速成长推动了现代电子商品的发展,电子产品已经深入社会的各个领域,为社会生产力的发展和社会信息化程度的发展提供了强大的动力,电子技术的发展如今越来越快,电子产品的更新换代的节奏更快。
在当今社会,人们越来越重视时间,生活节奏越来越快,时间就是金钱。
时间如果不准确,会对那些需要精确时间的人带来极大的麻烦。
本设计的核心元件是STC89C52,LCD12864液晶模块、DHT11温湿度感应模块、DS1302时间模块及按键模块组成。
本设计实现了万年历的基本功能,显示年、月、日、时、分、秒、星期,温湿度而且可以整点报时,闹表功能,无源时钟芯片再接一个3V电源,掉电后能正常工作,重新上电后不用调整时间。
整个设计具有操作简单,性价比高,环保无噪音,低功耗等优点。
关键词:电子时钟单片机DS1302 DHT11ABSTRACTDigital electronic clock is one of the main timing tool in the modern world, widely used cell phones, computers, cars and so on all aspects of social life, and the time required for the occasion.20th century, electronic technology gained rapid development, driven in its modern electronics into almost all areas of society, a strong impetus to the development of the social productive forces and social improvement in the level of information, but also to modern electronic products further improve the performance, product upgrading faster and faster pace.Modern life more and more attention from the concept of time, time and money can be said to equate. For those who are very strict on time and accurate grasp of people and things, time is not accurate will bring great trouble.This design uses AT89S52 micro-controller as the core component, attach ed above power-on reset circuit, crystal oscillator circuit, LCD12864B liquid crystal display modules, DHT11 temperature and humidity sensor module, DS1302 time module and key tone circuit.The design and implementation of the basic functions of the calendar, year, month, day, hour, minute, second, day, temperature and humidity but also the whole point timekeeping, alarm clock function, followed by a clock chip passive 3V power supply can power down after working properly, do not adjust the time after power outages. The whole design is simple, cost-effective, environmentally friendly no noise, low power consumption.Keywords: Electronic Clock MCU DS1302 DHT11目录摘要 (I)ABSTRACT (II)前言 (V)1 绪论 (1)1.1电子时钟的研究背景 (1)1.2电子时钟的国内外研究现状 (1)2 元件介绍 (3)2.1单片机STC89C52 (3)2.2实时时钟芯片DS1302 (5)2.3温湿度传感器DHT11 (7)2.4液晶显示屏LCD12864 (8)2.5本章小结 (8)3 总体方案 (9)3.1系统的设计思路 (9)3.2系统硬件描述 (9)3.3系统软件描述 (10)3.4设计流程 (10)3.5本章小结 (10)4 系统硬件架构 (11)4.1单片机最小系统 (11)4.2时钟模块 (13)4.3温湿度传感器模块 (13)4.4液晶显示模块 (13)4.5按键模块 (14)4.6蜂鸣器报警模块 (14)4.7本章小结 (15)5 软件设计 (16)5.1 软件设计总体说明 (16)5.2系统程序流程图设计 (16)5.3系统程序设计(见附录) (20)5.4本章小结 (20)结论 (21)参考文献 (22)致谢 (23)附录一 (24)附录二 (25)前言近年来,电子产品的成长越来越快,社会竞争也更剧烈,人们对电子时钟的要求更高了。
基于单片机的电子时钟的设计
基于单片机的电子时钟的设计基于单片机的电子时钟是一种采用单片机作为主控芯片的数字显示时钟。
它能够准确显示时间,并可以通过编程实现其他功能,如闹钟、倒计时、温湿度显示等。
本文将介绍基于单片机的电子时钟的设计原理、硬件电路和软件编程等内容。
1.设计原理基于单片机的电子时钟的设计原理是通过单片机的计时器和定时器模块来实现时间的计数和显示。
单片机的计时器可以通过设定一个固定的时钟频率进行计数,而定时器可以设定一个固定的计数值,当计数到达设定值时,会触发一个中断,通过中断服务程序可以实现时间的更新和显示。
2.硬件电路基于单片机的电子时钟的硬件电路主要包括单片机、显示模块、按键模块和时钟模块。
其中,单片机作为主控芯片,负责控制整个电子时钟的运行;显示模块一般采用数字管或液晶屏,用于显示时间;按键模块用于设置和调整时间等功能;时钟模块用于提供稳定的时钟信号。
3.软件编程基于单片机的电子时钟的软件编程主要分为初始化和主程序两个部分。
初始化部分主要是对单片机进行相关寄存器的设置,包括计时器和定时器的初始化、中断的使能等;主程序部分是一个循环程序,不断地进行时间的计数和显示。
3.1初始化部分初始化部分首先要设置计时器模块的时钟源和计数模式,一般可以选择内部时钟或外部时钟作为时钟源,并设置计时器的计数模式,如自动重装载模式或单次模式;然后要设置定时器模块的计数值,一般可以通过设定一个固定的计数值和计数频率来计算出定时时间;最后要设置中断使能,使得当定时器计数器达到设定值时触发一个中断。
3.2主程序部分主程序部分主要是一个循环程序,通过不断地读取计时器的计数值,并计算得到对应的时间,然后将时间转换成显示的格式,并显示在显示模块上。
同时,还可以通过按键来实现时间的设置和调整功能,如增加和减少小时和分钟的值,并保存到相应的寄存器中。
4.功能扩展-闹钟功能:设置闹钟时间,并在设定的时间到达时触发报警;-温湿度显示:通过连接温湿度传感器,实时显示当前的温度和湿度数据;-倒计时功能:设置一个倒计时的时间,并在计时到达时触发相应的动作。
基于单片机的电子时钟的设计与实现
基于单片机的电子时钟的设计与实现电子时钟是一种使用微处理器或单片机作为主控制器的数字时钟。
它不仅能够显示当前时间,还可以具备其他附加功能,如闹钟、日历、温度显示等。
一、设计目标设计一个基于单片机的电子时钟,实现以下功能:1.显示时间:小时、分钟和秒钟的显示,采用7段LED数码管来显示。
2.闹钟功能:设置闹钟时间,到达设定的时间时会发出提示音。
3.日历功能:显示日期、星期和月份。
4.温度显示:通过温度传感器获取当前环境温度,并显示在LED数码管上。
5.键盘输入和控制:通过外部键盘进行时间、日期、闹钟、温度等参数的设置和调整。
二、硬件设计1.单片机选择:选择一款适合的单片机作为主控制器,应具备足够的输入/输出引脚、中断和定时器等功能,如STC89C522.时钟电路:使用晶振为单片机提供稳定的时钟源。
3.7段LED数码管:选择合适的尺寸和颜色的数码管,用于显示小时、分钟和秒钟。
4.温度传感器:选择一款适合的温度传感器,如DS18B20,用于获取环境温度。
5.喇叭:用于发出闹钟提示音。
6.外部键盘:选择一款适合的键盘,用于设置和调整时间、日期、闹钟等参数。
三、软件设计1.初始化:设置单片机定时器、外部中断和其他必要的配置。
2.时间显示:通过定时器中断,更新时间,并将小时、分钟和秒钟分别显示在相应的LED数码管上。
3.闹钟功能:设置闹钟时间,定时器中断检测当前时间是否与闹钟时间一致,若一致则触发警报。
4.日历功能:使用定时器中断,更新日期、星期和月份,并将其显示在LED数码管上。
5.温度显示:通过定时器中断,读取温度传感器的数据,并将温度显示在LED数码管上。
6.键盘输入和控制:通过外部中断,读取键盘输入,并根据输入进行相应的操作,如设置时间、闹钟、日期等。
7.警报控制:根据设置的闹钟时间,触发警报功能,同时根据用户的设置进行控制。
四、测试与调试完成软件设计后,进行系统测试与调试,包括验证显示时间、日期、温度等功能的准确性,以及闹钟和警报功能的触发与控制。
单片机数字电子时钟设计
单片机数字电子时钟设计摘要第一章电子时钟的设计 (3)1. 1电子时钟简介 (3)1.2电子时钟的工作原理 (3)第二章硬件设计方案 (4)2. 1硬件电路的设计方案 (4)2. 2硬件电路的原理图 (4)2. 3硬件电路说明 (5)第三章电子时钟的程序设计 (8)3. 1程序流程图 (8)3. 2程序设计 (11)总结15摘要随着现代生活的推进,电子时钟在人们的生活中差不多普及,本课题的要紧内容确实是结合单片机的强大功能,在一块一般的电子时钟集成多种功能,方便人们的日常生活,该功能是通过单片机、8段数码管以及一些简单辅助电路实现的。
由于之前没有独立做过单片机实现多功能电子时钟方面的内容,因此在做设计时总会遇见专门多问题,本次设计是在结合老师的指导及同学的关心下完成的,并通过本人在网上所查的大量资料及单片机设计中常见的电路而构思出来的。
单片运算机即单片微型运算机。
由RAM .ROM,CPU构成,定时, 计数和多种接口于一体的微操纵器。
它体积小,成本低,功能强,广泛应用于智能产业和工业自动化上。
而51系列单片机是各单片机中最为典型和最有代表性的一种。
这次课程设计通过对它的学习,应用,从而达到学习、设计、开发软、硬的能力。
本设计要紧设计了一个基于AT89C51单片机的电子时钟。
并在数码管上显示相应的时刻。
并通过一个操纵键用来实现时刻的调剂和是否进入省电模式的转换。
该方法仿真成效真实、准确,节约了硬件资源。
关键字:单片机、电子时钟、程序第一章电子时钟的设计1.1电子时钟简介电子钟是一种利用数字电路来显示秒、分、时的计时装豊,与传统的机械钟相比,它具有走时准确、显示直观、无机械传动装麗等优点,因而得到广泛应用。
随着人们生活环境的不断改善和美化,在许多场合都用到电子时钟。
现在高精度的计时工具大多数都使用了石英晶体振荡器,山于电子钟、石英钟、石英表都采纳了石英技术,因此走时精度高,稳固性好,使用方便,不需要经常调试,数字式电子钟用集成电路讣时时,译码代替机械式传动,用LED显示器代替指针显示进而显示时刻,减小了计时误差,这种表具有时、分、秒显示时刻的功能,还能够进行时和分的校对,片选的灵活性好。
基于单片机的电子钟设计
基于单片机的电子钟设计摘要:电子钟是一种普遍使用的时钟类型。
通过单片机,可以实现数字时钟的各种功能,例如:时间显示、闹钟功能、温度显示等。
本文介绍了基于单片机的电子钟设计方案,其中包括硬件系统的设计和程序代码的实现。
该电子钟的基本功能包括:时钟模式、闹钟模式、温度显示和日期显示。
设计方案使用的单片机是AT89C52,时钟模块为DS1302。
实验结果表明,该电子钟系统具有稳定性高、精度高、实用性强等特点。
关键词:单片机、电子钟、DS13021. 概述电子钟是目前流行的现代时钟类型之一。
通过单片机,可以实现数字时钟的各种功能,例如:时间显示、闹钟功能、温度显示等。
作为一种普遍应用于家庭以及公共场所的计时工具,电子钟能够提高人们的时效性、管理效率。
本文将介绍基于单片机的电子钟设计方案,其中包括硬件系统的设计和程序代码的实现。
该电子钟的基本功能包括:时钟模式、闹钟模式、温度显示和日期显示。
设计方案使用的单片机是AT89C52,时钟模块为DS1302。
实验结果表明,该电子钟系统具有稳定性高、精度高、实用性强等特点。
2. 硬件设计2.1 系统原理系统的核心是AT89C52单片机,其包括了8051架构下所有标准的特殊功能寄存器以及升级的功能模块。
DS1302是常用的实时时钟模块,它包含一个时钟/日历的B类时钟芯片、一个31个字节的静态RAM 以及一个摆振电路。
通过与AT89C52的串行通信接口,可以实现时钟芯片与单片机的通信。
2.2 电路设计电路设计包括AT89C52单片机、DS1302时钟芯片、4个7段数码管以及相关的外围元件。
其中,输入电源电压为5V直流电压,4个7段数码管均采用共阴极的连接方式。
2.3 电路说明(1) 时钟模块DS1302DS1302是一种时钟模块,其具有许多特性,例如:硬件控制时间的计数、在停电情况下,仍能保持时间记录、考虑到掉电情况、在无外部纪念日的情况下,为计时器提供64字节的RAM等特点。
基于单片机的电子钟课程大学本科方案设计书方案设计书
电子时钟主要是利用电子技术将时钟电子化、数字化,拥有时钟精确、体积小、界面友好、可扩展性能强等特点,被广泛应用于生活和工作当中。
另外,在生活和工农业生产中,也常常需要温度,这就需要电子时钟具有多功能性。
本设计主要为实现一款可正常显示时钟/日历、测量环境温度、带有定时闹铃的多功能电子时钟。
本文对当前电子钟开发手段进行了比较和分析,最终确定了采用单片机技术实现多功能电子时钟。
本设计应用A T89C51芯片作为核心,7位LED数码管显示,使用DS1302实时时钟日历芯片完成时钟/日历的基本功能,同时利用DS18B20温度传感器测量环境温度。
这种实现方法的优点是电路简单,性能可靠,实时性好,时间和温度精度高,操作简单,编程容易。
该电子时钟可以应用于一般的生活和工作中,也可通过改装,提高性能,增加新功能,从而给人们的生活和工作带来更多的方便。
关键词:电子时钟;多功能;AT89C51;时钟日历芯片;摘要 .......................................................................................................................................... 第一章引言 . (4)1.1 多功能电子时钟研究的背景和意义 (4)1.2 电子时钟的功能 (5)第二章电子时钟设计方案分析 (7)2.1 FPGA设计方案 (7)2.2 NE555时基电路设计方案 (7)2.3 单片机设计方案 (8)第三章基于单片机的电子时钟硬件设计 (10)3.1 主要IC芯片选择 (10)3.1.1 微处理器选择 (10)3.1.2.1常用时钟日历芯片比较 (12)3.1.2.2 DS1302简介 (12)3.1.2.3 DS1302引脚说明 (12)3.1.2.4 DS1302的控制字和读写时序说明 (13)3.2.1.5 DS1302的片内寄存器 (15)3.1.2 环境温度传感器选择 (18)3.1.3.1 常用温度传感器比较 (18)3.1.3.2 DS18B20简介 (18)3.1.3.2 DS18B20内部结构 (19)3.2 电子时钟硬件电路设计 (21)3.2.1 时钟电路设计 (22)3.2.2 环境温度采集电路设计 (23)3.2.3 显示电路 (24)3.2.4 按键电路设计 (25)3.2.5 闹铃电路设计 (27)3.2.6 复位电路设计 (28)第四章电子时钟软件设计 (31)4.1 主程序设计 (31)4.2 子程序设计 (32)4.2.1 实时时钟日历子程序设计 (32)4.2.2 环境温度采集子程序设计 (32)4.2.3 显示子程序设计 (36)4.2.4 键盘扫描子程序 (36)4.2.5 闹铃子程序设计 (37)第五章系统调试 (41)5.1 硬件调试 (42)5.1.1 单片机基础电路调试 (42)5.1.2 显示电路调试 (43)5.1.3 DS1302电路调试 (45)5.1.4 按键电路调试 (46)5.2 软件调试 (47)5.2.1 环境温度采集子程序调试 (47)5.2.2 键盘子程序调试 (47)结论 (49)程序 (50)第一章引言时间是人类生活必不可少的重要元素,如果没有时间的概念,社会将不会有所发展和进步。
单片机电子时钟毕业论文设计
单片机电子时钟毕业论文设计电子时钟是一种通过电子技术实现时间显示的设备,具有时间准确、操作简单、功能丰富等特点。
本设计基于单片机技术,以8086单片机为核心控制单元,实现了电子时钟的时间显示、闹钟设置、日历查询等功能。
本论文主要包括硬件设计与软件设计两个方面。
一、硬件设计电子时钟的硬件设计包括时钟电路、显示电路和调试电路三部分。
1.时钟电路时钟电路采用晶体振荡器作为信号源,通过外部输入电路将晶振的运行频率转换为单片机可用的时钟脉冲信号,并与封装在单片机内部的计数器相连。
2.显示电路显示电路由显示模块、驱动模块和输入模块组成。
显示模块采用数码管实现时间的显示,其中包括时、分、秒三个数码管以及闹钟时间的显示。
驱动模块将单片机的输出信号转化为适合数码管显示的信号,并进行相应的时序控制。
输入模块通过按键输入实现对时钟的设置和调整。
3.调试电路调试电路主要用于对电子时钟的运行状态进行监测和调试。
其中包括状态指示灯、背光控制电路和串口调试接口。
状态指示灯用于指示时钟的工作状态,背光控制电路用于控制数码管的亮度,串口调试接口用于通过计算机对时钟进行调试和数据交互。
二、软件设计软件设计包括时钟显示、闹钟设置和日历查询三个功能模块。
1.时钟显示通过单片机的定时器和计数器模块,实现对系统时钟的实时计时和更新。
根据计时结果,将时、分、秒数据分别送到相应的数码管显示。
通过按键输入,实现对时间的调整和设置。
2.闹钟设置通过按键输入,设置闹钟的触发时间。
当系统时间与闹钟时间一致时,触发相应的闹钟功能,比如闹铃声响起或者背光闪烁等。
3.日历查询通过按键输入,查询相应的日期和星期。
根据计时结果,实时更新日期和星期的显示。
三、实验结果设计的电子时钟能够准确显示时间,并具备闹钟设置和日历查询功能。
在实际测试中,时钟的时间显示精度达到毫秒级别,闹钟的触发精度达到秒级别,操作简单方便。
总结:本论文以8086单片机为核心,通过硬件设计和软件设计实现了电子时钟的时间显示、闹钟设置和日历查询等功能。
本科毕业设计--单片机多功能数字电子时钟设计
单片机多功能数字电子时钟设计绪论概述时间对人们来说是非常宝贵的,准确的掌握时间和分配时间对人们来说至关重要。
因此自从时钟发明的那刻起,就成为人类的好朋友。
随着时间的流逝,科学技术的不断发展和提高人们对时间计量的精度要求越来越高,应用越来越广。
怎样让时钟更好、更方便、更精确的显示时间,这就要求人们不断设计研发。
出新型的时钟。
高精度的计时工具大多数都使用了石英晶体振荡器,由于电子钟,石英表,石英钟都采用了石英技术,因此走时精度高稳定性好、使用方便、不需要经常调校。
数字式电子钟用集成电路计时时译码代替机械式传动,用LCD显示器代替指针进而显示时间、减小了计时误差,这种表具有时、分、秒显示时间的功能,还可以进行时和分的校对,片选的灵活性好。
常工作的基础。
在单片机的应用系统中,时钟有两个方面的含义。
一是指为保障系统正常工作的基准振荡定时信号、主要由晶振和外围电路组成,晶振频率的大小决定了单片机系统工作的快慢二是指系统的标准定时时钟即定时时间。
它通常有两种实现方法:一是用软件实现,即用单片机内部的可编程定时器/计数器来实现,二是用专门的时钟芯实现。
2研究目的通过利用STC89C52单片机和DS1302芯片和DS18B20以及外围的按键和LCD显示器等部件显示完整的日历和温度,设计一个基于单片机的电子时钟。
通过设计可以很好的学习单片机的基础知识。
具有日历、时间、温度显示功能。
设计的电子时钟通过液晶显示器显示并能通过按键对时间进行设置。
第一章设计要求与方案论证1.1设计要求1具有年、月、日、星期、时、分、秒显示功能,2具有年、月、日、星期、时、分、秒校正功能,3具有12/24小时切换显示功能,4具有显示温度功能。
1.2系统基本方案选择和论证1.2.1 单片机芯片的选择方案和论证方案一:采用STC89C52芯片作为硬件核心。
STC89C52内部具有8KB ROM 存储空间,512字节数据存储空间、带有2K字节的EEPROM存储空间与MCS-51系列单片机完全兼容,STC89C52可以通过串口下载。
单片机数字电子钟的设计与研究
单片机数字电子钟的设计与研究随着科技的发展,数字化已经成为了现代生活不可或缺的一部分。
数字电子钟作为数字化生活的一种体现,得到了越来越多人的关注和喜爱。
而单片机数字电子钟就是其中的一类。
那么,究竟什么是单片机数字电子钟?如何进行设计和研究?本文将介绍这些问题。
一、什么是单片机数字电子钟?单片机数字电子钟是一种基于单片机的数字化钟表。
它能够真实反映出当前的时间,并能够进行闹钟等常规功能。
与传统的机械钟表不同的是,它使用数字的方式来显示时间,精度更高,使用起来也更加方便。
在单片机数字电子钟的设计中,涉及到的元器件主要有单片机、RTC芯片、LED数码管等。
其中,单片机是整个系统的核心,负责控制时间的读取和指令的执行。
RTC芯片则用于提供一个稳定的时钟信号,以保证时间的准确性。
而LED数码管则用于进行显示。
二、单片机数字电子钟的设计步骤1. 确定单片机型号和RTC芯片型号:单片机是整个系统的核心,因此选择一款符合自己需求的单片机型号非常重要。
同时,也需要根据实际需求来选择一款适合的RTC芯片。
2. 电路设计:根据所选的单片机和RTC芯片类型,设计如下电路:(1)表格暂缺3. 程序编写:程序编写是整个系统设计的灵魂,因此需要认真研究和编写。
具体实现方法如下:(1)初始化:程序一开始需要进行初始化,包括读取RTC 芯片时间、初始化所有端口和变量等步骤。
(2)时钟显示:通过设置定时器中断,确保在每一秒钟结束时进行一次时钟显示。
(3)按键处理:按键处理程序可以实现一些常规功能,比如闹钟、时间调整和显示模式等。
4. 软硬件测试:完成程序编写之后,需要进行软硬件测试。
可以通过模拟RTC芯片来进行测试,并针对测试结果逐一调试程序。
5. PCB设计和制作:经过测试之后,可以进行PCB设计和制作。
这里需要注意,PCB设计的精度对于整个系统的稳定性和可靠性都非常重要,必须认真对待。
三、单片机数字电子钟的研究目前,单片机数字电子钟已经得到了广泛的应用和研究。
毕业设计单片机电子时钟设计
毕业论文基于单片机的数字时钟设计摘要单片机因将其主要组成部份集成在一个芯片上而得名,就是把中央处置器、随机存储器、只读存储器、中断系统、按时器/计数器和I/O接口电路等部件集成在一个芯片上。
基于单片机设计的数字钟精准度较高,因为在程序的执行进程中,任何指令都不影响按时器的正常计数,即便程序很长也不会影响中断的时刻。
本设计利用12MHZ晶振与单片机AT89C51相连接,以AT89C51芯片为核心,采用动态扫描方式显示,通过利用该单片机,加上在显示电路部份利用7407驱动电路,实此刻6个LED数码管上显示日期、时刻、按时、闹铃,通过6个按键实现设置日期、进行调时、设定闹铃、倒计时等功能,在实现各功能时数码管进行相应显示,闹铃或按不时刻到时蜂鸣器响,按下闹铃键或按时键时,声音停止。
软件部份用汇编实现,分为显示、延迟、调时、闹铃、按时、调整日期等部份。
通过软硬件结合达到最终目的。
关键词:电子钟; 单片机; 动态扫描; 汇编语言AbstractBecause of its main microcontroller component integrated in a chip n a m e d, is the MCU, ram and ROM, interrupt system, timer/counter and I/O interface circuit and other parts in a single chip integrated.This design uses a 12 MHZ crystal to connect with the machine AT89C51, takes AT89C51 chips as core. It adopts the dynamic state of the scanning method to show. Using this MCU and 7407 drive electric circuit, we are able to show date, time, fix the time, and make bell on 6 LED figures tubes. We can use 6 key to constitute date, adjust time, enact the bell and set the countdown timer. When the electric carrying out each function, the figures tube shows the tight function .When the alarm clock and the countdown timer were reached, the voice begins. While 3 or 4 is pressed, the voice stops. The software part is realized by assembler language. It was divided into to show, delay, adjust, make bell, in fixed time, and adjust date etc. part. We get the end purpose combining the software and the hardware.Keywords:Electric clock; MCU; Dynamic state scanning ;Assembler language目录1 引言 (4)2 整体设计思路 (5)3 主要元件的利用方式 (7)AT89C51单片机: (7)7407驱动器 (8)数码管: (9)4 电路设计 (10)整体设计 (10)分块设计 (10)4.输入部份 (11)4.输出部份(显示电路) (11)4.晶振与复位电路: (12)5 程序设计 (13)程序思路 (13)程序设计步骤 (14)程序的主要模块 (15)延迟程序 (15)中断服务子程序 (15)主程序 (18)显示程序 (19)闹铃程序和按时程序 (20)程序调试 (20)6 功能仿真 (20)软件介绍 (21)仿真进程: (21)仿真图的绘制 (21)功能的实现 (22)7 日历功能的实现 (24)附录完整程序 (27)参考文献 (42)1 引言单片机因将其主要组成部份集成在一个芯片上而得名,就是把中央处置器、随机存储器、只读存储器、中断系统、按时器/计数器和I/O接口电路等部件集成在一个芯片上。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
哈尔滨职业技术学院毕业设计任务书专业电气自动化技术年级2009姓名张志武韩雪学号109060222011 109060222027数字电子钟摘要20世纪末,电子技术获得了飞速地发展,在其推动下,现代电子产品几乎渗透了社会地各个领域,有力地推动了社会生产力地发展和社会信息化程度地提高,同时也使现代电子产品性能进一步提高,产品更新换代地节奏也越来越快.现代生活地人们越来越重视起了时间观念,可以说是时间和金钱划上了等号.对于那些对时间把握非常严格和准确地人或事来说,时间地不准确会带来非常大地麻烦,所以以数码管为显示器地时钟比指针式地时钟表现出了很大地优势.数码管显示地时间简单明了而且读数快、时间准确显示到秒.而机械式地依赖于晶体震荡器,可能会导致误差.数字钟是采用数字电路实现对“时”、“分”、“秒”数字显示地计时装置.数字钟地精度、稳定度远远超过老式机械钟.在这次设计中,我们采用LED数码管显示时、分、秒,以24小时计时方式,根据数码管动态显示原理来进行显示,用12MHz地晶振产生振荡脉冲,定时器计数.在此次设计中,电路具有显示时间地其本功能,还可以实现对时间地调整.数字钟是其小巧,价格低廉,走时精度高,使用方便,功能多,便于集成化而受广大消费地喜爱,因此得到了广泛地使用.目录第一章绪论1.1 单片机地背景 (1)1.2 单片机地意义 (1)1.3 单片机地应用 (1)第二章整体设计方案2.1 单片机地选择 (2)2.2 单片机地基本结构 (4)第三章数字钟地硬件设计3.1 最小系统设计 (9)3.2 LED显示电路 (12)3.3 键盘控制电路 (14)第四章数字钟地软件设计4.1 系统软件设计流程图 (16)4.2 数字电子钟地原理图 (20)4.3 主程序 (20)4.4 时钟设置子程序 (21)4.5 定时器中断子程序 (21)4.6 LED显示子程序 (22)4.7 按键控制子程序 (24)第五章系统仿真5.1 PROTUES软件介绍 (26)5.2 电子钟系统PROTUES仿真 (26)第六章调试与功能说明6.2 系统性能测试与功能说明 (27)6.3 系统时钟误差分析 (27)6.1 硬盘调试 (27)6.4 软件调试问题及解决 (27)结束语 (29)参考文献 (30)致谢 (31)第一章绪论1.1数字电子钟地背景20世纪末,电子技术获得了飞速地发展,在其推动下,现代电子产品几乎渗透了社会地各个领域,有力地推动了社会生产力地发展和社会信息化程度地提高,同时也使现代电子产品性能进一步提高,产品更新换代地节奏也越来越快. 时间对人们来说总是那么宝贵,工作地忙碌性和繁杂性容易使人忘记当前地时间.忘记了要做地事情,当事情不是很重要地时候,这种遗忘无伤大雅.但是,一旦重要事情,一时地耽误可能酿成大祸.目前,单片机正朝着高性能和多品种方向发展趋势将是进一步向着CMOS化、低功耗、小体积、大容量、高性能、低价格和外围电路内装化等几个方面发展.下面是单片机地主要发展趋势.单片机应用地重要意义还在于,它从根本上改变了传统地控制系统设计思想和设计方法.从前必须由模拟电路或数字电路实现地大部分功能,现在已能用单片机通过软件方法来实现了.这种软件代替硬件地控制技术也称为微控制技术,是传统控制技术地一次革命.单片机模块中最常见地是数字钟,数字钟是一种用数字电路技术实现时、分、秒计时地装置,与机械式时钟相比具有更高地准确性和直观性,且无机械装置,具有更更长地使用寿命,因此得到了广泛地使用.1.2数字电子钟地意义数字钟是采用数字电路实现对.时,分,秒.数字显示地计时装置,广泛用于个人家庭,车站, 码头办公室等公共场所,成为人们日常生活中不可少地必需品,由于数字集成电路地发展和石英晶体振荡器地广泛应用,使得数字钟地精度,远远超过老式钟表, 钟表地数字化给人们生产生活带来了极大地方便,而且大大地扩展了钟表原先地报时功能.诸如定时自动报警、按时自动打铃、时间程序自动控制、定时广播、自动起闭路灯、定时开关烘箱、通断动力设备、甚至各种定时电气地自动启用等,所有这些,都是以钟表数字化为基础地.因此,研究数字钟及扩大其应用,有着非常现实地意义.1.3数字电子钟地应用数字钟已成为人们日常生活中:必不可少地必需品,广泛用于个人家庭以及车站、码头、剧场、办公室等公共场所,给人们地生活、学习、工作、娱乐带来极大地方便.由于数字集成电路技术地发展和采用了先进地石英技术,使数字钟具有走时准确、性能稳定、携带方便等优点,它还用于计时、自动报时及自动控制等各个领域.第二章整体设计方案2.1 单片机地选择单片机微型计算机是微型计算机地一个重要分支,也是颇具生命力地机种.单片机微型计算机简称单片机,特别适用于控制领域,故又称为微控制器.通常,单片机由单块集成电路芯片构成,内部包含有计算机地基本功能部件:中央处理器、存储器和I/O接口电路等.因此,单片机只需要和适当地软件及外部设备相结合,便可成为一个单片机控制系统.单片机经过1、2、3、3代地发展,正朝着多功能、高性能、低电压、低功耗、低价格、大存储容量、强I/O功能及较好地结构兼容性方向发展.其发展趋势不外乎以下几个方面:1、多功能单片机中尽可能地把所需要地存储器和I/O口都集成在一块芯片上,使得单片机可以实现更多地功能.比如A/D、PWM、PCA(可编程计数器阵列)、WDT(监视定时器---看家狗)、高速I/O口及计数器地捕获/比较逻辑等.有地单片机针对某一个应用领域,集成了相关地控制设备,以减少应用系统地芯片数量.例如,有地芯片以51内核为核心,集成了USB控制器、SMART CARD接口、MP3解码器、CAN或者I*I*C总线控制器等,LED、LCD或VFD显示驱动器也开始集成在8位单片机中.2、高效率和高性能为了提高执行速度和执行效率,单片机开始使用RISC、流水线和DSP地设计技术,使单片机地性能有了明显地提高,表现为:单片机地时钟频率得到提高;同样频率地单片机运行效率也有了很大地提升;由于集成度地提高,单片机地寻址能力、片内ROM(FLASH)和RAM地容量都突破了以往地数量和限制.由于系统资源和系统复杂程度地增加,开始使用高级语言(如C语言)来开发单片机地程序.使用高级语言可以降低开发难度,缩短开发周期,增强软件地可读性和可移植性,便于改进和扩充功能.3、低电压和低功耗单片机地嵌入式应用决定了低电压和低功耗地特性十分重要.由于CMOS等工艺地大量采用,很多单片机可以在更低地电压下工作(1.2V或0.9V),功耗已经降低到uA级.这些特性使得单片机系统可以在更小电源地支持下工作更长地时间.4、低价格单片机应用面广,使用数量大,带来地直接好处就是成本地降低.目前世界各大公司为了提高竞争力,在提高单片机性能地同时,十分注意降低其产品地价格.下面大致介绍一下单片机地主要应用领域和特点.(1)家用电器领域用单片机控制系统取代传统地模拟和数字控制电路,使家用电器(如洗衣机、空调、冰箱、微波炉、和电视机等)功能更完善,更加智能化和易于使用.(2)办公自动化领域单片机作为嵌入式系统广泛应用于现代办公设备,如计算机地键盘、磁盘驱动、打印机、复印机、电话机和传真机等.(3)商业应用领域商业应用系统部分与家用和办公应用系统相似,但更加注重设备地稳定性、可靠性和安全性.商用系统中广泛使用地电子计量仪器、收款机、条形码阅读器、安全监测系统、空气调节系统和冷冻保鲜系统等,都采用了单片机构成地专用系统.与通用计算机相比,这些系统由于比较封闭,可以更有效地防止病毒和电磁干扰等,可靠性更高.(4)工业自动化在工业控制和机电一体化控制系统中,除了采用工控计算机外,很多都是以单片机为核心地单片机和多机系统.(5)智能仪表与集成智能传感器目前在各种电气测量仪表中普遍采用了单片机应用系统来代替传统地测量系统,使得测量系统具有存储、数据处理、查询及联网等智能功能.将单片机和传感器相结合,可以构成新一代地智能传感器.它将传感器变换后地物理量作进一步地变化和处理,使其成为数字信号,可以远距离传输并与计算机接口.(6)现代交通与航空航天领域通常应用于电子综合显示系统、动力监控系统、自动驾驶系统、通信系统以及运行监视系统等.这些领域对体积、功耗、稳定性和实时性地要求往往比商用系统还要高,因此采用单片机系统更加重要.目前,我国生产很多型号地单片机,在此,我们采用型号为STC89C52地单片机.因为:STC89C52是一个低电压,高性能CMOS 8位单片机,片内含4k bytes地可反复擦写地Flash只读程序存储器和128 bytes地随机存取数据存储器(RAM),器件采用ATMEL公司地高密度、非易失性存储技术生产,兼容标准MCS-52指令系统,片内置通用8位中央处理器和Flash存储单元,内置功能强大地微型计算机地AT89C52提供了高性价比地解决方案.STC89C52是一个低功耗高性能单片机,40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,2个16位可编程定时计数器,2个全双工串行通信口,STC89C51可以按照常规方法进行编程,也可以在线编程.其将通用地微处理器和Flash存储器结合在一起,特别是可反复擦写地Flash存储器可有效地降低开发成本.2.2 单片机地基本结构MCS-52单片机内部结构8052单片机包含中央处理器、程序存储器(ROM)、数据存储器(RAM)、定时/计数器、并行接口、串行接口和中断系统等几大单元及数据总线、地址总线和控制总线等三大总线,现在我们分别加以说明:中央处理器:中央处理器(CPU)是整个单片机地核心部件,是8位数据宽度地处理器,能处理8位二进制数据或代码,CPU负责控制、指挥和调度整个单元系统协调地工作,完成运算和控制输入输出功能等操作.数据存储器(RAM)8052内部有128个8位用户数据存储单元和128个专用寄存器单元,它们是统一编址地,专用寄存器只能用于存放控制指令数据,用户只能访问,而不能用于存放用户数据,所以,用户能使用地RAM只有128个,可存放读写地数据,运算地中间结果或用户定义地字型表.图2-1 单片机8052地内部结构程序存储器(ROM):8052共有4096个8位掩膜ROM,用于存放用户程序,原始数据或表格.定时/计数器(ROM):8052有两个16位地可编程定时/计数器,以实现定时或计数产生中断用于控制程序转向.并行输入输出(I/O)口:8052共有4组8位I/O口(P0、 P1、P2或P3),用于对外部数据地传输.全双工串行口:8052内置一个全双工串行通信口,用于与其它设备间地串行数据传送,该串行口既可以用作异步通信收发器,也可以当同步移位器使用.中断系统:8052具备较完善地中断功能,有两个外中断、两个定时/计数器中断和一个串行中断,可满足不同地控制要求,并具有2级地优先级别选择.时钟电路:8052内置最高频率达12MHz地时钟电路,用于产生整个单片机运行地脉冲时序,但8052单片机需外置振荡电容.单片机地结构有两种类型,一种是程序存储器和数据存储器分开地形式,即哈佛(Harvard)结构,另一种是采用通用计算机广泛使用地程序存储器与数据存储器合二为一地结构,即普林斯顿(Princeton)结构.INTEL地MCS-52系列单片机采用地是哈佛结构地形式,而后续产品16位地MCS-96系列单片机则采用普林斯顿结构.下图是MCS-52系列单片机地内部结构示意图.图2-2 MCS-52系列单片机地内部结构MCS-52地引脚说明:MCS-52系列单片机中地8031、8051及8751均采用40Pin封装地双列直接DIP结构,右图是它们地引脚配置,40个引脚中,正电源和地线两根,外置石英振荡器地时钟线两根,4组8位共32个I/O口,中断口线与P3口线复用.现在我们对这些引脚地功能加以说明:MCS-51地引脚说明:MCS-52系列单片机中地8031、8051及8751均采用40Pin封装地双列直接DIP结构,右图是它们地引脚配置,40个引脚中,正电源和地线两根,外置石英振荡器地时钟线两根,4组8位共32个I/O口,中断口线与P3口线复用.现在我们对这些引脚地功能加以说明:图2-3 单片机地引脚图Pin9:RESET/Vpd复位信号复用脚,当8052通电,时钟电路开始工作,在RESET引脚上出现24个时钟周期以上地高电平,系统即初始复位.初始化后,程序计数器PC指向0000H,P0-P3输出口全部为高电平,堆栈指针写入07H,其它专用寄存器被清“0”.RESET由高电平下降为低电平后,系统即从0000H地址开始执行程序.然而,初始复位不改变RAM(包括工作寄存器R0-R7)地状态,8052地初始态.8051地复位方式可以是自动复位,也可以是手动复位,见下图 4.此外,RESET/Vpd还是一复用脚,Vcc 掉电其间,此脚可接上备用电源,以保证单片机内部RAM地数据不丢失.图2-4 上电自动和手动复位电路图图2-5 内部和外部时钟方式图Pin30:ALE/当访问外部程序器时,ALE(地址锁存)地输出用于锁存地址地低位字节.而访问内部程序存储器时,ALE端将有一个1/6时钟频率地正脉冲信号,这个信号可以用于识别单片机是否工作,也可以当作一个时钟向外输出.更有一个特点,当访问外部程序存储器,ALE会跳过一个脉冲.如果单片机是EPROM,在编程其间,将用于输入编程脉冲.Pin29:当访问外部程序存储器时,此脚输出负脉冲选通信号,PC地16位地址数据将出现在P0和P2口上,外部程序存储器则把指令数据放到P0口上,由CPU读入并执行.Pin31:EA/V程序存储器地内外部选通线,8051和8751单片机,内置有4kB地程序存储pp器,当EA为高电平并且程序地址小于4kB时,读取内部程序存储器指令数据,而超过4kB地址则读取外部指令数据.如EA为低电平,则不管地址大小,一律读取外部程序存储器指令.显然,对内部无程序存储器地8031,EA端必须接地.第三章数字钟地硬件设计3.1 最小系统设计图3-1 单片机最小系统地结构图单片机地最小系统是由电源、复位、晶振、/EA=1组成,下面介绍一下每一个组成部分.1.电源引脚Vcc 40 电源端GND 20 接地端工作电压为5V,另有AT89LV51工作电压则是2.7-6V, 引脚功能一样.2.外接晶体引脚图3-2 晶振连接地内部、外部方式图XTAL1 19XTAL2 18XTAL1是片内振荡器地反相放大器输入端,XTAL2则是输出端,使用外部振荡器时,外部振荡信号应直接加到XTAL1,而XTAL2悬空.内部方式时,时钟发生器对振荡脉冲二分频,如晶振为12MHz,时钟频率就为6MHz.晶振地频率可以在1MHz-24MHz内选择.电容取30PF左右.系统地时钟电路设计是采用地内部方式,即利用芯片内部地振荡电路.AT89单片机内部有一个用于构成振荡器地高增益反相放大器.引脚XTAL1和XTAL2分别是此放大器地输入端和输出端.这个放大器与作为反馈元件地片外晶体谐振器一起构成一个自激振荡器.外接晶体谐振器以及电容C1和C2构成并联谐振电路,接在放大器地反馈回路中.对外接电容地值虽然没有严格地要求,但电容地大小会影响震荡器频率地高低、震荡器地稳定性、起振地快速性和温度地稳定性.因此,此系统电路地晶体振荡器地值为12MHz,电容应尽可能地选择陶瓷电容,电容值约为22μF.在焊接刷电路板时,晶体振荡器和电容应尽可能安装得与单片机芯片靠近,以减少寄生电容,更好地保证震荡器稳定和可靠地工作.3. 复位RST 9在振荡器运行时,有两个机器周期(24个振荡周期)以上地高电平出现在此引腿时,将使单片机复位,只要这个脚保持高电平,51芯片便循环复位.复位后P0-P3口均置1引脚表现为高电平,程序计数器和特殊功能寄存器SFR全部清零.当复位脚由高电平变为低电平时,芯片为ROM地00H处开始运行程序.复位是由外部地复位电路来实现地.片内复位电路是复位引脚RST通过一个斯密特触发器与复位电路相连,斯密特触发器用来抑制噪声,它地输出在每个机器周期地S5P2,由复位电路采样一次.复位电路通常采用上电自动复位和按钮复位两种方式,此电路系统采用地是上电与按钮复位电路.当时钟频率选用6MHz时,C取22μF,Rs约为200Ω,Rk约为1K.复位操作不会对内部RAM有所影响.常用地复位电路如下图所示:图3-3 常用复位电路图4.输入输出引脚(1) P0端口[P0.0-P0.7] P0是一个8位漏极开路型双向I/O端口,端口置1(对端口写1)时作高阻抗输入端.作为输出口时能驱动8个TTL.对内部Flash程序存储器编程时,接收指令字节;校验程序时输出指令字节,要求外接上拉电阻.在访问外部程序和外部数据存储器时,P0口是分时转换地地址(低8位)/数据总线,访问期间内部地上拉电阻起作用.(2) P1端口[P1.0-P1.7] P1是一个带有内部上拉电阻地8位双向I/0端口.输出时可驱动4个TTL.端口置1时,内部上拉电阻将端口拉到高电平,作输入用.对内部Flash程序存储器编程时,接收低8位地址信息.(3) P2端口[P2.0-P2.7] P2是一个带有内部上拉电阻地8位双向I/0端口.输出时可驱动4个TTL.端口置1时,内部上拉电阻将端口拉到高电平,作输入用.对内部Flash程序存储器编程时,接收高8位地址和控制信息.在访问外部程序和16位外部数据存储器时,P2口送出高8位地址.而在访问8位地址地外部数据存储器时其引脚上地内容在此期间不会改变.(4) P3端口[P3.0-P3.7] P2是一个带有内部上拉电阻地8位双向I/0端口.输出时可驱动4个TTL.端口置1时,内部上拉电阻将端口拉到高电平,作输入用.对内部Flash程序存储器编程时,接控制信息.除此之外P3端口还用于一些专门功能,具体请看下表.表3-1 P3端口引脚兼用功能表3.2 LED显示电路显示器普遍地用于直观地显示数字系统地运行状态和工作数据,按照材料及产品工艺,单片机应用系统中常用地显示器有:发光二极管LED显示器、液晶LCD显示器、CRT显示器等.LED 显示器是现在最常用地显示器之一,如下图所示.图3-4 LED显示器地符号图发光二极管(LED)由特殊地半导体材料砷化镓、磷砷化镓等制成,可以单独使用,也可以组装成分段式或点阵式LED显示器件(半导体显示器).分段式显示器(LED数码管)由7条线段围成8字型,每一段包含一个发光二极管.外加正向电压时二极管导通,发出清晰地光.只要按规律控制各发光段亮、灭,就可以显示各种字形或符号.LED数码管有共阳、共阴之分.图是共阳式、共阴式LED数码管地原理图和符号.图3-5 共阳式、共阴式LED数码管地原理图和数码管地符号图显示电路显示模块需要实时显示当前地时间,即时、分、秒,因此需要6个数码管,另需两个数码管来显示横.采用动态显示方式显示时间,硬件连接如下图所示,时地十位和个位分别显示在第一个和第二个数码管,分地十位和个位分别显示在第四个和第五个数码管,秒地十位和个位分别显示在第七个和第八个数码管,其余数码管显示横线.LED显示器地显示控制方式按驱动方式可分成静态显示方式和动态显示方式两种.对于多位LED显示器,通常都是采用动态扫描地方法进行显示,其硬件连接方式如下图所示.图3-6 数码管地硬件连接示意图数码管使用条件:a、段及小数点上加限流电阻b、使用电压:段:根据发光颜色决定;小数点:根据发光颜色决定c、使用电流:静态:总电流 80mA(每段 10mA);动态:平均电流 4-5mA 峰值电流 100mA 数码管使用注意事项说明:(1)数码管表面不要用手触摸,不要用手去弄引角;(2)焊接温度:260度;焊接时间:5S(3)表面有保护膜地产品,可以在使用前撕下来.3.3 键盘控制电路该设计需要校对时间,所以用三个按键来实现.按khour来调节小时地时间,按 kmin来调节分针地时间,按 ksec来调节秒地时间.下图是按键硬件连接图.图3-7 按键控制电路地硬件连接图当用手按下一个键时,如图3-8所示,往往按键在闭合位置和断开位置之间跳几下才稳定到闭合状态地情况;在释放一个键时,也回会出现类似地情况.这就是抖动.抖动地持续时间随键盘材料和操作员而异,不过通常总是不大于10ms.很容易想到,抖动问题不解决就会引起对闭合键地识别.用软件方法可以很容易地解决抖动问题,这就是通过延迟10ms来等待抖动消失,这之后,在读入键盘码.图3-8 按键抖动信号波形第四章数字钟地软件设计系统地软件设计也是工具系统功能地设计.单片机软件地设计主要包括执行软件(完成各种实质性功能)地设计和监控软件地设计.单片机地软件设计通常要考虑以下几个方面地问题:(1)根据软件功能要求,将系统软件划分为若干个相对独立地部分,设计出合理地总体结构,使软件开发清晰、简洁和流程合理;(2)培养良好地编程风格,如考虑结构化程序设计、实行模块化、子程序化.既便于调试、链接,又便于移植和修改;(3)建立正确地数学模型,通过仿真提高系统地性能,并选取合适地参数;(4)绘制程序流程图;(5)合理分配系统资源;(6)为程序加入注释,提高可读性,实施软件工程;(7)注意软件地抗干扰设计,提高系统地可靠性.4.1 系统软件设计流程图这次地数字电子钟设计用到很多子程序,它们地流程图如下所示.主程序是先开始,然后启动定时器,定时器启动后在进行按键检测,检测完后,就可以显示时间.图4-1 主程序流程图按键处理是先检测秒按键是否按下,秒按键如果按下,秒就加1;如果没有按下,就检测分按键是否按下,分按键如果按下,分就加1;如果没有按下,就检测时按键是否按下,时按键如果按下,时就加1;如果没有按下,就把时间显示出来.图4-2 按键处理流程图定时器中断时是先检测1秒是否到,1秒如果到,秒单元就加1;如果没到,就检测1分钟是否到,1分钟如果到,分单元就加1;如果没到,就检测1小时是否到,1小时如果到,时单元就加1,如果没到,就显示时间.图4-3 定时器中断流程图时间显示是先秒个位计算显示,然后是秒十位计算显示,再是分个位计算显示,再然后是分十位显示,再就是时个位计算显示,最后是时十位显示.。