用51单片机设计时钟电路

合集下载

基于51单片机的多功能数字钟设计

基于51单片机的多功能数字钟设计

电子电路设计与方案0 引言在当今社会,时间就是金钱,做任何事情都需要对时间进行掌控和衡量。

因此,一款多功能数字钟对于所有人而言都是必不可少的。

随着科技的进步与发展,基于单片机设计的多功能数字钟已经十分流行,因其成本低、功能多、资源丰富等优点,深受人们喜爱[1]。

为了使人们的生活更加方便,本文基于STC89C52单片机设计了一款多功能数字钟,并在Keil环境中采用C语言开发了相应的控制程序,能实现钟表的所有基本功能以及一些附加功能。

1 总体方案设计本文设计的多功能数字钟的总体方案结构如图1所示,主要包括9个模块:主控模块、显示模块、时钟模块、数据存储模块、电源模块、语音模块、网络模块、按键模块和蜂鸣器模块,并能实现以下功能:(1)设置时间功能,可正常显示时、分、秒。

(2)定时功能和闹钟功能。

(3)秒表功能和倒计时功能。

(4)语音报时功能。

(5)接入电子日历功能,即能显示年、月、日。

(6)能够接入网络并自己校准显示某地时间。

图1 数字钟总体方案结构在主控模块的控制下,电源模块实现对整个系统的供电,显示模块实现年、月、日、时、分、秒的显示,数据存储模块用于存储各种设置数据等,按键模块、时钟模块、网络模块实现时间调整、万年历、闹钟设置、秒表设置与倒计时、网络校时等功能,语音模块、蜂鸣器模块实现语音报时、闹钟等功能。

2 硬件电路设计■2�1 主控制器电路设计主控制器选用的单片机型号为STC89C52。

STC89C52单片机具有成本低、功能强、资源丰富等优点,适合作为数字钟的主控制器。

若选用比STC89C52单片机更高端的单片机,不仅成本会有所提高,还会造成一定程度上的资源浪费。

■2�2 电源电路设计采用5V直流电源为整个系统供电,采用纽扣电池为时钟模块DS1302芯片稳定供电,确保主电源关闭后时钟的正常运行。

语音芯片ISD4004需要3�3V电源,通过AMS1117-3�3芯片搭建电路,可以提供稳定的3�3V电源。

基于51单片机的电子时钟

基于51单片机的电子时钟

1、电子闹钟的硬件系统框架:设计出电子闹钟的基本整体框架。

2、电子闹钟的电源设计:采用交直流供电电源。

电子钟一般采用数码管等显示介质,因而必须以交流供电为主,以直流电源为后备辅助电源。

3、电子闹钟的主机电路设计:主要有1)系统时钟电路设计:对时间要求不是很高,只要能使系统可靠起振并稳定运行就行。

2)系统复位电路设计:本系统采用的是RC复位方式3)按键与按钮电路设计:按键与按钮电路设计中关键要考虑的就是按键的去抖动问题。

本系统采用软件去抖。

考虑到对时和设定闹铃时间操作的使用频率不高,为了精简系统和降低成本,本系统只设置两个按键。

a)SET键,对应系统的不同工作状态,具有3个功能:在复位后的待机状态下,用于启动设定时间参数(对时或定闹);在设定时间参数状态而且不是设定最低位(即分个位)的状态下,用于结束当前位的设定,当前设定位下移;在设定最低位(分个位)的状态下,用于结束本次时间设定。

b)+1键,用于对当前设定位进行加1操作。

4)闹铃声光指示电路设计:本系统采用声音指示,关键元件是蜂鸣器。

4、电子闹钟的显示电路设计:设计一个由LED数码管组成的显示电路,显示采用共阳极数码管,其目的是为了简化限流电路的设计和实现亮度可调的要求。

一功能模、设计指标:1. 显示时、分、秒。

2. 可以24小时制或12小时制。

3. 具有校时功能,可以对小时和分单独校时,对分校时的时候,停止分向小时进位。

校时时钟源可以手动输入或借用电路中的时钟。

4. 具有正点报时功能,正点前10秒开始,蜂鸣器1秒响1秒停地响5次。

5. 为了保证计时准确、稳定,由晶体振荡器提供标准时间的基准信号。

二、设计要求:1. 画出总体设计框图,以说明数字钟由哪些相对独立的块组成,标出各个模块之间互相联系,时钟信号传输路径、方向和频率变化。

并以文字对原理作辅助说明。

2. 设计各个功能模块的电路图,加上原理说明。

3. 选择合适的元器件,在面包上接线验证、调试各个功能模块的电路,在接线验证时设计、选择合适的输入信号和输出方式,在充分电路正确性同时,输入信号和输出方式要便于电路的测试和故障排除。

基于51单片机的电子时钟设计

基于51单片机的电子时钟设计

基于51单片机的电子时钟设计
摘要:本文论述了基于51单片机的电子时钟设计,包括硬件设计与软件编程。

其中,硬件设计包括基本指示灯、DS1302时钟芯片等的选择与连接,时钟电路、晶振电路的设计等。

软件编程包括时钟显示的实现,时钟校准、闹钟等功能的实现等。

本设计具有精度高、操作简便、易于实现等特点,可广泛应用于各种场合。

关键词:51单片机;电子时钟;硬件设计;软件编程
前言
随着人们生活水平的提高,电子时钟已经成为人们生活中必不可少的物品,目前市场上各种类型的电子时钟层出不穷。

本文以51单片机为基础,设计了一款高精度、易于操作的电子时钟,采用DS1302时钟芯片作为时钟驱动芯片,实现了时钟的准确显示、校准、闹钟等功能。

硬件设计
硬件设计主要包括控制器、时钟驱动、显示装置以及电源。

本设计采用了AT89C51单片机作为控制器,一块DS1302时钟芯片作为时钟驱动,LED数字管作为显示装置。

同时,本设计采用了USB供电方式,其电源电压为5V。

软件编程
软件编程主要包括时钟显示、时钟校准、闹钟功能的实现等。

时钟显示采用了动态显示方式,实现了时间的精确定位。

同时,本设计还具有时钟校准功能,在程序接通时,可自动对时钟进行校准,保证时钟的精确度。

此外,本设计还具有设置闹钟的功能,用户可在指定时间响起闹钟。

结论本文以51单片机为基础,设计了一款高精度、易于操作的电子时钟。

通过对硬件设计、软件编程的设计与实现,使得该产品能够准确显示时间,保证了时钟的稳定性,满足了时间的要求,目前已
得到广泛应用。

基于51单片机的数字电子时钟设计

基于51单片机的数字电子时钟设计

课程设计任务书摘要数字钟因其小巧,价格低廉,走时精度高,使用方便,功能多,便于集成化而受广大消费的喜爱,因此得到了广泛的使用。

单片机为基础上设计出来的数字时钟数字钟,在日常生活中最常见,应用也最广泛。

本次课程设计的时钟就是以STC89C52单片机为核心,配备LED显示模块、时钟模块、等功能模块的数字电子钟。

采用24小时制方式显示时间。

文章主要从硬件设计和软件编程两个大的方面。

硬件电路设计主要包括中央处理模块、时钟模块,显示模块等几部分。

时钟电路采用DS1302芯片,并选用LED显示器。

软件方面用keil C语言来实现。

软硬件配合,达到电子时钟精准的显示。

关键字:单片机,时钟模块,精准目录1绪论 (2)1.1设计概述 (2)1.2技术简述 (2)1.3本课题的背景 (3)1.4本课题的意义 (3)2系统设计 (4)2.1设计目的 (4)2.2设计功能及要求 (4)2.3设计思路 (4)2.4硬件方案 (4)2.4.1时钟芯片的选择 (5)2.4.2显示屏的选择 (5)2.4.3单片机的选择 (5)2.5软件方案 (5)2.6整体方案 (6)2.7元器件清单 (6)3硬件设计 (7)3.1单片机最小系统 (7)3.1.1时钟电路 (7)3.1.2复位电路 (8)3.2时钟电路 (8)3.3电源电路 (9)3.4系统整体电路 (9)3.5系统仿真 (10)3.6硬件制作 (10)4软件设计 (11)4.1程序设计步骤 (11)4.2系统主程序 (11)4.3时钟模块子程序 (12)4.4显示模块子程序 (12)4.5主程序 (13)5联机调试 (14)6总结 (15)7参考文献 (16)1绪论1.1设计概述在单片机技术日趋成熟的今天,其灵活的硬件电路和软件程序的设计,使单片机得到广泛的应用,从小的电子产品,到大的工业控制,单片机都起到了举足轻重的作用。

数字电子时钟是基于单片机和DS1302时钟芯片的一种计时工具。

基于51单片机的时钟电路设计

基于51单片机的时钟电路设计

基于51单片机的时钟电路设计毕业设计用纸中文摘要随着单片机技术的飞速发展,在其推动下,现代的电子产品几乎渗透到了社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高,同时也使现代电子产品性能进一步提高。

时间对于人们来说总是那么的宝贵,可以说时间和金钱是划上了等号。

准确的掌握时间和分配时间对人们来说至关重要。

因此采用单片机为主的数码管为显示器的电子时钟就体现出了很大的优势。

电子钟的设计方法有很多种,但利用单片机制作的电子时钟更具有编程灵活、便于电子功能的扩充、精确度高、便于携带、显示直观等特点。

通过利用MCS-51单片机内部的定时器/计数器功能来实现电子时钟的计时方法。

主要由AT89S51芯片和LED数码显示管为核心,构成了一个单片机电子时钟。

关键词:单片机,AT89S51,电子时钟,LED第 1 页共 1 页毕业设计用纸AbstractWith the rapid development of microcomputer technology in its promotion, modern electronics into almost all areas of society, a strong impetus to the development of social productive forces and social improvement in the level of information, but also to further improve the performance of modern electronic products.Time is always so valuable for people who can say that time and money is the equal sign. Accurate grasp of time and allocation of time is crucial to people. Therefore, the digital control based on microcomputer-based electronic clock on the display reflects a great advantage. Clock Design There are many ways, however, produced by single chip electronic clock is more flexible programming, and easy expansion of electronic capabilities, high accuracy, easy to carry, display visual and so on.In this paper, through the use of MCS-51 microcontroller's internal timer / counter function to implement the electronic clock timing method. Mainly bythe AT89S51 chip and LED digital display tube as the core, forming a single chip electronic clock.Key word: Monolithic integrated circuit,AT89S51,Electronic clock,LED第 2 页共 2 页毕业设计用纸目录第一章、前言 (5)1.1 概述 ....................................................... 5 1.2 研究目的 ................................................... 5 第二章、电路涉及单片机概述 . (6)2.1 单片机的概念 ............................................... 6 2.2 单片机的发展史和发展趋势 .. (6)2.2.1 单片机的发展历史 ...................................... 6 2.2.2 单片机的发展趋势 ...................................... 6 2.3 单片机的特点 ............................................... 7 2.4 MCS-51单片机的基本结构 . (7)2.4.1 MCS-51单片机的基本组成 ............................... 7 2.4.2AT89S51单片机的引脚 (8)第三章、系统设计 (10)3.1 设计方法及原理 (10)3.1.1 设计方法 .............................................. 9 3.1.2 电子时钟原理 .......................................... 9 3.1.3 数码管显示原理 ........................................ 9 3.2 总体设计 (10)3.2.1 系统说明 ............................................. 10 3.2.2 系统框图 ............................................. 10 3.3 模块设计 (11)3.3.1 电源部分 ............................................. 11 3.3.2 复位电路 ............................................. 11 3.3.3 数码管的连接电路 ..................................... 12 3.3.4 控制部分 (13)第四章、软件设计 (15)4.1 程序流程图 (15)第 3 页共 3 页毕业设计用纸4.2 源程序 (17)4.2.1 中断入口程序 ......................................... 17 4.2.2 主程序 ............................................. 18 4.2.3 1秒计时程序 ......................................... 18 4.2.4 闪动调时程序 ......................................... 20 4.2.5 加1子程序 ........................................... 21 4.2.6 清零程序 ............................................. 22 4.2.7 时钟调整程序 ......................................... 22 4.2.8 显示程序 ............................................. 24 4.2.9 延时程序 (25)参考文献 (27)致谢 (28)第 4 页共 4 页毕业设计用纸第一章、前言1.1 概述时钟电路在计算机系统中起着非常重要的作用,是保证系统正常工作的基础。

51单片机数字时钟设计参数计算

51单片机数字时钟设计参数计算

51单片机数字时钟设计参数计算一、概述1.1 51单片机数字时钟的设计意义1.2 研究背景和意义1.3 文章内容概要二、数字时钟的基本结构2.1 数字时钟的组成要素2.2 51单片机在数字时钟设计中的应用三、时钟参数计算3.1 时钟频率的选择3.2 倍频电路的设计3.3 分频电路的设计3.4 时钟精度的计算四、时钟电路的仿真与测试4.1 仿真软件的选择4.2 时钟电路仿真实验步骤4.3 实验结果分析与讨论五、数字时钟功能设计5.1 显示模块的选择与设计 5.2 时间调整与校准5.3 报警功能设计5.4 其他功能设计六、数字时钟的电路设计6.1 电源电路设计6.2 主控模块电路设计6.3 显示模块电路设计6.4 控制模块电路设计七、数字时钟的外壳设计7.1 外壳材料与工艺选择 7.2 外观设计要素7.3 外壳制作与装配八、数字时钟的成品制作8.1 PCB制作8.2 元件焊接8.3 软件编程8.4 调试与测试九、总结与展望9.1 设计过程总结9.2 设计成果评价9.3 后续工作展望结语以上是对51单片机数字时钟设计参数计算的一份初步构思,希望上述内容能够对相关领域的研究者或爱好者有所帮助。

感谢您的阅读。

十、时钟参数计算在数字时钟的设计中,时钟频率的选择是至关重要的。

时钟频率决定了数字时钟的精度和稳定性。

而在使用51单片机设计数字时钟时,我们需要根据具体的要求和应用场景来确定合适的时钟频率。

3.1 时钟频率的选择针对数字时钟而言,我们通常需要考虑其显示的精度和稳定性,因此要选用较高的时钟频率。

一般来说,数字时钟的显示要求在秒级,所以时钟频率需要能够满足秒级的计数要求。

时钟频率过高会增加功耗和电路复杂度,过低则会影响时钟的显示精度。

我们需要综合考虑这些因素来选择合适的时钟频率。

3.2 倍频电路的设计在实际应用中,我们常常会对晶振的频率进行倍频,以获得更高的时钟频率。

倍频电路一般采用锁相环(PLL)或者数字锁相环(DLL)来实现,通过合理的倍频系数,我们可以将晶振的频率提升到所需的高频率,以满足数字时钟的要求。

51单片机里电子时钟设计原理

51单片机里电子时钟设计原理

51单片机里电子时钟设计原理单片机是一种集成电路芯片,具有微处理器的所有功能。

电子时钟是一种通过数字化方式显示时间的装置,通常由时钟芯片、计时电路、显示电路、报警电路等组成。

在51单片机中设计电子时钟,主要包括以下几个方面的原理。

1.时钟芯片选择:选择一款适合的时钟芯片非常重要。

时钟芯片提供了计时的稳定性和精度,并且具有时间数据的存储功能。

在51单片机设计中,常常使用DS3231、DS1302等高性能的时钟芯片。

2.计时电路设计:计时电路是电子时钟的核心部分,它通过计数器实现时间的累加。

在51单片机设计中,可以使用定时器和计数器来实现计时功能。

通过设定定时器的工作模式和计数值,可以实现从1ms到秒、分、时的计时。

3.显示电路设计:显示电路用于将计时电路的计时结果以数字形式显示出来。

通常使用数码管或液晶显示屏作为显示装置。

在51单片机设计中,通过控制数码管或液晶显示屏的引脚,将对应的数字段点亮,实现数字的显示。

4.按键输入设计:电子时钟通常具有设置时间、调整时间、报警等功能。

这些功能需要通过按键来实现。

在51单片机设计中,可以使用矩阵按键,通过行列扫描的方式检测按键的按下,并根据按键的不同触发不同的功能。

5.报警电路设计:电子时钟通常具有报警功能,可通过蜂鸣器或其他音频输出装置实现。

在51单片机设计中,通过控制IO口的高低电平输出,控制蜂鸣器的工作状态,从而实现报警功能。

6.软件设计:单片机的设计离不开软件的支持。

在51单片机设计中,通常使用C语言编程,通过编写程序来实现各个功能的控制。

根据需求,设计相应的算法和逻辑,实现时间的计算、显示、设置和报警等功能。

以上是51单片机中设计电子时钟的一些原理。

通过合理的硬件设计和软件编程,可以实现功能齐全、稳定可靠的电子时钟。

基于51的电子闹钟设计报告(附原理图、PCB图、程序)

基于51的电子闹钟设计报告(附原理图、PCB图、程序)

基于51的电⼦闹钟设计报告(附原理图、PCB图、程序)成都信息⼯程学院第五届嵌⼊式创新技术⼤赛基于MCS51的智能电⼦闹钟设计报告姓名学院班级实物图⽬录1.电⼦时钟的设计原理和⽅法 (1)1.1设计原理 (1)1.2 硬件电路的设计 (1)1.2.1 STC89C51RC简介 (1)1.2.2 键盘电路的设计 (2)1.2.3蜂鸣器驱动电路 (3)1.2.4 数码管驱动电路 (3)1.2.5 电源电路 (4)1.3软件部分的设计 (4)1.3.1主程序部分的设计 (4)1.3.2中断计时器及时间进位 (5)1.3.3 闹钟⼦函数 (7)1.3.4 按键扫描 (8)1.3.5 时钟闹钟设置 (9)1.3.6 显⽰数字函数 (10)1.3.7 显⽰界⾯函数 (10)1.3.8 闹钟记录及读取 (11)2.硬件调试 (13)附录A:电路原理图 (15)附录B:电路PCB图 (16)附录C:源程序 (17)1.电⼦时钟的设计原理和⽅法1.1设计原理系统框图1.2硬件电路的设计1.2.1 STC89C51RC简介STC89C52R CSTC89C51RC是⼀种带8K闪烁可编程可擦除只读存储器(FPETOM-FlashProgrammabalandErasableReadOnlyMemory )的低电压、⾼性能CMOS8位微型处理器,即单⽚机芯⽚。

单⽚机的可擦除只读存储器可以反复擦除1000次,内部FLASH 擦写次数为100000次以上。

该芯⽚使⽤⾼密度⾮易失存储制造技术,与⼯业标准的MCS-51指令集和输出管脚相兼容。

由于将多功能8位CPU 和闪烁存储器集成在单个芯⽚中,使得STC89C51RC 成为了⼀种性价⽐极⾼的微型处理器芯⽚,在许多电路设计中都得到了应⽤。

STC89C51RC 单⽚机特点:⼯作电压:5.5V-3.4V ⼯作频率:0-40MHz ⽤户应⽤程序空间:8K ⽚上集成128*8RAMISP (在系统可编程)/IAP (在应⽤可编程),⽆需专⽤编程器/仿真器可通过串⼝(P3.0/P3.1)直接下载⽤户程序EEPROM 功能共3个16位定时器/计数器,其中定时0还可以当成2个8位定时器使⽤外部中断4路通⽤异步串⾏⼝(UART ),还可⽤定时器软件实现多个UART ⼯作温度范围:0-75℃引脚说明:VCC:供电电压 GND :接地P0:P0是⼀个8位漏级开路双向I/O ⼝,低8位地址复⽤总线端⼝。

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

用51单片机设计的时钟电路
[摘要] 单片计算机即单片微型计算机(single-chip microcomputer ),是采用超大规模集成电路技术把具有数据处理能力的中央处理器cpu随机存储器ram、只读存储器rom、多种i/o 口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、a/d转换器等电路)集成到一块硅片上构成的一个小而完善的计算机系统。

他体积小,成本低,功能强,广泛应用于智能产品和工业自动化上。

而51 单片机是各单片机中最为典型和最有代表性的一种。

[关键词] 单片计算机中央处理器随机存储器只读存储器
本文通过用对一个能实现定时,时钟,日历显示功能的时间系统的设计学习,详细介绍了51 单片机应用中的数据转换显示,数码管显示原理,动态扫描显示原理,单片机的定时中断原理、从而了解单片机相关指令在各方面的应用,文章后附有电路图,以供读者参考。

本系统由at89c51、led 数码管、按键、发光二极管等部分构成,能实现时间的调整、定时时间的设定,输出等功能。

系统的功能选择由sb0、sb1、sb2、sb3、sb4 完成。

其中sb0为时间校对,定时器调整功能键,按sb 0 进入调整状态。

sb1 为功能切换键。

第一轮按动sb1 依次进入一路、二路、三路定时时间设置提示程序,按sb3 进入各路定时调整状态。

定时时间到,二极管发亮。

到了关断时间后灭掉。

如果不进入继续按sb1 键,依次进入时间年位校
对、月位校对、日位校对、时位校对、分位校对、秒位校对状态。

不管是进入那种状态,按动sb2 皆可以使被调整位进行不进位增量加1 变化。

各预置量设置完成后,系统将所有的设置存入ram 中,按sb1 退出调整状态。

上电后,系统自动进入计时状态,起始于00时00分。

sb4 为年月日显示转换键,可使原来显示时分秒转换显示年月日。

一、电路原理分析
1、显示原理
由6 个共阴极的数码管组成时、分、秒的显示;p0 口的8 条数据线p0.0 至p0.7 分别与两个cd4511 译码的abcd 口相接,p2 口的 p2.0 至p2.2 分别通过电阻r10 至r13 与vt1 至vt3 的基极相连接。

这样通过p0 口送出一个存储单元的高位、低位bcd显示代码,通过p2 口送出扫描选通代码轮流点亮led1 至led6,就会将要显示的数据在数码管中显示出来。

从p0 口输出的代码是bcd 码,从p2 口输出的就是位选码。

这是扫描显示原理。

2、数码管结构及代码显示
共阴led 数码管结构、字段及引脚排列见图2 图2;共阴led 数码管由8 只发光二极管vd1 至vd8 共阴连接并按8字形结构排列而成。

这样,我们将这些二极管的正极接高低不同的电位,把所有的负极接地,当正极为高电位时相应的二极管就会导通而发光,从而使数码管呈现不同的字符。

而只有p2 相应呈现高电位,vt 个管导通,led1 的gnd 与地相接,led 位被选中才具备发光的使能条
件;可见,在利用p2 口送出位选码,使各位轮流得到发光使能条件的同时,通过p0 口分别送出不同的段选码,就会在led1 至led4 中显示出不同的数字来。

3、键盘及读数原理
键盘是人与微机打交道的主要设备,按键的读取容易引起误动作。

可采用软件去抖动的方法处理,软件的触点在闭合和断开的时候会产生抖动,这时触点的逻辑电。

平是不稳定的,如不采取妥善处理的话,将引起按键命令错误或重复执行,在这里采用软件延时的方法来避开抖动,延时时间20ms。

4、连击功能的实现
按下某键时,对应的功能键解释程序得到执行,如操作者没有释放按键,则对应的功能会反复执行,好象连续执行,在这里我们采用软件延时250ms,当按键没释放则执行下一条对应程序。

利用连击功能,能实现快速调时操作。

二、程序设计思想和相关指令介绍
本系统的主程序主要完成时间显示和定时输出判断功能。

而年月日显示和各时间单元进位,时间设定时,调定时间设定时等功能全部在中断服务程序中完成。

1、数据与代码转换
由前述可知,从p2 口输出位选码,从p0 口输出段选码,led 就会显示出数字来。

但p0口的输出的数据是要bcd 码,各存储单元存储的是二进制数,也就是和要显示出的字符表达的含义是不一致
的。

可见,将要显示的存储单元的数据直接送到p0 口去驱动led 数码管显示是不能正确表达的,必须在系统内部将要显示的数据经过bcd 码行转换后,将各个单元数据的段选代码送入p0 口,给cd4511 译码后去驱动数码管显示。

具体转换过程如下:
created with novapdf printer ().
please register to remove this message.
我们先将要显示的数据装入累加器a中,再将a中的数据转换成高低两位的bcd 码,再放回a中,然后将a 中的值输出。

如:有一个单元存储了45 这样一位数,则需转换成四位的bcd码:(0100)(0101)然后放入a 中。

a中bcd码,高位四位代表4低四位代表5同时送给两个译码器中,译码后45字就在两个led 中显示出来。

2、计时功能的实现与中断服务程序
时间的运行依靠定时中断子程序对时钟单元数值进位调整来实
现的。

计数器t0 打开后,进入计时,满100 毫秒后,重装定时。

中断一次,满一秒后秒进位,满60 秒后即为1 分钟,分钟单元进位,60 分到了后,时单元进位,24 小时满后,天单元进位。

这样然后根据进率,得到年、月、日、时、分、秒存储单元的值,并经译码后,通过扫描程序送led 中显示出来,实现时钟计时功能。

累加是用指令inc 来实现的。

进入中断服务程序以后,执行push psw 和push a 将程序状态寄存器psw 的内容和累加器a 中的数据保存起来,这便是所谓的保护现场。

以保护现场和恢复现场时存取关键数据的存储区叫做堆栈,在软件的控制之下,堆栈可在片内ram 中
的任一区间设定,而堆栈的数据存取与一般的ram 存取又有区别,对它的操作,要遵循¡后进先出¡的原则。

3、时钟误差分析
开启定时器/计数器0,使之开始计时,中断后进入中断程序。

自停止计数到、计数又开始,中间执行了7 条指令,也就是延迟了13 个单周期共用时间26us,这样,每个中断的总时间应为为100.026sm,而原来定时是100ms,,所以,也就是说每次中断定时多了26um.这样,可改变计数重装值,使每次中断定时时间为
99.974sm,加上原来的7 条指令所用的时间,正好100sm.计数10 次得1s.这样就可得到较精确的计时秒数,然后根据进率,得到时、分的值。

4、时间控制功能与比较指令
系统的另一功能就是实现对执行设备的定时开关控制,其主要控制思想是这样的:先将执行设备开启的时间和关闭时间置入ram 某一单元,在计时主程序当中执行几条比较指令,如果当前计时时间与执行设备的设定开启时间相等,就执行一条 clr 指令,将对应的那路p3 置为高电位,开启;如果当前计时时间与执行设备设定的关闭时间相等,就执行setb对应的p3 置低电位,二极管截止,。

实现此控制功能用到的比较指令为cjne a,#direct,rel,其转移条件是累加器a 中的值与立即数不等则转移。

参考文献:
[1]谢自美,《电子线路设计、实验、测试》武汉:华中理工大
学出版社,2000.
[2]何书森、何华斌《实用数字电路原理与设计速成》福州:福建科学技术出版社,2000.6.
[3]白驹衍,《单片计算机及应用》北京:电子工业出版社,1999.2.。

相关文档
最新文档