单片机电子时钟课程复习进程

合集下载

51电子时钟课程设计

51电子时钟课程设计

51电子时钟课程设计一、课程目标知识目标:1. 学生能理解51单片机的内部结构及其工作原理;2. 学生能掌握电子时钟的基本原理,包括时钟芯片的初始化和使用方法;3. 学生能运用C语言编写程序,实现电子时钟的基本功能,如时、分、秒显示。

技能目标:1. 学生能运用已学的电子知识和编程技巧,完成51电子时钟的电路设计和程序编写;2. 学生通过实际操作,培养动手能力,提高解决实际问题的能力;3. 学生能通过课程学习,掌握基本的焊接技能,完成电子时钟的制作。

情感态度价值观目标:1. 学生在课程学习过程中,培养对电子技术和编程的兴趣,提高主动学习的积极性;2. 学生通过团队协作,培养沟通与合作的意识,增强团队精神;3. 学生在作品展示环节,学会欣赏他人的优点,提高自信心,培养创新精神和实践能力。

课程性质:本课程为实践性较强的课程,结合51单片机技术和电子时钟原理,注重培养学生的动手能力和实际问题解决能力。

学生特点:学生在前期课程中已掌握基本的电子知识和编程技巧,具备一定的实践基础。

教学要求:教师需引导学生运用所学知识,完成电子时钟的设计与制作,注重培养学生的创新思维和团队协作能力。

在教学过程中,关注学生的个体差异,提供个性化的指导。

通过课程目标的分解,确保学生能够实现预期的学习成果。

二、教学内容本课程教学内容主要包括以下几部分:1. 51单片机基础:复习51单片机的内部结构、工作原理,重点掌握时钟电路、复位电路和I/O口的使用。

2. 电子时钟原理:介绍电子时钟的基本构成,包括时钟芯片、晶振、显示屏等,分析时钟芯片的初始化和使用方法。

3. C语言编程:回顾C语言基础知识,重点讲解51单片机编程的语法和技巧,为编写电子时钟程序打下基础。

4. 电路设计与制作:指导学生进行电子时钟的电路设计,包括元器件的选择、电路图的绘制和PCB板的设计。

5. 程序编写与调试:教授学生编写电子时钟程序,实现时、分、秒的显示功能,并进行程序调试。

51单片机作的电子钟程序及电路图

51单片机作的电子钟程序及电路图

51单片机作的电子钟程序在很多地方已经有了介绍,对于单片机学习者而言这个程序基本上是一道门槛,掌握了电子钟程序,基本上可以说51单片机就掌握了80%。

常见的电子钟程序由显示部分,计算部分,时钟调整部分构成。

时钟的基本显示原理:时钟开始显示为0时0分0秒,也就是数码管显示000000,然后每秒秒位加1 ,到9后,10秒位加1,秒位回0。

10秒位到5后,即59秒,分钟加1,10秒位回0。

依次类推,时钟最大的显示值为23小时59分59秒。

这里只要确定了1秒的定时时间,其他位均以此为基准往上累加。

开始程序定义了秒,十秒,分,十分,小时,十小时,共6位的寄存器,分别存在30h,31h,32h,33h,34h,35h单元,便于程序以后调用和理解。

6个数码管分别显示时、分、秒,一个功能键,可以切换调整时分秒、增加数值、熄灭节电等功能全部集一键。

以下是部分汇编源程序,购买我们产品后我们用光盘将完整的单片机汇编源程序和烧写文件送给客户。

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 中断入口程序 ;; (仅供参考) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ORG 0000H ;程序执行开始地址LJMP START ;跳到标号START执行ORG 0003H ;外中断0中断程序入口RETI ;外中断0中断返回ORG 000BH ;定时器T0中断程序入口LJMP INTT0 ;跳至INTTO执行ORG 0013H ;外中断1中断程序入口RETI ;外中断1中断返回ORG 001BH ;定时器T1中断程序入口LJMP INTT1 ;跳至INTT1执行ORG 0023H ;串行中断程序入口地址RETI ;串行中断程序返回;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; 主程序 ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;START: MOV R0,#70H ;清70H-7AH共11个内存单元MOV R7,#0BH;clr P3.7 ;CLEARDISP: MOV @R0,#00H ;INC R0 ;DJNZ R7,CLEARDISP ;MOV 20H,#00H ;清20H(标志用)MOV 7AH,#0AH ;放入"熄灭符"数据MOV TMOD,#11H ;设T0、T1为16位定时器MOV TL0,#0B0H ;50MS定时初值(T0计时用)MOV TH0,#3CH ;50MS定时初值MOV TL1,#0B0H ;50MS定时初值(T1闪烁定时用)MOV TH1,#3CH ;50MS定时初值SETB EA ;总中断开放SETB ET0 ;允许T0中断SETB TR0 ;开启T0定时器MOV R4,#14H ;1秒定时用初值(50M S×20)START1: LCALL DISPLAY ;调用显示子程序JNB P3.7,SETMM1 ;P3.7口为0时转时间调整程序SJMP START1 ;P3.7口为1时跳回START1 SETMM1: LJMP SETMM ;转到时间调整程序SETMM; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; 1秒计时程序 ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;T0中断服务程序INTT0: PUSH ACC ;累加器入栈保护PUSH PSW ;状态字入栈保护CLR TR0 ;关闭定时器T0MOV A,#0B7H ;中断响应时间同步修正ADD A,TL0 ;低8位初值修正MOV TL0,A ;重装初值(低8位修正值)MOV A,#3CH ;高8位初值修正ADDC A,TH0 ;MOV TH0,A ;重装初值(高8位修正值)SETB TR0 ;开启定时器T0DJNZ R4, OUTT0 ;20次中断未到中断退出ADDSS: MOV R4,#14H ;20次中断到(1秒)重赋初值MOV R0,#71H ;指向秒计时单元(71H-72H)ACALL ADD1 ;调用加1程序(加1秒操作)MOV A,R3 ;秒数据放入A(R3为2位十进制数组合)CLR C ;清进位标志CJNE A,#60H,ADDMM ;ADDMM: JC OUTT0 ;小于60秒时中断退出ACALL CLR0 ;大于或等于60秒时对秒计时单元清0MOV R0,#77H ;指向分计时单元(76H-77H)ACALL ADD1 ;分计时单元加1分钟MOV A,R3 ;分数据放入ACLR C ;清进位标志CJNE A,#60H,ADDHH ;ADDHH: JC OUTT0 ;小于60分时中断退出ACALL CLR0 ;大于或等于60分时分计时单元清0MOV R0,#79H ;指向小时计时单(78H-79H)ACALL ADD1 ;小时计时单元加1小时MOV A,R3 ;时数据放入ACLR C ;清进位标志CJNE A,#24H,HOUR ;HOUR: JC OUTT0 ;小于24小时中断退出ACALL CLR0 ;大于或等于24小时小时计时单元清0OUTT0: MOV 72H,76H ;中断退出时将分、时计时单元数据移MOV 73H,77H ;入对应显示单元MOV 74H,78H ;MOV 75H,79H ;POP PSW ;恢复状态字(出栈)POP ACC ;恢复累加器RETI ;中断返回; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 闪动调时程序 ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;T1中断服务程序,用作时间调整时调整单元闪烁指示INTT1: PUSH ACC ;中断现场保护PUSH PSW ;MOV TL1, #0B0H ;装定时器T1定时初值MOV TH1, #3CH ;DJNZ R2,INTT1OUT ;0.3秒未到退出中断(50MS中断6次)MOV R2,#06H ;重装0.3秒定时用初值CPL 02H ;0.3秒定时到对闪烁标志取反JB 02H,FLASH1 ;02H位为1时显示单元"熄灭"MOV 72H,76H ;02H位为0时正常显示MOV 73H,77H ;MOV 74H,78H ;MOV 75H,79H ;INTT1OUT: POP PSW ;恢复现场POP ACC ;RETI ;中断退出FLASH1: JB 01H,FLASH2 ;01H位为1时,转小时熄灭控制MOV 72H,7AH ;01H位为0时,"熄灭符"数据放入分MOV 73H,7AH ;显示单元(72H-73H),将不显示分数据MOV 74H,78H ;MOV 75H,79H ;AJMP INTT1OUT ;转中断退出FLASH2: MOV 72H,76H ;01H位为1时,"熄灭符"数据放入小时MOV 73H,77H ;显示单元(74H-75H),小时数据将不显示MOV 74H,7AH ;MOV 75H,7AH ;AJMP INTT1OUT ;转中断退出; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 加1子程序 ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ADD1: MOV A,@R0 ;取当前计时单元数据到ADEC R0 ;指向前一地址SWAP A ;A中数据高四位与低四位交换ORL A,@R0 ;前一地址中数据放入A中低四位ADD A,#01H ;A加1操作DA A ;十进制调整MOV R3,A ;移入R3寄存器ANL A,#0FH ;高四位变0MOV @R0,A ;放回前一地址单元MOV A,R3 ;取回R3中暂存数据INC R0 ;指向当前地址单元SWAP A ;A中数据高四位与低四位交换ANL A,#0FH ;高四位变0MOV @R0,A ;数据放入当削地址单元中RET ;子程序返回; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 清零程序 ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;............. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 时钟调整程序 ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;当调时按键按下时进入此程序SETMM: cLR ET0 ;关定时器T0中断CLR TR0 ;关闭定时器T0LCALL DL1S ;调用1秒延时程序JB P3.7,CLOSEDIS ;键按下时间小于1秒,关闭显示(省电)MOV R2,#06H ;进入调时状态,赋闪烁定时初值SETB ET1 ;允许T1中断SETB TR1 ;开启定时器T1SET2: JNB P3.7,SET1 ;P3.7口为0(键未释放),等待SETB 00H ;键释放,分调整闪烁标志置1SET4: JB P3.7,SET3 ;等待键按下LCALL DL05S ;有键按下,延时0.5秒JNB P3.7,SETHH ;按下时间大于0.5秒转调小时状态MOV R0,#77H ;按下时间小于0.5秒加1分钟操作LCALL ADD1 ;调用加1子程序MOV A,R3 ;取调整单元数据CLR C ;清进位标志CJNE A,#60H,HHH ;调整单元数据与60比较HHH: JC SET4 ;调整单元数据小于60转SET4循环LCALL CLR0 ;调整单元数据大于或等于60时清0CLR C ;清进位标志AJMP SET4 ;跳转到SET4循环CLOSEDIS: SETB ET0 ;省电(LED不显示)状态。

单片机课程设计电子时钟

单片机课程设计电子时钟

单片机课程设计电子时钟一、课程目标知识目标:1. 让学生理解单片机的基本原理和编程方法,掌握单片机在电子时钟设计中的应用。

2. 使学生掌握电子时钟的组成和工作原理,包括时、分、秒的显示与计时功能。

3. 帮助学生了解电子时钟设计中涉及的硬件知识,如晶振、计数器、显示器件等。

技能目标:1. 培养学生运用单片机编程实现电子时钟功能的能力,提高学生的动手实践能力。

2. 培养学生分析问题、解决问题的能力,能够针对电子时钟设计过程中遇到的问题进行调试和优化。

3. 培养学生团队协作能力,通过分组合作完成课程设计任务。

情感态度价值观目标:1. 激发学生对单片机及电子制作的兴趣,培养学生主动学习的积极性。

2. 培养学生严谨的科学态度,注重实验数据的真实性,养成良好的实验习惯。

3. 增强学生的创新意识,鼓励学生在课程设计中发挥想象力和创造力,提高学生的创新能力。

课程性质:本课程为实践性课程,注重培养学生的动手能力和实际应用能力。

学生特点:学生已具备一定的单片机基础知识和编程技能,对电子制作有较高的兴趣。

教学要求:结合课本内容,注重理论与实践相结合,通过课程设计提高学生的综合应用能力。

将课程目标分解为具体的学习成果,以便在教学设计和评估过程中有针对性地指导学生。

二、教学内容1. 理论知识:- 单片机原理与编程:复习课本第三章内容,重点掌握单片机的内部结构、工作原理、指令系统及编程方法。

- 电子时钟原理:学习课本第四章关于时钟电路的设计,了解时、分、秒的计数原理及显示技术。

2. 实践操作:- 硬件设计:根据课本第五章内容,选用51单片机及相关元器件,设计电子时钟的硬件电路,包括晶振、计数器、显示器件等。

- 软件编程:运用C语言或汇编语言,编写电子时钟的程序代码,实现时、分、秒的显示与计时功能。

3. 教学大纲:- 第一周:复习单片机基础知识,讲解电子时钟原理,分配课程设计任务。

- 第二周:进行硬件电路设计,学习并选用合适的元器件,绘制原理图。

单片机课程设计报告--电子时钟(2021整理)

单片机课程设计报告--电子时钟(2021整理)

一、设计内容该课程设计是利用MCS-51单片机内部的定时/计数器、中断系统、以及行列键盘和LED显示器等部件,设计一个单片机电子时钟。

设计的电子时钟通过数码管显示,并能通过按键实现设置时间和暂停、启动控制等。

二、电子时钟设计思想:用定时/计数器T0,工作于定时,采用方式1,对12MHZ的系统时钟进行定时计数,初值设为XXYY〔自己计算〕。

形成定时时间为50ms。

用片内RAM的7BH单元对50ms 计数,计20次产生秒计数器78H单元加1,秒计数器加到60那么分计数器79H单元加1,分计数器加到60那么时计数器7AH单元加1,时计数器加到24那么时计数器清0。

然后把秒、分、时计数器分成十位和个位放到8个数码管的显示缓冲区,通过数码管显示出来。

显示格式为小时十位、小时个位---分十位、分个位---秒十位、秒个位。

在处理过程中加上了按键判断程序,能对按键处理。

三、MCS-51单片机系统简介单片机应用系统由硬件系统和软件系统两局部组成。

硬件系统是指单片机以及扩展的存储器、I\O接口、外围扩展的功能芯片以及接口电路。

软件系统包括监控程序和各种应用程序。

在单片机应用系统中,单片机是整个系统的核心,对整个系统的信息输入、处理、信息输出进行控制。

与单片机配套的有相应的复位电路、时钟电路以及扩展的存储器和I\O接口,使单片机应用系统能够运行。

在一个单片机应用系统中,往往都会输入信息和显示信息,这就涉及键盘和显示器。

在单片机应用系统中,一般都根据系统的要求配置相应的键盘和显示器。

配置键盘和显示器一般都没有统一的规定,有的系统功能复杂,需输入的信息和显示的信息量大,配置的键盘和显示器功能相对强大,而有些系统输入/输出的信息少,这时可能用几个按键和几个LED 指示灯就可以进行处理了。

在单片机应用系统在中配置的键盘可以是独立键盘,也可能是矩阵键盘。

显示器可以是LED指示灯,也可以是LED数码管,也可以是LCD显示器,还可以使用CRT显示器。

电子钟课程设计--基于单片机的电子钟设计

电子钟课程设计--基于单片机的电子钟设计

电子钟课程设计--基于单片机的电子钟设计烟台南山学院单片机课程设计题目基于单片机的电子钟设计姓名:吴志涛所在学院:计算机与电气自动化学院所学专业:自动化班级:自动化2班学号: 201002160229指导教师:杨国庆完成时间: 2013.9.20目录一、设计任务与要求 (2)1.设计的目的 (2)2.设计的指标 (2)3.设计的要求 (2)二、总体方案设计 (2)1.设计的思路 (2)2.电路的结构特征 (3)3.数据输入输出(I/O) (4)三、单元电路分析与设计 (4)1.显示部分数码管(LED) (4)2.键盘部分 (5)四、总原理图及元器件清单 (5)1.总程序图 (5)2.时间产生流程图 (6)3.按键控制流程图 (7)4.电子钟软件系统程序 (7)5.元器件清单 (10)五、软件仿真 (11)六、结论与心得 (11)七、参考文献 (12)一、设计任务与要求1.设计的目的设计一个带有年月日、时分秒及星期显示的电子钟。

电子钟的主要功能是给人们提供时间和日期信息,无论其形式如何,从外部都可分为显示和校准两部分。

为使电子日历协调工作,整个系统从功能上可分为实时时钟、显示和键盘三个模块,分别完成时间和日期的计算以及人机交互的管理等。

2.设计的指标电子钟是一套完整的时间显示系统,采用单片机等控制设计作为核心控制器,并能实时显示当前的日期,能够设置时间等操作。

3.设计的要求本电子钟能动态显示年、月、日、星期、小时、分钟、秒。

二、总体方案设计按照系统设计功能的要求,初步确定系统由主控模块、时控模块、及显示模块和键盘接口模块共4个模块组成。

主控芯片使用51系列STC89C52RC单片机,时钟芯片使用美国DALLAS公司推出的一种高性能、低功耗、带RAM的实时时钟DS1302。

采用DS1302作为计时芯片,可以做到计时准确。

更重要的是,DS1302可以在很小电流的后备电源(2.5~5.5V电源,再2.5V时耗电小于300nA),而且DS1302可以编程选择多种充电电流来为后备电源进行慢速充电,可以保证后备电源基本不耗电。

51单片机课程设计电子时钟

51单片机课程设计电子时钟

51单片机课程设计电子时钟课程设计:单片机课程设计课程名称:单片机电子时钟题目名称:电信学院学院:程工专业子电:姓名曾代科:学号 3201:国加杨指导教师2010月11年 7日一、课程设计名称:51单片机电子时钟二、设计方案:1、通过单片机内部的计数/定时器,采用软件编程来实现时钟计数,一般称为软时钟,这种方法的硬件线路简单,系统的功能一般与软件设计相关,通常用在对时间精度要求不高的场合。

2、采用时钟芯片,它的功能强大,功能部件集成在芯片内部,具有自动产生时钟等相关功能,硬件成本相对较高;软件编程简单,通常用在对时钟精度要求较高的场合。

三、设计内容:这里采用应用广泛的AT89C52作为时钟控制芯片,利用单片机内部的定时/计数器T0 实现软时钟的目的。

首先将T0设定工作于定时方式,对机器周期计数形成基准时间(50ms),然后用另一个定时/计数器T1对基准时间计数形成秒,妙计60次形成分,分计60形成小时,小时计到12。

最后通过数码管把它们的内容在相应的位置显示出来,达到时、分、秒计时的功能。

此外还要实现对时间的调整功能,89C52的、、外接三个独立按键,当按下按键时,系统进入调时间的状态或启动时间显示的功能;当按下按键时,对显示的数码管进行加一的功能;当按下按键时,对显示的数码管进行减一的功能,达到调整时间的目的。

四、系统软件程序设计1.主程序先对显示单元和定时器/计数器初始化,然后重复调用数码管显示模块和按键处理模块,当有按键按下时,则转入相应的功能程序。

2、数码管显示模块本实验有8个数码管,从右到左为妙、横线、分、横线、时。

在本系统中数码管显示采用软件译码动态显示。

在存储器中首先建立一张显示信息的字段码表,显示时,先中取出显示的信息,然后通过查表程序在从显示缓冲区字段表中查出所显示的信息的断码,从P0端口输出,同时在P2端口进行数码管显示。

3、定时器/计数器T0中断服务程序T0用于计时,选中方式一,重复定时,定时时间设为50ms,定时时间到则中断,在中断服务程序中用一个计数器对50ms计数,计20次则对秒单元加一。

单片机定时闹钟课程设计

单片机定时闹钟课程设计

单片机定时闹钟课程设计一、课程目标知识目标:1. 让学生掌握单片机的基本原理,理解定时器的功能和工作原理。

2. 使学生掌握定时闹钟程序编写的基本方法,了解中断处理的相关知识。

3. 帮助学生了解电子时钟的基本构成,掌握时间计算和显示的相关技巧。

技能目标:1. 培养学生动手实践能力,学会使用编程软件编写、调试程序,实现单片机定时闹钟功能。

2. 提高学生分析问题和解决问题的能力,能够独立完成定时闹钟课程的各项任务。

3. 培养学生团队协作能力,学会在项目过程中进行有效沟通和分工合作。

情感态度价值观目标:1. 培养学生对单片机编程的兴趣,激发他们探索未知、自主学习的精神。

2. 培养学生勇于尝试、不怕失败的品质,提高他们面对困难时的心理素质。

3. 增强学生的创新意识,鼓励他们发挥想象力和创造力,设计出具有个性的定时闹钟作品。

课程性质分析:本课程属于电子技术与应用领域的实践课程,旨在让学生通过动手实践,掌握单片机定时闹钟的设计与制作。

学生特点分析:学生处于中学阶段,具有一定的电子技术基础和编程能力,对新鲜事物充满好奇,喜欢动手实践。

教学要求:1. 结合课本知识,注重理论与实践相结合,提高学生的实际操作能力。

2. 注重培养学生的创新精神和团队协作能力,提高他们的综合素质。

3. 以学生为主体,关注个体差异,因材施教,使每个学生都能在课程中取得进步。

二、教学内容1. 单片机基础原理回顾:包括单片机的结构、工作原理、定时器/计数器功能。

2. 定时器编程技术:重点讲解定时器的初始化、中断处理程序编写,以及定时器应用实例。

- 教材章节:第三章《单片机定时器/计数器》3. 中断系统原理:介绍中断的概念、中断优先级、中断向量表,以及中断处理流程。

- 教材章节:第四章《中断系统》4. 显示技术:讲解数码管、LCD等显示器件的工作原理和编程方法。

- 教材章节:第五章《显示技术》5. 定时闹钟设计与实现:包括闹钟功能的整体设计、程序编写、调试与优化。

C52单片机电子时钟电路设计 课程设计

C52单片机电子时钟电路设计 课程设计

C52单片机电子时钟电路设计课程设计单片机原理及应用课程设计题目: C52单片机电子时钟电路设计姓名: 陶鹏鹏专业: 电子科学与技术班级: 121班指导教高海涛师:安徽科技学院数理学院目录1、基于单片机的电子时钟电路设计.........1.1设计任务与要求...................1.1.1设计目的:.................1.1.2设计要求:.................1.2方案设计 ........................2、单片机应用系统简介...................2.1AT89C52单片机的功能结构..........2.2单片机的引脚定义及功能...........2.3 定时/计数器....................2.3.1定时/计数器结构............2.3.2工作原理...................2.4键盘接口技术 ....................2.5复位操作 ........................2.6 显示控制模块....................3、硬件电路设计.........................3.1电子时钟的电路图.................3.2单元电路设计 ....................3.2.1晶振、复位电路模块.........3.2.2键盘控制模块...............3.2.3蜂鸣器电路模块.............3.2.4显示器电路模块.............4、软件设计.............................4.1系统主程序设计...................4.2主程序清单 ......................4.3系统仿真与调试...................5、结论与心得...........................摘要电子钟是一种利用数字电路来显示秒、分、时的计时装置,与传统的机械钟相比,它具有走时准确、显示直观、无机械传动装置等优点,因而得到广泛应用。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

」、设计要求1准确计时,以数字形式显示时、分、秒的时间。

2、 小时以24小时计时形式,分秒计时为 60进位。

3、 校正时间功能,即能随意设定走时时间。

4、 闹钟功能,一旦走时到该时间,能以声或光的形式告警提示。

5、 设计5V 直流电源,系统时钟电路、复位电路。

6、 能指示秒节奏,即秒提示。

7、 可采用交直流供电电源,且能自动切换。

二、设计方案和论证本次设计时钟电路,使用了 ATC89C5单片机芯片控制电路,单片机控制电 路简单且省去了很多复杂的线路,使得电路简明易懂,使用键盘键上的按键来 调整时钟的时、分、秒,用一扬声器来进行定时提醒,同时使用汇编语言程序 来控制整个时钟显示,使得编程变得更容易,这样通过四个模块:键盘、芯片、 扬声器、LED 显示即可满足设计要求。

2.1总设计原理框图如下图所示:2.2、设计方案的选择1. 计时方案方案1:采用实时时钟芯片现在市场上有很多实时时钟集成电路,女口 DS1287 DS12887 DS1302等。

这些实时时钟芯片具备年、月、日、时、分、秒计时功能和多点定时功能, 计时数据的更新每秒自动进行一次,不需要程序干预。

因此,在工业实时测 控系统中多采用这一类专用芯片来实现实时时钟功能。

方案2:使用单片机内部的可编程定时器。

校时输入时钟电路 数据显示声光报时利用单片机内部的定时计数器进行中端定时,配合软件延时实现时、分、秒的计时。

该方案节省硬件成本,但程序设计较为复杂。

2. 显示方案对于实时时钟而言,显示显然是另一个重要的环节。

通常LED显示有两种方式:动态显示和静态显示。

静态显示的优点是程序简单、显示亮度有保证、单片机CPU勺开销小,节约CPU勺工作时间。

但占有I/O 口线多,每一个LED都要占有一个I/O 口, 硬件开销大,电路复杂。

需要几个 LED就必须占有几个并行口,比较适用于 LED数量较少的场合。

当然当LED数量较多的时候,可以使用单片机的串行口通过移位寄存器的方式加以解决,但程序编写比较麻烦。

LED动态显示硬件连接简单,但动态扫描的显示方式需要占有CPU较多的时间,在单片机没有太多实时测控任务的情况下可以采用。

本系统需要采用6位LED数码管来分别显示时、分、秒,因数码管个数较多,故本系统选择动态显示方式。

2.3硬件部分1、STC89C5惮片机介绍STC89C5惮片机是由深圳宏晶公司代理销售的一款 MCU是由美国设计生产的一种低电压、高性能 CMOS 8位单片机,片内含8kbytes的可反复写的FlashROM 和128bytes的RAM 2个16位定时计数器呵。

STC89C5惮片机内部主要包括累加器ACC有时也简称为A)、程序状态字PSW 地址指示器DPTR只读存储器ROM随机存取存储器RAM寄存器、并行I/O接口P0~P3定时器/计数器、串行I/O接口以及定时控制逻辑电路等。

这些部件通过内部总线联接起来,构成一个完整的微型计算机。

其管脚图如图所示。

STC89C51单片机管脚结构图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位地址外部数据存 储器P10.T POOPUT P01 P12 PC2 P13 ?03 P14 PD4 P15 POSPie PQ6P17 P07 INTI P20 INTOP21P22T1 P23 TOP24P25EAATP26P27XI X2RESETRXDTXD 而 ALE F WR PSEN27巧143113 219 1S儿 J jrr进行存取时,P2 口输出地址的高八位。

在给出地址“ 1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2 口输出其特殊功能寄存器的内容。

P2 口在FLASH编程和校验时接收高八位地址信号和控制信号。

P3 口: P3 口管脚是8个带内部上拉电阻的双向I/O 口,可接收输出4个 TTL门电流。

当P3 口写入“ 1”后,它们被内部上拉为高电平,并用作输入。

作为输入,由于外部下拉为低电平,P3 口将输出电流(ILL)这是由于上拉的缘故。

P3 口也可作为AT89C5啲一些特殊功能口,如下表所示:口管脚备选功能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 口同时为闪烁编程和编程校验接收一些控制信号。

RST复位输入。

当振荡器复位器件时,要保持 RST脚两个机器周期的高电平时间。

ALE/PROG当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。

在FLASH编程期间,此引脚用于输入编程脉冲。

在平时, ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。

因此它可用作对外部输出的脉冲或用于定时目的。

然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。

如想禁止ALE的输出可在SFR8EH地址上置0。

此时,ALE 只有在执行MOV,MOV指令是ALE才起作用。

另外,该引脚被略微拉高。

如果微处理器在外部执行状态ALE禁止,置位无效。

PSEN:外部程序存储器的选通信号。

在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。

但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。

EA/VPP 当/EA 保持低电平时,则在此期间外部程序存储(OOOOH-FFFFH, 不管是否有内部程序存储器。

注意加密方式1时,/EA 将内部锁定为RESET 当 /EA 端保持高电平时,此间内部程序存储器。

在 FLASH 编程期间,此引脚也用于 施加12V 编程电源(VPP 。

2、上电按钮复位电路本设计采用上电按钮复位电路:首先经过上电复位,当按下按键时,接与VCC 相连,为高电平形成复位,同时电解电容被电路放电;按键松开时,VCC 对电容充电,充电电流在电阻上,RST 依然为高电平,仍然是复位,充电完成后, 电容相当于开路,RST 为低电平,单片机芯片正常工作。

其中电阻R2决定了电容充电的时间,R2越大则充电时间长,复位信号从 VCC 回落到0V 的时间也长。

3、晶振电路O1I■hX 丄r I11:3OP―・—Y112M芒2|一」1I5OP本设计晶振电路采用12M 的晶振。

晶振的作用是给单片机正常工作提供稳定 的时钟信号。

单片机的晶振并不是只能用 12M 只要不超过20M 就行,在准许的 范围内,晶振越大,单片机运行越快,还有用12M 的就是好算时间,因为一个机 器周期为1/12时钟周期,所以这样用12M 的话,一个时钟周期为12us,那么定 此文档仅供学习和交流P12P13 P14 P15 P16 P17 RESET RXD TXD INTOTTLFTi 唱RST 直时器计一次数就是1us 了,电容范围在20-40pF 之间,这里连接的是30pF 的电 容。

机器周期=10*晶振周期=12*系统时钟周期 4.下载端口设计用到的STC89C52单片机芯片的ISP 下载线是通过单片机的TXD RXD 引脚把程序烧进去的。

管脚TXD 和 RXD 用于异步串行通信。

其实STC89C5洋片 机的ISP 下载线就是一个max232芯片连接STC 和计算机的串行通信口。

计算机 把程序从九针串口送到 max232芯片,电平转换后送进单片机的串行口,也就是 TXD 和 RXD 然后单片机的串行模块把数据送到程序区。

5、显示电路就时钟而言,通常可采用液晶显示或数码管显示。

由于一般的段式液晶 屏,需要专门的驱动电路,而且液晶显示作为一种被动显示,可视性相对较 差;对于具有驱动电路和微处理器接口的液晶显示模块(字符或点阵),一般多采用并行接口,对微处理器的接口要求较高,占用资源多。

另外,89C2051 本身无专门的液晶驱动接口,因此,本时钟采用数码管显示方式。

数码管作 为一种主动显示器件,具有亮度高、价格便宜等优点,而且市场上也有专门 的时钟显示组合数码管。

对于实时时钟而言,显示显然是另一个重要的环节。

通常 LED 显示有两种方式:动态显示和静态显示。

静态显示的优点是程序简单、显示亮度有保证、单片机CPU 勺开销小, 节约CPU 勺工作时间。

但占有I/O 口线多,每一个LED 都要占有一个I/O 口, 硬件开销大,电路复杂。

需要几个 LED 就必须占有几个并行口,比较适用于 LED 数量较少的场合。

当然当LED 数量较多的时候,可以使用单片机的串行 口通过移位寄存器的方式加以解决,但程序编写比较麻烦。

LED 动态显示硬件连接简单,但动态扫描的显示方式需要占有CPU 较多的时间,在单片机没有太多实时测控任务的情况下可以采用。

INTO HSTT1TO本系统需要采用6位LED数码管来分别显示时、分、秒,因数码管个数较多,故本系统选择动态显示方式。

&时钟显示校正电路本设计利用按键开关来校正时钟显示的数字。

当按钮按下时,将在相应的端口输入一个低电平,通过相应的程序来改变时钟显示。

其中S1按键开关用来选择要修改的数字;S2按键用来增加所选数字的数值;S3按键用来减少所选数字的数值。

个1K左右的电阻后接I/O 口,集电极C连接蜂鸣器后接地。

单片机在复位后的个I/O 口是咼电平,此时二极管是截止的,编写程序使选定的I/O为低电平,此时三极管导通,导通后蜂鸣器与电源正极连通,构成一个工作回路,从而发出滴滴的响声。

其中电阻R1在电路里起分压限流的作用,PNP三极管起到模拟开关的作用。

8、外接电源电路制电路的导通与断开,当开关闭合时,电路导通,夕卜部电源给电路正常供电, 电子时钟正常工作。

相关文档
最新文档