5.1 时钟模块
- 格式:ppt
- 大小:569.50 KB
- 文档页数:45
光模块内部时钟概述及解释说明1. 引言1.1 概述光模块内部时钟在光通信系统中起到重要的作用,它是指光模块内部用于同步数据传输的时钟源。
准确和稳定的时钟信号对于数据的传输质量和可靠性至关重要。
本文将详细介绍光模块内部时钟的基本原理、应用场景以及技术挑战与解决方案。
1.2 文章结构本文分为五个章节,结构清晰明确。
首先,在引言部分,我们将概述本文内容,并说明文章目录。
其后,第二章将阐述光模块内部时钟的基本原理,包括定义和功能、时钟在光模块中的作用和重要性,以及光模块内部时钟的组成和工作原理。
第三章将探讨光模块内部时钟在不同领域中的应用场景,包括数据通信领域、高频率信号传输以及其他领域。
在第四章中,我们将详细讨论光模块内部时钟面临的技术挑战,并提供相应解决方案。
最后,在第五章中,我们将总结全文内容并归纳出重点观点,并对光模块内部时钟的未来发展进行探讨,同时提出进一步研究方向和问题。
1.3 目的本文的主要目的是介绍光模块内部时钟的基本原理、应用场景以及面临的技术挑战。
通过这篇文章,读者可以了解光模块内部时钟在光通信系统中的重要性,并掌握相关技术解决方案。
此外,我们也希望为该领域中进一步研究和创新提供一些思路和启示。
2. 光模块内部时钟的基本原理2.1 光模块的定义和功能光模块是一种用于光纤通信的设备,它主要用于将电信号转换为可传输的光信号,并在接收端将光信号重新转换为电信号。
光模块具有发送和接收功能,在数据通信中起着非常重要的作用。
2.2 时钟在光模块中的作用和重要性时钟在光模块中具有关键作用和重要性。
光模块需要一个准确稳定的时钟源来控制其内部工作,并确保数据的准确传输。
时钟源会驱动数据发送和接收过程,同时还需要与其他设备保持同步以实现高效可靠的数据通信。
2.3 光模块内部时钟的组成和工作原理根据不同类型的光模块,其内部时钟可以采用不同的组成方式和工作原理。
一般来说,光模块内部时钟由晶振、频率合成器、锁相环等组件构成。
深⼊理解计算机系统(5.1)------优化程序性能 你能获得的对程序最⼤的加速⽐就是当你第⼀次让它⼯作起来的时候。
在讲解如何优化程序性能之前,我们⾸先要明确写程序最主要的⽬标就是使它在所有可能的情况下都能正常⼯作,⼀个运⾏的很快的程序但是却是错误的结果是没有任何⽤处的,所以我们在进⾏程序性能优化之前,⾸先要保证程序能正常运⾏,且结果是我们需要的。
⽽且在很多情况下,让程序跑的更快是我们必须要解决的问题。
⽐如⼀个程序要实时处理视频帧或者⽹络包,那么⼀个运⾏的很慢的程序就不能解决此问题。
再⽐如⼀个计算任务计算量⾮常⼤,需要数⽇或者数周,如果我们哪怕只是让它运⾏的快20%也会产⽣重⼤影响。
1、编写⾼效程序的切⼊点 ①、选择⼀组合适的算法和数据结构。
②、编写出编译器能够有效优化以转换成⾼效可执⾏的源代码。
③、多线程并⾏处理运算。
对于第⼀点,程序=数据结构+算法,选择合适的数据结构和算法⽆疑对于提⾼程序的运⾏效率有很⼤的影响。
第⼆点对于编程者则需要理解编译器的优化能⼒以及局限性,编写程序看上去只是⼀点⼩⼩的改动,可能都会引起编译器优化⽅式很⼤的变化;第三点技术主要这对运算量特别⼤的运算,我们将⼀个⼤的任务分成多个⼩任务,这些任务⼜可以在多核和多处理器的某种组合上并⾏的计算,这⾥我们也需要知道,即使是利⽤并⾏性,每个并⾏的线程都要以最⾼性能的⽅式执⾏。
2、编译器的优化能⼒和局限性 正确性,正确性,正确性这个要着重提醒,所以编译器必须很⼩⼼的对程序使⽤安全的优化。
限制编译器只进⾏安全的优化,会消除⼀些造成错误的运⾏结果,但是这也意味着程序员必须花费更⼤的⼒⽓写出程序使编译器能够将之转换为有效机器代码。
对于下⾯两个程序:void add1(int *xp,int *yp){*xp += *yp;*xp += *yp;}void add2(int *xp,int *yp){*xp += 2* *yp;} 对上上⾯两个函数add1和add2,它们都是将存储在由指针 yp 指⽰的位置处的值两次加到指针 xp 指⽰的位置处的值。
单片机课程设计报告多功能电子数字钟姓名:学号:班级:指导教师:目录一课程设计题目—-—-———--—--—-—--------—-——---—- 3二电路设计--------——-——---—--——---——--————-——--—- 4三程序总体设计思路概述——-------———-——--——5四各模块程序设计及流程图——--—---------——6五程序及程序说明见附录-—-——————-—-—---—-- **六课程设计心得及体会-----————-————--——--—- 11七参考资料—-—-—---—--———-———--————-—-----—----—-—12一题目及要求本次单片机课程设计在Proteus软件仿真平台下实现,完成电路设计连接,编程、调试,仿真出实验结果。
具体要如下:用8051单片机设计扩展6位数码管的静态或动态显示电路,再连接几个按键和一个蜂鸣器报警电路,设计出一个多功能电子钟,实现以下功能: (1)走时(能实现时分秒,年月日的计时)(2)显示(分屏切换显示时分秒和年月日,修改时能定位闪烁显示)(3)校时(能用按键修改和校准时钟)(4)定时报警(能定点报时)本次课程设计要求每个学生使用Proteus仿真软件独立设计制作出电路图、完成程序设计和系统仿真调试,验收时能操作演示.最后验收检查结果,评定成绩分为:(1)完成“走时+显示+秒闪”功能—-——及格(2)完成“校时修改”功能---—中等(3)完成“校时修改位闪"---—良好(4)完成“定点报警”功能,且使用资源少----优秀二电路设计(电路设计图见附件电路图)(1)采用89C51型号单片机(2)采用8位共阴数码管(3)因为单片机输出高电平时输出的电流不足以驱动数码管,所以在P0口与8位数码管之间加74LS373来驱动数码管(4)P2口与数码管选择位直接加74LS138译码器(5)蜂鸣器接P3。
7口。
基于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单片机设计的简易电子钟可以显示当前时间,并且实现时间的调整和闹钟设定功能。
但是由于硬件资源有限,只能实现基本的功能,不能进行其他高级功能的扩展,例如闹铃的音乐播放、温度、湿度的显示等。
时钟模块1,时钟模块简要介绍时钟模块允许设备配置多个时钟模式中的一个。
时钟模式,包括内部相位锁相环(PLL )时钟与外部参考时钟或内部晶体放大器支持外部晶振参考时钟。
PLL 也可以被禁用,并且一个设备可以直接使用外部振荡器的时钟。
时钟模块包含以下内容:(1)晶体放大器和振荡器(OSC ); (2)锁相环(PLL );(3)分频器(RFD ); (4)状态和控制寄存器; (5)状态和控制寄存器; (6)控制逻辑;(7)实时时钟(RTC )振荡器。
2,特点时钟模块的功能包括以下内容:(1)晶体的张弛振荡器,或外部振荡器的参考选项; (2)修整松弛振荡器;(3)通过PLL 的与分频功能可以划分时钟源的频率范围; (4)外部RTC/备份振荡器(标称频率32.768千赫);(5)系统时钟可以由PLL 或直接由晶体振荡器或弛张振荡器决定; (6)支持低功耗模式; (7)独立的时钟输出信号; (8))150(2<=<=n n超低频运行的低功率分配器。
3,操作模式时钟模块可以运行在看门狗定时器模式下,RTC 模式下,正常PLL 模式(默认)或外部时钟模式下(锁相环禁用)。
3.1看门狗定时器模式在这种模式下,在POR (上电复位)后,看门狗定时器被禁用,这时定时器的时钟输入是系统时钟。
辅助看门狗定时器模块的时钟源的选用,能够仅出现一次的POR 。
因此,如果松弛振荡器作为定时器的输入源选择,随后尝试选择张弛振荡器作为系统时钟源被封锁,直到未来POR 。
如果已经选定的张弛振荡器作为系统时钟源,随后被选中作为定时器的输入源,系统和定时器可以使用的振荡器源。
3.2RTC模式一个专用的RTC振荡器可以选择运行RTC电路。
在正常运作,此振荡器是由VDDPLL和VSSPLL引脚控制的。
当部分关闭,这个振荡器供电由VSTBY针。
预计名义RTC振荡器的频率是32.768千赫,但范围可以从32千赫到40千赫。
3.3普通PLL模式在正常的PLL模式下,PLL是完全可编程的,它可以从1X到18X参考频率合成频率范围,并有一个辅助分频器,在没有扰乱PLL频率合成的情况下降低干扰。
OptiX 2500+ 高级培训手册目录目录第5章OptiX 2500+时钟配置 (1)5.1 OptiX 2500+的XCS时钟模块 (1)5.2 时钟工作模式 (1)5.2.1 跟踪工作模式 (1)5.2.2 保持工作模式 (2)5.2.3 自由振荡工作模式 (2)5.3 SSMB和时钟保护倒换的概念 (2)5.3.1 SSMB的概念 (2)5.3.2 SSMB在2Mbit/s时钟信号中的位置 (3)5.3.3 SSMB和S1字节的关系 (3)5.3.4 5.3.4 时钟保护倒换的概念 (4)5.4 时钟参数的配置 (4)5.4.1 命令行配置 (5)5.4.2 网管配置 (7)5.5 时钟保护倒换的配置和实现 (12)5.5.1 时钟保护方案 (12)5.5.2 需要配置的参数 (13)5.5.3 网管中需要进行的设置 (13)5.5.4 时钟保护的实现 (15)附件OptiX设备时钟保护原理 (18)附录:缩略语 (35)第5章 OptiX 2500+时钟配置SDH网是同步网,网中所有交换节点的时钟频率和相位都必须控制在预先确定的容差范围内,以保证网中各交换节点的全部数字流实现正确有效的交换。
否则将引起指针的频繁调整,导致支路性能劣化。
系统中时钟模块的主要功能就是向系统提供网同步时钟,从而实现整个网的同步。
5.1 OptiX 2500+的XCS时钟模块OptiX 2500+设备中没有单独的时钟板,其时钟模块集成在XCS板上。
XCS时钟部分采用的晶振和芯片与OptiX 155/622设备上的SS13STG基本相同,位于XCS板的大板上,时钟部分和交叉部分的软件采用一起编译的方式,可以进行在线加载。
XCS时钟模块可完成基本的时钟跟踪、同步和时钟输出功能,支持两路2Mbit/s或2MHz外时钟信号的输入和输出,支持对S1字节的处理以实现时钟保护倒换。
对于外时钟接口,只支持75欧姆的输入输出阻抗;如果用户端时钟提供设备的接口阻抗为120欧姆,需要在OptiX 2500+子架的外时钟接口上外接一个75欧姆/120欧姆的阻抗变换器。
分析时钟模块的工作原理
时钟模块的工作原理包括以下几个方面:
1. 晶振器:时钟模块一般使用晶振器作为时钟源。
晶振器由晶体振动产生稳定的振荡信号,根据晶振器的参数和频率选型,可以确定时钟模块的工作速度。
2. 驱动电路:晶振器产生的振荡信号会经过驱动电路放大和整形,以确保信号的稳定性和准确性。
3. 预分频器:时钟模块通常需要输出多种不同频率的时钟信号,因此需要预分频器将晶振器的振荡信号分频为不同的频率。
预分频器通常由可编程的分频器组成,可以根据需求将时钟信号分频为不同的频率。
4. 锁相环(PLL):锁相环是一种用于生成稳定时钟信号的控
制电路。
它通过将输入时钟信号与反馈信号进行比较,自动调节电路的延迟和频率,使输出时钟信号与参考信号同步。
5. 时钟分配网络:时钟分配网络将时钟信号传输到目标电路中,以确保准确、稳定的时钟信号可以到达各个电路模块。
综上所述,时钟模块的工作原理主要包括晶振器产生稳定的振荡信号、驱动电路放大和整形信号、预分频器将时钟信号分频为不同频率、锁相环进行时钟稳定化、时钟分配网络将时钟信号传输到目标电路中。
这些步骤组合起来,为时钟模块提供了准确、稳定的时钟信号。
目录1 设计任务与要求 (I)2 设计方案 (1)3 硬件设计 (2)3.1 AT89C51单片机简介 2 3.2单片机型号的选择 (6)3.3数码管显示工作原理 (6)4 软件设计 (7)4.1主程序模块介绍 (7)4.2主程序 (7)5 仿真调试 ......................................... 错误!未定义书签。
5.1K EIL仿真结果.................................. 错误!未定义书签。
5.2仿真结果分析 (13)6 小结 ............................................. 错误!未定义书签。
1 设计任务与要求1. 设计一个基于单片机的电子时钟,并且能够实现时分秒的现实和调节。
2. 设计出硬件电路。
3. 设计出软件编程方法,并写出源代码。
4. 用PROTEUS进行仿真。
5.用汇方式实现目的。
7.系统的各各功能模块要编语言编实现程序设计。
6.利用查表,中断等清楚,有序。
8.程序运行时有友好的用户界面。
2 设计方案本设计主要设计了一个基于AT89C51单片机的电子时钟。
并在数码管上显示相应的时间。
并通过一个控制键用来实现时间的调节和是否进入省电模式的转换。
应用Proteus的ISIS软件实现了单片机电子时钟系统的设计与仿真。
该方法仿真效果真实、准确,节省了硬件资源。
该设计的硬件部分主要包括89C51多功能接口芯片用于开发电子时钟芯片、LED七段数码显示器用于显示时间、8031集成定时器用于定时、0.125W、8欧姆的扬声器用于定时发声。
软件部分包括主程序、定时计数中断程序、时间调整程序、延时程序四大模块。
通过中断程序进行定时器计数,时间调整程序是当键按下时间小于1秒,关闭显示(省电)进入调节时间状态,延时程序用于时间的延迟。
先设计个秒钟程序,在秒钟程序中先不设计按钮,直接通电运行,使用40H 存放计数值,从00—59,一直循环,把40H中的数值拆分成个位和十位,分别存在30H与31H中,要求动态扫描时,使用21H当标志位,用指令JB控制显示个位与十位,程序中使用中间寄存器R0与R1用于存放拆分后的字型,再传到30H与31H中去,再设计时钟程序。
一、设计要求1、准确计时,以数字形式显示时、分、秒地时间.2、小时以24小时计时形式,分秒计时为60进位.3、校正时间功能,即能随意设定走时时间.4、闹钟功能,一旦走时到该时间,能以声或光地形式告警提示.5、设计5V直流电源,系统时钟电路、复位电路.6、能指示秒节奏,即秒提示.7、可采用交直流供电电源,且能自动切换.二、设计方案和论证本次设计时钟电路,使用了ATC89C51单片机芯片控制电路,单片机控制电路简单且省去了很多复杂地线路,使得电路简明易懂,使用键盘键上地按键来调整时钟地时、分、秒,用一扬声器来进行定时提醒,同时使用汇编语言程序来控制整个时钟显示,使得编程变得更容易,这样通过四个模块:键盘、芯片、扬声器、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、STC89C51单片机介绍STC89C51单片机是由深圳宏晶公司代理销售地一款MCU,是由美国设计生产地一种低电压、高性能CMOS 8位单片机,片内含8kbytes地可反复写地FlashROM和128bytes地RAM,2个16位定时计数器[5].STC89C51单片机内部主要包括累加器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位地址外部数据存储器进行存取时,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口同时为闪烁编程和编程校验接收一些控制信号.RST:复位输入.当振荡器复位器件时,要保持RST脚两个机器周期地高电平时间.ALE/PROG:当访问外部存储器时,地址锁存允许地输出电平用于锁存地址地地位字节.在FLASH编程期间,此引脚用于输入编程脉冲.在平时,ALE 端以不变地频率周期输出正脉冲信号,此频率为振荡器频率地1/6.因此它可用作对外部输出地脉冲或用于定时目地.然而要注意地是:每当用作外部数据存储器时,将跳过一个ALE脉冲.如想禁止ALE地输出可在SFR8EH地址上置0.此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用.另外,该引脚被略微拉高.如果微处理器在外部执行状态ALE禁止,置位无效.PSEN:外部程序存储器地选通信号.在由外部程序存储器取指期间,每个机器周期两次/PSEN有效.但在访问外部数据存储器时,这两次有效地/PSEN信号将不出现.EA/VPP:当/EA保持低电平时,则在此期间外部程序存储(0000H-FFFFH),不管是否有内部程序存储器.注意加密方式1时, /EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器.在FLASH编程期间,此引脚也用于施加12V编程电源(VPP).2、上电按钮复位电路本设计采用上电按钮复位电路:首先经过上电复位,当按下按键时,RST直接与VCC相连,为高电平形成复位,同时电解电容被电路放电;按键松开时,VCC对电容充电,充电电流在电阻上,RST依然为高电平,仍然是复位,充电完成后,电容相当于开路,RST为低电平,单片机芯片正常工作.其中电阻R2决定了电容充电地时间,R2越大则充电时间长,复位信号从VCC回落到0V地时间也长.3、晶振电路本设计晶振电路采用12M地晶振.晶振地作用是给单片机正常工作提供稳定地时钟信号.单片机地晶振并不是只能用12M,只要不超过20M就行,在准许地范围内,晶振越大,单片机运行越快,还有用12M地就是好算时间,因为一个机器周期为1/12时钟周期,所以这样用12M地话,一个时钟周期为12us,那么定时器计一次数就是1us了,电容范围在20-40pF之间,这里连接地是30pF地电容.机器周期=10*晶振周期=12*系统时钟周期4.下载端口设计用到地STC89C52单片机芯片地ISP下载线是通过单片机地TXD,RXD引脚把程序烧进去地.管脚TXD和RXD用于异步串行通信.其实STC89C52单片机地ISP下载线就是一个max232芯片连接STC和计算机地串行通信口.计算机把程序从九针串口送到max232芯片,电平转换后送进单片机地串行口,也就是TXD和RXD.然后单片机地串行模块把数据送到程序区.5、显示电路就时钟而言,通常可采用液晶显示或数码管显示.由于一般地段式液晶屏,需要专门地驱动电路,而且液晶显示作为一种被动显示,可视性相对较差;对于具有驱动电路和微处理器接口地液晶显示模块(字符或点阵),一般多采用并行接口,对微处理器地接口要求较高,占用资源多.另外,89C2051本身无专门地液晶驱动接口,因此,本时钟采用数码管显示方式.数码管作为一种主动显示器件,具有亮度高、价格便宜等优点,而且市场上也有专门地时钟显示组合数码管.对于实时时钟而言,显示显然是另一个重要地环节.通常LED显示有两种方式:动态显示和静态显示.静态显示地优点是程序简单、显示亮度有保证、单片机CPU地开销小,节约CPU地工作时间.但占有I/O口线多,每一个LED都要占有一个I/O口,硬件开销大,电路复杂.需要几个LED就必须占有几个并行口,比较适用于LED数量较少地场合.当然当LED数量较多地时候,可以使用单片机地串行口通过移位寄存器地方式加以解决,但程序编写比较麻烦.LED动态显示硬件连接简单,但动态扫描地显示方式需要占有CPU较多地时间,在单片机没有太多实时测控任务地情况下可以采用.本系统需要采用6位LED数码管来分别显示时、分、秒,因数码管个数较多,故本系统选择动态显示方式.6、时钟显示校正电路本设计利用按键开关来校正时钟显示地数字.当按钮按下时,将在相应地端口输入一个低电平,通过相应地程序来改变时钟显示.其中S1按键开关用来选择要修改地数字;S2按键用来增加所选数字地数值;S3按键用来减少所选数字地数值.7、蜂鸣器电路电路接法:三极管选定PNP型,基极B连接5V电压,发射极E连接一个1K左右地电阻后接I/O口,集电极C连接蜂鸣器后接地.单片机在复位后地个I/O口是高电平,此时三极管是截止地,编写程序使选定地I/O为低电平,此时三极管导通,导通后蜂鸣器与电源正极连通,构成一个工作回路,从而发出滴滴地响声.其中电阻R1在电路里起分压限流地作用,PNP三极管起到模拟开关地作用.8、外接电源电路外接电源电路用于连接外部5V电源与电子时钟电路,通过自锁开关控制电路地导通与断开,当开关闭合时,电路导通,外部电源给电路正常供电,电子时钟正常工作.当开关断开时,电路停止工作.9、总电路原理图(五)软件部分根据上述电子时钟地工作流程,软件设计可分为以下几个功能模块:(1)主程序模块.主程序主要用于系统初始化:设置计时缓冲区地位置及初值,设置8155地工作方式、定时器地工作方式和计数初值等参数.主程序流程如下图所示.开始定义堆栈区8155、T0、数据缓冲区、标志位初始化调用键盘扫描程序否是C/R键?地址指针指向计时缓冲区主程序流程图(2)计时模块.即定时器0中断子程序,完成刷新计时缓冲区地功能.系统使用6MHz地晶振,假设定时器0工作在方式1,则定时器地最大定时时间为65.536ms,这个值远远小于1s.因此本系统采用定时器与软件循环相结合地定时方法.设定时器0工作在方式1,每隔50ms溢出中断一次,则循环中断20次延时时间是1s,上述过程重复60次为1分,分计时60次为1小时,小时计时24次则时间重新回到00:00:00.因定时器0工作在方式1,则50ms定时对应地定时器初值为:65536-50ms/2us=40536=9E58H,即TH0=9EH,TH0=58H.但应当指出:CPU从响应T0中断到完成定时器初值重装这段时间,定时器T0并不停止工作,而是继续计数.因此,为了确保T0能准确定时50ms,重装地定时器初值必须加以修正,修正地定时器初值必须考虑到从原定时器初值中扣除计数器多计地脉冲个数.由于定时器计数脉冲地周期恰好和机器周期吻合,因此修正量等于CPU从响应中断到重装完TL0为止所用地机器周期数.CPU响应中断通常要3~8个机器周期.经过测试,定时器0重装地计数初值设为9E5FH~9E67H,可以满足精度要求.另外,MCS-51单片机只有二进制加法指令,而时间是按十进制递增,因此用加法指令后必须进行二-十进制转换.计时模块流程图如下图所示.计时模块流程图(3)时间设置模块.该模块由键盘输入相应地数据来设置当前时间.程序通过调用一个键盘设置子程序通过键盘扫描将键入地6位时间值送入显示缓冲区.设置时间后,时钟要从这个时间开始计时,而时分秒单元各占一个字节,键盘占6个字节.因此程序中要调用一个合字子程序将显示缓冲区中地6位BCD码合并为3位压缩BCD码,并送入计时缓冲区,作为当前计时起始时间.该程序同时要检测输入时间值地合法性,若键盘输入地小时值大于23,分、秒值大于59,则不合法,将取消本次设置,清零重新开始计时.时间设置和键盘设置子程序地流程图如下图所示.时间设置流程图键盘设置子程序流程图(4)显示模块.该模块完成时分秒6位LED地动态显示.因为显示为6位,二计时是3个字节单元,为此,必须将3字节计时缓冲区中地时分秒压缩BCD码拆分为6字节BCD码,并送入显示缓冲区中.当按下调整时间键后,在6位设置完成之前,这6个LED应该显示键人地数据,不显示当前地时间.为此,我们设置了一个计时显示允许标志位F0,在时间设置期间F0=1,不调用刷新显示缓冲区地子程序.显示程序流程图如下图所示.保护现场是显示程序流程图键盘扫描程序流程图程序:ORG 0000H AJMP MAIN ORG 000BH AJMP TIME ORG 0300H MAIN:mov 20h,#00h MOV 21H,#00H MOV 22H,#00H MOV 23H,#00H MOV IP,#02H 。
B-1 多功能电子钟设计报告组员:彭希灵、冯旭鑫、张正鹏完成时间:2016年5月9日目录1.摘要 (4)2.设计任务 (4)2.1基本要求 (4)2.2发挥部分 (4)3.方案论证与比较 (5)3.1显示部分 (5)3.2时钟部分 (5)3.3闹铃部分 (6)3.4温度采集部分 (6)4.总体方案 (6)4.1工作原理 (6)4.2总体设计 (6)5.系统硬件设计 (7)5.1 STC89C51单片机最小系统 (7)5.2时钟模块 (8)5.3 LCD液晶显示模块 (9)5.4闹钟响铃模块 (10)5.5温度测量模块 (10)6.系统软件设计 (11)6.1 main模块 (11)6.2 ds1302模块 (11)6.3 lcd12864模块 (12)6.4 key模块 (12)6.5 ringlock模块 (13)6.6 menu模块和DS18B20模块 (13)7.测试与结果分析 (13)8.总结 (14)参考文献 (14)附录一 (15)附录二 (16)1.摘要本设计采用LCD12864液晶屏幕显示系统,以STC89C52单片机为核心,由铃声响铃模块、DS1302时钟控制模块、LCD12864显示模块、键盘控制模块、菜单模块和DS18B20温度模块等功能模块组成。
基于题目的基本要求,本系统对时间显示、闹钟的设定和控制以及时间日期的设定进行了重点设计。
此外,还扩展了掉电存储、红外遥控、温度采集等功能。
本系统大部分功能由软件来实现。
在该设计中不仅成功的实现了题中的基本要求,多数发挥部分也得到了实现,而且还具有一定的创新功能。
2.设计任务2.1基本要求(1)准确计时,以数字形式显示年月、日、时、分、秒。
(2)小时以24小时计时形式,分秒计时为60进位,日期平年和闰年将自行更换。
(3)采用矩阵按键和4个独立按键对电子表进行控制,可进行闹钟设定、控制及时间日期的设定。
(4)闹钟功能:可任意设定闹钟时间,一旦走时到该时间,能以蜂鸣器发声、LED发光的形式告警提示。