基于单片机设计简易数字钟
基于51单片机的多功能电子钟设计

基于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单片机的工作原理基于冯诺伊曼体系结构,即程序指令和数据存储在同一块存储器中,通过总线系统进行传输。
基于单片机的数字钟毕业设计(附程序全)

基于单片机的数字钟毕业设计(附程序全) 电子时钟设计随着现代人类生活节奏的加快,人们越来越重视起了时间观念,可以说是时间和金钱划上了等号。
对于那些对时间把握非常严格和准确的人或事来说,时间的不准确会带来非常大的麻烦,所以以数码管为显示器的时钟比指针式的时钟表现出了很大的优势。
数码管显示的时间简单明了而且读数快、时间准确性更高~数字钟是采用数字电路实现对“时”、“分”、“秒”数字显示的计时装置。
数字钟的精度、稳定度远远超过老式机械钟。
在这次设计中,我们采用LED数码管显示时、分、秒,以24小时计时方式,根据数码管动态显示原理来进行显示,用12MHz的晶振产生振荡脉冲,并且由单片机的定时器计数。
在此次设计中,电路具有显示时间的其本功能,还可以实现对时间的调整。
数字钟是其小巧,价格低廉,走时精度高,使用方便,功能多,便于集成化而受广大消费的喜爱,因此得到了广泛的使用。
关键词:数字钟;单片机;数码管;时间;准确性1目录第一章绪论1. 数字电子钟的意义和应用…………………………………………………………………… 3 第二章整体设计方案2.1 单片机的选择…………………………………………………………………………… 3 2.2 单片机的基本结构……………………………………………………………………… 5 第三章数字钟的硬件设计3.1 最小系统设计…………………………………………………………………………… 9 3.2 LED显示电路…………………………………………………………………………… 12 3.3 键盘控制电路…………………………………………………………………………… 14 第四章数字钟的软件设计4.1 系统软件设计流程图…………………………………………………………………… 15 4.2 数字电子钟的原理图…………………………………………………………………… 18 4.3 主程序…………………………………………………………………………………… 19 4.4 时钟设置子程序………………………………………………………………………… 20 4.5 定时器中断子程序……………………………………………………………………… 20 4.6 LED显示子程序………………………………………………………………………… 21 4.7 按键控制子程序………………………………………………………………………… 23 第五章系统仿真5.1 PROTUES软件介绍................................................................................. 24 5.2 电子钟系统PROTUES仿真........................................................................ 24 结束语. (2)5 参考文献 (26)2第一章绪论1.数字电子钟的意义和应用数字钟是采用数字电路实现对时、分、秒数字显示的计时装置,广泛用于个人家庭、车站、码头、办公室等公共场所,成为人们日常生活中不可少的必需品,由于数字集成电路的发展和石英晶体振荡器的广泛应用,使得数字钟的精度,远远超过老式钟表, 钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能。
基于51单片机的简易数字钟系统设计

简易数字钟系统设计完成一个简易数字时钟系统设计。
要求:用3个独立按键调整时间。
一个按键控制启动运行。
在调整结束后按运行键后开始运行。
1,开机时,显示00:00:00时间从零开始调整。
2,P10控制秒的调整,每按一次加1s。
3,p11控制分的调整,每按一次加1min。
4,p12控制时的调整,每按一次加1h。
5,p13控制运行和停止。
程序:#include<reg52.h>sbit key1=P3^4;sbit key2=P3^5;sbit key3=P3^6;sbit key4=P3^7;#define uchar unsigned char#define uint unsigned intuchar shi,ge,aa,num,num1,num2,tt;uint n;uchar q1,q2,b1,b2;sbit dula=P2^6;sbit wela=P2^7;void keyscan();void delay(uint);void display();uchar table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};void keyscan(){if(key1==0){ num2++;if(num2==24)num2=0;while(!key1);if(key2==0){num1++;if(num1==60)num1=0;while(!key2);}if(key3==0){num++;if(num==60)num=0;while(!key3);}if(key4==0){ TR0=~TR0;while(!key4);}}void main(){TMOD=0x00;TH0=(65536-50000)/256;TL0=(65536-50000)%256;EA=1;ET0=1;while(1){ k eyscan();display();}}void time0()interrupt 1{TH0=(65536-50000)/256;TL0=(65536-50000)%256;tt++;if(tt==100){ tt=0;num++;if(num==60){ num=0;num1++;if(num1==60){ num1=0;num2++;if(num2==24)num2=0;}}}}void display(){q1=num2/10;q2=num2%10;b1=num1/10;b2=num1%10;shi=num/10;ge=num%10;wela=1;P0=0xfe;wela=0;P0=0xff;P0=table[q1]; dula=0; delay(1);wela=1;P0=0xfd; wela=0;P0=0xff; dula=1;P0=table[q2]; dula=0; delay(1);wela=1;P0=0xfb; wela=0;P0=0xff; dula=1;P0=table[b1]; dula=0; delay(1);wela=1;P0=0xf7; wela=0;P0=0xff; dula=1;P0=table[b2]; dula=0; delay(1);wela=1;P0=0xef; wela=0;P0=0xff; dula=1;P0=table[shi]; dula=0; delay(1);wela=1;P0=0xdf;P0=0xff;dula=1;P0=table[ge];dula=0;delay(1);}void delay(uint x){uint i,j;for(i=x;i>0;i--)for(j=110;j>0;j--); }。
基于单片机设计简易数字钟

信息与电气工程学院(课程设计说明书(2015/2016 学年第二学期)课程名称:单片机应用技术课程设计题目:简易数字钟设计专业班级:电气工程及其自动化1303班学生姓名:学号:指导教师:刘增环、岑毅南、李兵等设计周数:两周设计成绩:2016年6月24日【摘要】20世纪末,电子技术获得了飞速的发展,在其推动下,现代电子产品几乎渗透了社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高,同时也使现代电子产品性能进一步提高,产品更新换代的节奏也越来越快。
单片机模块中最常见的是数字钟,数字钟是一种用数字电路技术实现时、分、秒计时的装置,与机械式时钟相比具有更高的准确性和直观性,且无机械装置,具有更长的使用寿命,因此得到了广泛的使用。
单片机数字时钟是以单片机为核心,在它的基础上设计出来的数字时钟,本设计采用了STC公司生产的AT80C51型单片机设计了一个单片机最小系统,外接LED显示电路,按键电路,晶振电路,复位电路模块构成了一个简易的数字钟,具有显示、时、分、秒的功能,且时、分、秒每一个参数都可以自行设置,以实现时间的校正,总体来说实现了一个数字时钟的应有功能。
关键词:80C51系列单片机、单片机最小系统、时钟定时器、4位一体数码管显示目录课程设计正文 (1)一系统工作原理 (1)1.1 功能说明 (1)1.2 基本原理 (1)二硬件设计 (2)2.1 单片机 (2)2.2 复位电路 (3)2.3 晶振电路 (3)2.4 键盘调整单元 (4)2.5 数码管与三极管显示 (5)三软件设计 (6)3.1 系统主程序 (6)3.2 中断程序 (6)3.3显示函数 (6)3.4键盘扫描程序 (7)3.5时钟实现的基本方法 (7)四心得体会 (7)附录源程序 (8)课程设计的目的(1)巩固、加深和扩大单片机应用的知识面,提高综合及灵活运用所学知识解决工业控制能力;(2)培养针对课题需要,选择和查阅有关手册、图表及文献资料的自学能力,提高组成系统、编程、调试的动手能力;(3)对课题设计方案的分析、选择、比较、熟悉单片机应用系统开发、研制过程,软硬件设计的方法、内容及步骤。
基于单片机的数字钟毕业设计(附程序全)

基于单片机的数字钟毕业设计(附程序全) 电子时钟设计随着现代人类生活节奏的加快,人们越来越重视起了时间观念,可以说是时间和金钱划上了等号。
对于那些对时间把握非常严格和准确的人或事来说,时间的不准确会带来非常大的麻烦,所以以数码管为显示器的时钟比指针式的时钟表现出了很大的优势。
数码管显示的时间简单明了而且读数快、时间准确性更高~数字钟是采用数字电路实现对“时”、“分”、“秒”数字显示的计时装置。
数字钟的精度、稳定度远远超过老式机械钟。
在这次设计中,我们采用LED数码管显示时、分、秒,以24小时计时方式,根据数码管动态显示原理来进行显示,用12MHz的晶振产生振荡脉冲,并且由单片机的定时器计数。
在此次设计中,电路具有显示时间的其本功能,还可以实现对时间的调整。
数字钟是其小巧,价格低廉,走时精度高,使用方便,功能多,便于集成化而受广大消费的喜爱,因此得到了广泛的使用。
关键词:数字钟;单片机;数码管;时间;准确性1目录第一章绪论1. 数字电子钟的意义和应用…………………………………………………………………… 3 第二章整体设计方案2.1 单片机的选择…………………………………………………………………………… 3 2.2 单片机的基本结构……………………………………………………………………… 5 第三章数字钟的硬件设计3.1 最小系统设计…………………………………………………………………………… 9 3.2 LED显示电路…………………………………………………………………………… 12 3.3 键盘控制电路…………………………………………………………………………… 14 第四章数字钟的软件设计4.1 系统软件设计流程图…………………………………………………………………… 15 4.2 数字电子钟的原理图…………………………………………………………………… 18 4.3 主程序…………………………………………………………………………………… 19 4.4 时钟设置子程序………………………………………………………………………… 20 4.5 定时器中断子程序……………………………………………………………………… 20 4.6 LED显示子程序………………………………………………………………………… 21 4.7 按键控制子程序………………………………………………………………………… 23 第五章系统仿真5.1 PROTUES软件介绍................................................................................. 24 5.2 电子钟系统PROTUES仿真........................................................................ 24 结束语. (2)5 参考文献 (26)2第一章绪论1.数字电子钟的意义和应用数字钟是采用数字电路实现对时、分、秒数字显示的计时装置,广泛用于个人家庭、车站、码头、办公室等公共场所,成为人们日常生活中不可少的必需品,由于数字集成电路的发展和石英晶体振荡器的广泛应用,使得数字钟的精度,远远超过老式钟表, 钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能。
单片机课程设计实验报告+基于单片机的数字时钟+含完整实验代码

单片机课程设计报告基于单片机的数字时钟姓名:班级:学号:一、前言利用实验板上的4个LED数码管,设计带有闹铃、秒表功能的数字时钟。
功能要求:a)计时并显示(LED)。
由于实验板上只有4位数码管,可设计成显示“时分”和显示“分秒”并可切换。
b)时间调整功能。
利用4个独立按钮,实现时钟调整功能。
这4个按钮的功能为工作模式切换按钮(MODE),数字加(INC),数字减(DEC)和数字移位(SHITF)。
c)定闹功能。
利用4个独立按钮设定闹钟时间,时间到以蜂鸣器响、继电器动作作为闹铃。
d)秒表功能。
最小时间单位0.01秒。
二、硬件原理分析1.电源部分电源部份采用两种输入接口(如上图)。
a)外电源供电,采用2.1电源座,可接入电源DC5V,经单向保护D1接入开关S1。
b)USB供电,USB供电口输入电源也经D1单向保护,送到开关S1。
注:两路电源输入是并连的,因此只选择一路就可以了,以免出问题。
S1为板子工作电源开关,按下后接通电源,提供VCC给板子各功能电路。
电路采用两个滤波电容,给板子一个更加稳定的工作电源。
LED为电源的指示灯,通电后LED灯亮。
2.蜂鸣器蜂鸣器分为有源和无源两种,有源即两引脚有一个直流电源就可以长鸣,无源则需要一个1K左右的脉冲才可以蜂鸣,因此对于按键的提示音及报警蜂鸣使用有源来得方便。
有源也可以当无源使用,而无源则不能当有源使用,当然用有源蜂鸣器作音乐发声会失真厉害。
如上图:单片机P15输出高低电平经R21连接三极管B极,控制三极管的导通与截止,从而控制蜂鸣器的工作。
低电平时三极管导通,蜂鸣器得电蜂鸣,高电平时三极管截止,蜂鸣器失电关闭蜂鸣。
电路使用一个四位共阳型数码管,四个公共阳级由三极管放大电流来驱动,三极管由P10-P13控制开与关。
数码管的阴级由P0口经过电阻限流连接。
例如,要十位的数码管工作,P12输出0,使三极管Q12导通,8脚得电,当P0口相应位有输出0时,点亮相应的LED灯组合各种字符数字。
基于单片机的简易电子时钟设计

基于单片机的简易电子时钟设计电子时钟是一种以数字形式显示时间的设备,它使用电子元件来实现计时和显示功能。
基于单片机的简易电子时钟设计是一种使用单片机芯片作为核心控制器的时钟设备。
本文将介绍一个基于单片机的简易电子时钟设计的方案,并详细讨论其硬件和软件实现。
一、硬件设计基于单片机的电子时钟设计的核心是单片机芯片,这里我们选择AT89C51作为控制器。
AT89C51是一款典型的80C51系列单片机,具有高速、低功耗和强大的计数和定时功能。
此外,还需要以下硬件元件实现电子时钟设计:1.电源模块:提供电源给单片机和其他电路元件。
2.晶振:用于提供时钟信号给单片机。
3.液晶显示模块:用于显示时间。
4.按键模块:用于设置和调节时间,以及其他功能操作。
5.蜂鸣器:用于发出小时、分钟和秒的提示音。
二、软件设计基于AT89C51的电子时钟设计需要编写相应的嵌入式软件程序。
以下是设计思路和主要功能点:1.初始化设置:在电子时钟启动时,进行一些初始化设置,如设置系统时钟、显示模式和其他参数。
2.时钟计时:使用定时器和计数器模块,实现时钟的计数功能。
根据时钟信号逐秒递增,并根据设定的模式进行小时、分钟和秒的更新。
3.时间显示:将当前的小时、分钟和秒数转化成对应的数字,在液晶显示模块上显示出来。
4.时间调整:通过按键模块,实现时间的调整功能。
可以通过按键设置、递增和递减来调整小时、分钟和秒。
5.其他功能:可以添加一些其他功能,如闹钟设置、闹铃功能等,以增强电子时钟的实用性。
三、实施步骤1.硬件搭建:按照上述硬件设计需求,搭建电子时钟的硬件电路。
注意连接正确的引脚,提供稳定的电源。
2.软件编写:根据设计思路和功能点,编写相应的嵌入式软件程序。
使用C语言或汇编语言编写代码,并调试和测试程序。
4.测试和优化:将电源连接到电子时钟,进行测试和优化。
检查时钟的计时和显示功能是否正常,是否可以调整时间。
四、实际应用总结:基于单片机的简易电子时钟设计是一种使用单片机芯片作为核心控制器的时钟设备。
74ls161单片机30进制数数字钟设计过程

74ls161单片机30进制数数字钟设计过程设计一个74LS161单片机30进制数的数字钟,可以按照以下步骤进行:
1.确定时钟的时间范围和显示方式。
例如,设定时间范围为00:00到29:59,并使用四个数码管显示小时和分钟。
2.确定数码管的接线方式。
74LS161是一个4位二进制计数器,输出
是四个二进制信号。
将每个输出信号连接到对应数码管的相应段。
3.编写单片机程序。
使用74LS161作为时钟源,每秒产生一个脉冲。
程序需实现以下功能:
-将74LS161的输出转换为30进制的数值,并将其转换为BCD码或者
直接连接到数码管显示。
-根据当前的数值更新数码管的显示。
4.连接外部电路和电源。
将74LS161和四位数码管连接到单片机的引脚,并连接适当的电源。
确保电路的接地和电源线连接正确。
5.编译程序,并将其烧录到单片机中。
使用适当的开发工具和编译器,将编写好的程序烧录到单片机中。
6.测试和调试。
连接电源后,观察数码管的显示是否正确。
调试程序,确保时钟的计时和显示功能正常。
以上是一个简单的设计过程,可以根据具体需求进行适当的修改和调整。
还可以添加其他功能,如闹钟和定时器等。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
辽东学院信息技术学院《单片机原理与接口技术》课程设计报告简易数字钟设计学生姓名:学号: 0915110606班级: B1106专业:电子信息工程指导教师:2014年07月【摘要】20世纪末,电子技术获得了飞速的发展,在其推动下,现代电子产品几乎渗透了社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高,同时也使现代电子产品性能进一步提高,产品更新换代的节奏也越来越快。
单片机模块中最常见的是数字钟,数字钟是一种用数字电路技术实现时、分、秒计时的装置,与机械式时钟相比具有更高的准确性和直观性,且无机械装置,具有更长的使用寿命,因此得到了广泛的使用。
单片机数字时钟是以单片机为核心,在它的基础上设计出来的数字时钟,本设计采用了STC公司生产的AT80C51型单片机设计了一个单片机最小系统,外接LED 显示电路,按键电路,晶振电路,复位电路模块构成了一个简易的数字钟,具有显示、时、分、秒的功能,且时、分、秒每一个参数都可以自行设置,以实现时间的校正,总体来说实现了一个数字时钟的应有功能。
关键词:80C51系列单片机、单片机最小系统、时钟定时器、4位一体数码管显示【Abstract】At the end of twentieth Century, electronic technology has obtained the rapid development, under its impetus, the modern electronic products into almost every field of the society, a strong impetus to the development of social productivity and the improvement of social information-based degree, simultaneously also makes the modern electronic products to further improve the performance, product upgrading have become increasingly fast pace.SCM module is the most common digital clock, digital clock is a device for digital circuit technology, minutes, seconds, compared with the mechanical clock has a higher accuracy and intuitive, and no mechanical devices, has a longer service life, so it is widely used.Single chip digital clock is a single-chip microcomputer as the core, the digital clock design based on it, this design uses the AT80C51 microcontroller STC produced the design of a microcomputer system, connected with the LED display circuit, keyboard circuit, crystal circuit, reset circuit module consists of a simple digital clock, with a display, when, minutes and seconds, function, and when, minutes and seconds, all parameters can be set up, to correct the realization of time, generally realize the function of a digital clock.Keywords:80C51 Series MCU, MCU minimum system, clock timer, one of 4 digital tube display目录绪论 (1)一系统工作原理 (2)1.1功能说明 (2)1.2基本原理 (2)二硬件设计 (3)2.1 单片机 (3)2.2 复位电路 (3)2.3 晶振电路 (4)2.4 键盘调整单元 (4)2.5 数码管与三极管显示 (5)2.6 二极管显示 (6)三软件设计 (8)3.1 系统主程序 (8)3.2 中断程序 (9)3.3显示函数流程图 (10)3.4键盘扫描程序 (10)3.5时钟实现的基本方法 (12)四调试 (12)五结论 (14)参考文献 (15)⏹附录A 源程序 (16)⏹附录B 系统原理图 (22)绪论随着嵌入式技术的发展,嵌入式系统应用愈来愈广泛,单片机作为当前嵌入式系统的核心部分之一,具有体积小,速度快,功耗低,价格低廉等特点。
在工业、教育、日用生活等诸多领域得到了广泛的应用,例如,在冰箱、微波炉、洗衣机等家用电器中使用单片机控制系统,可以使它们更加智能的工作,电话,传真,打印机中可使用单片机系统控制拨号,打印,单片机还可以在工业控制和机电一体化系统中作为核心控制部件,市场上微型处理器的品种愈来愈多功能也愈来愈强,但是MCS-51以其强大的功能和很高的性价比再加之使用简单,被绝大多数电子工程师所青睐,因此MCS-51单片机在非高端嵌入式开发领域占有绝大部分市场。
一系统工作原理1.1功能说明全面了解掌握MCS-51的基本知识,由于该系列单片机具有体积小、功耗低、价格便宜、易于产品化等特点,可以更加方便的实现以下特点:1、准确及时,以数字形式显示时、分的时间;2、小时的计时为24小时制,分和秒的计时要求为60进位;3、四位数码管,显示时、分,按键“功能键”依次选择调整“时”、“分”,按键的“加键”依次加1,按键“减键”依次减1;4、晶振电路起到减小误差,提高精确度的作用;5、该系统中的秒由发光二极管代替,每闪烁1次则为1秒。
1.2基本原理该系统主要由复位电路、晶振电路、按键电路,数码管显示电路和STC80C51单片机组成。
该数字时钟设计采用单片机内部的定时器来定时,,然后通过软件编程来实现时钟的显示,这种设计方案的优点是外围器件少,电路简单清晰,电路焊接容易,出问题的故障几率小。
系统结构图如图1所示。
图1二硬件设计2.1 单片机STC80C51系列单片机采用了CMOS技术制造,较之AT89c51系列单片机,集成度高、速度快、功耗低。
主要由9个部件组成,分别是:1个8位中央处理器;4KBFlash存储器;128B的数据存储器;32条I/O口线;2个定时器/计数器;1个具有5个中断源、2个优先级的中断嵌套结构;全双工UART的串行口;特殊功能寄存器;1个片内振荡器和时钟电路。
如图2所示。
s图2 STC80C51单片机2.2 复位电路STC80C51 的复位端高电平有效。
RST端若由低电平上升到高电平并持续2个周期,系统将实现一次复位操作。
在复位电路中,下拉电阻具有拉低电平作用,按一下复位开关就使在RST端出现一段时间的高电平。
复位电路如图3所示。
图3复位电路2.3 晶振电路外接12MHZ晶振和两个30pF 电容组成系统的内部时钟电路。
将外部已有信号引入单片机内,这种方式适宜用来使单片机的时钟与外部信号保持同步。
晶振电路如图4所示。
图4 晶振电路2.4 键盘调整单元当要对时钟进行调时时,就要用到键盘进行时间修改。
由于调节信息不多,故采用3个独立键盘即可,分别实现功能、增大、减小等作用。
将所有扫描线置成低电平,检查输入线是否为低电平,若无低电平则不是按键操作,延时一段时间,再次将所有扫描线置成低电平,检查输入线是否为低电平,如果有低电平则是按键操作,若无低电平则不是按键操作,返回,即完成按键扫描。
键盘原理图如图5所示图5键盘原理图S2:接P1.0口,具有切换功能,可以切换到时、分,从而实现对时、分的调整,再次按下功能键S2则返回,继续计时。
S3:接P1.1口,实现时和分的增大S4:接P1.2口,实现时和分的减小2.5 数码管与三极管显示显示单元由4个8段共阳数码管组成,数码管位选端分别接P2.0、P2.1、P2.2和P2.3用于显示小时和分钟;而秒则以发光二极管闪烁来计时。
按照工作方式, 数码管显示可以分为静态显示和动态扫描。
所谓静态显示, 就是每一个数码管的段码都要独占具有锁存功能的输出口, CPU把要显示的字码送到输出口上,就可以使数码管显示对应的字符, 直到下一次送出另外一个字码之前, 显示的内容一直不会消失;动态扫描是把所有显示器的8个段码中的A-dp的各个相同段连接在一起, 接到一个公共的输出口上,而数码管的位端分别接在另外的输出口上,通过这两个输出口的两组信号相互作用来产生显示效果。
即让各位数码管按照一定顺序轮流显示, 只要扫描频率足够高, 由于人眼的“ 视觉暂留”现象,就能连续稳定的显示动态扫描其特点在于能显著降低显示部分成本,大大减少显示接口的连线结构。
该系统采用动态扫描显示。
三极管放大电路中发射极正向偏置,集电极反向偏置是使三极管工作的必要条件,当PNP管的VC<VB<VE时,使得集电结反偏,发射结正偏时,管子的发射极电流流入管子,基极电流和集电极电流流出管子,且集电极电流跟基极电流之间成β关系,三极电流满足IE=IB+IC=IB(1+β·IB)。
即,基极电流可以控制集电极电流,这种控制作用就称为管子的放大作用,图中1K电阻为了限流。
如图6所示。
图6 数码管显示2.6 二极管显示以发光二极管的闪烁实现秒的计时,每闪烁一下记为1秒,每闪烁60下记为1分钟。
将二极管接一300 电阻用于限流,由于允许通过二极管的电流为10mA~15mA ,max min 15107.15R R ≤--≤,求得330220≤≤R ,故二极管显示电路如图7所示。
图7 二极管显示三软件设计3.1 系统主程序中需要对各个模块进行初始化,并且判断定时器是否溢出20次,用以确定是否到达1S,初始化主要包括:设置定时器0工作方式1,定时器赋初值,开总中断,开定时器0中断,启动定时器,标志位flag2,flag3置位;主程序流程图如下:2图9程序流程3.2 中断程序定时器0中断:单片机晶振12MHZ,主要是使用定时器0方式1,每50ms 溢出一次,计数加一次,计数20次,到时1S;流程图如下:图103.3显示函数流程图本设计采用共阳数码管显示,显示分钟,拆分分钟的个位与十位,aa=fen/10;bb=fen%10;将aa,bb的值分别查段选表,送至P0;P2打开数码管的位选,从而显示分钟;显示小时与显示分钟相似;显示函数流程图如下:图113.4键盘扫描程序键盘采用查询的方式,放在主程序中,当没有按键按下的时候,单片机循环主程序;一旦有k1按键按下,单片机停止计时,按一次k1键,是对分钟进行调节,按二次k1键是对小时进行调节;k2,k3键分别是加减键,只有在k1键被按下的前提下,k2,k3键才有效;流程图如下:图123.5时钟实现的基本方法时钟的最小计时单位是秒,使用定时器0方式1,把定时器的定时时间定为50ms。