基于单片机的数字钟设计及时间校准研究_第1页
基于单片机的数字钟设计及时间校准研究_第2页
基于单片机的数字钟设计及时间校准研究_第3页
基于单片机的数字钟设计及时间校准研究_第4页
基于单片机的数字钟设计及时间校准研究_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、基于单片机的数字钟设计及时间校准研究陈姚节 戴泽军(武汉科技大学计算机学院 430081 )摘要 用单片机来设计数字钟,软件实现各种功能比较方便。但因软件的执行需要一定的时间,所以就会出现误差。对比实际的时钟,查找出误差的来源,并作出调整误差的方法,使得误差近可能的小,使得系统可以达到实际数字钟的允许误差范围内。关键词显示示消影;事件触触发;误误差分析析中图分类类号: TP3365.10引言言在信息技技术急速速发展的的今天,计算机机科学日日新月异异。而单单片机作作为计算算机科学学的一个个分支,在微机机控制领领域得到到长足发发展。在在计算机机网络,通讯方方面是微微机的天天下;而而在微控控制领域域

2、,小到到电子表表,大到到家用电电器,到到处都有有单片机机的用武武之地。1系统统原理分分析系统设计计中用到到 899 C552 单单片机的的部分功功能:包包括内部部定时器器,键盘盘扩展,程序中中断, 串口通通信等。用一个个四联体体的共阴阴极八段段显示器器,可通通过一个个输入输出口口作为显显示器数数据发送送端;另另一个输输入输输出口的的四位作作为显示示器各位位的片选选信号,另四位位作为键键盘扩展展口使用用。采用用一个频频率为 11.05992 MMHz 的晶振振构成时时钟电路路。系统统原理图图如图 1 :图1系系统原理理图2软件件实现与与流程2.1 主程序序由于系统统的主要要功能都都是有程程序中断

3、断来完成成的,主主程序基基本上没没什么事事可做,但因键键盘扫描描是通过过程序查查询的方方式实现现的,所所以主程程序只循循环扫描描键盘。主程序序流程图图如图22所示:2.2 定时和和串口程程序定时和串串口都是是中断响响应程序序,它们们的调用用都是系系统执行行过程中中采用中中断事件件触发产产生(中中断部分分处理如如图3所所示)。定时中中断是周周期性发发生的,而串口口中断则则须串口口有数据据传输才才发生中中断。定定时程序序是整个个系统的的核心代代码,这这段代码码不光涉涉及到显显示,还还涉及到到系统计计时, 这段代代码的优优劣关系系到整个个系统的的可靠性性,后面面还将详详细讨论论。为初初步减小小系统误

4、误差, 置定时时初值一一定要在在程序开开始就设设置。收稿日期期:20005-01-05陈姚节 28 岁,男男,硕士士,助教教,主要要研究领领域为数数据通信信和设备备驱动开开发国家8863计计划项目目资助(批准号号:20003AAA41140111)图2主主程序流流程图图3中中断程序序流程图图2.3 数据的的显示与与刷新更新显示示器涉及及到两个个操作:发数据据和改片片选信号号。但实实践发现现,代码码中无论论是先改改片选信信号还是是先发数数据信号号,都会会出现重重影(即即相邻两两位显示示差不多多)这也也是动态态扫描引引起的。实践先先该片选选,则前前一位的的数据会会在下一一位显示示一段时时间;先先发

5、数据据,则后后一位的的数据会会在前一一位显示示一段时时间。因因而出现现重影。解决这这个问题题的办法法是先进进行一个个消影操操作,然然后再发发片选,最后发发数据。这样就就很好地地解决了了重影问问题。这这样做的的关键在在于,在在极短的的一段时时间内让让显示器器都不亮亮,等一一切准备备工作都都做好了了以后再再发数据据,只要要显示频频率足够够快,是是看不出出显示器器有闪烁烁的(程程序用定定时中断断频率作作为显示示更新频频率,在在表 11 中,只当更更新率?000 赫兹兹时,才才发现显显示器有有闪烁)。这段段显示程程序代码码如下:PP1=00 x000; / 消影影PP2=选选择选选择;/ 发片选选信号

6、ccodeetmpp=accodee eechooarrray选择;如如果 (选择 =22&mmod=0&dootfllag)/ 判断是是否显示示 .ccodeetmpp|=00 x880;PP1=ccodeetmpp; / 发数数据选选择=+选择择%4; / 片片选计数数器下移移2.4 键盘响响应程序序键盘处理理程序流流程相对对简单,只是简简单的判判键与处处理。这这里不再再给出流流程图。所谓键键盘消抖抖就是一一次按建建的多次次响应问问题。当当然,一一般一次次按建只只须响应应一次,但有的的时候需需要多次次响应,如系统统进入修修改模式式,数字字的增减减。当出出现这种种问题时时,用户户的一次次击键

7、是是作为一一次还是是多次处处理,必必须有一一个标准准。程序序中我用用到了一一个标志志位,相相当于中中断系统统的中断断标志。当用户户按下键键时,标标志清零零,松开开键时,标志恢恢复;键键按下超超过一定定时间(靠一扫扫描计数数器判定定)后,恢复标标志,则则经过一一定的时时间延迟迟(也靠靠一扫描描计数器器判定)可以响响应一次次按键(即一次次按键的的多次响响应)。而事实实上,键键盘响应应程序就就是一个个事件触触发器,键盘的的每一个个状态(按下,松开, 点击击)都可可能引发发一段响响应程序序(如:重新设设定键按按下 = 准准备复位位;松开开= 系统复复位)。这里的的时间延延迟靠的的是指令令计数,由于受受

8、硬件中中断等不不确定因因素影响响,这个个延迟一一般不准准确,但但通过实实践测试试,可以以找到一一些合适适的值。3系统统性能测测试与功功能说明明3.1 定时计计数器的的初始值值设置公公式推导导系统中所所选用的的晶振的的频率为为fossc,则则机器周周期为:公式11:2 设定定时器要要求的中中断频率率为k,计数器器位数为为n,则则定时计计数器的的初值XX设置有有如下公公式:2 。于是是:原始始公: 而实验验测得的的数据显显示,这这个公式式所得的的结果并并不可靠靠:(下下表中的的所有数数据都是是在计数数器初始始值严格格按照原原始公式式给出的的条件下下测得,以个人人计算机机机系统统时钟为为标准)。从表

9、表 1 中的数数据可知知,严格格按照原原始公式式得出的的计数初初值是存存在极大大误差的的,这个个误差总总使系统统时间变变慢,而而且,系系统时间间的误差差值随着着每秒中中断次数数的增多多而增大大,随计计时总长长的增长长而增大大,并且且总是成成比例(在误差差允许的的范围内内)。这这就是说说,系统统的误差差跟每秒秒中断次次数和个个人计算算机标准准时长的的乘积(即中断断总次数数)成正正比。也也就是说说,每次次中断计计时的时时间误差差是一个个常数。误差来源源分析不考虑晶晶振等固固件的误误差,则则系统机机器周期期可以由由公式 1 准准确给出出,因而而系统误误差不可可能来自自于硬件件,而应应该主要要来自于于

10、软件方方面。系系统每次次调用定定时中断断程序的的过程中中,硬件件并没有有自动进进入下一一个定时时周期,而是在在调用中中断程序序以后由由软件置置数来实实现的。而在程程序表1 系系统时间间校正测测试数据据调用过程程中,堆堆栈建立立,参数数传递等等都是需需要耗时时的,而而这些时时间都被被无形中中加到了了定时长长度中去去。所以以,使得得每次定定时长度度都大于于理论推推导值,在宏观观上表现现出来就就是系统统比理论论计算出出来的结结果变慢慢了(这这于表格格 1 所得的的结论恰恰好一致致)。另另外,由由于系统统每次调调用中断断处理程程序所执执行的操操作都是是相同的的,也就就是说,系统每每次定时时的时间间误差

11、应应该是一一个常数数(这也也恰好跟跟实验数数据相吻吻合)。由上面面的数据据和分析析可知,原始公公式应该该修改为为:公式式2:则由表格格 1 ,关于于的计算算公式如如下:公公式3:由表格 1 数数据,实实际中要要求 kk 最小小,而又又不影响响显示效效果,才才能使误误差越小小,故实实测中取取 k=1600 。根根据表格格一计算算得 200 (所所用晶振振频率为为 111.05592 MHzz )。按表 1 的的实验方方法,得得表 22 :表2 参参数优化化后的计计时测试试数据这些数据据较表 1 已已有很大大准确性性,但与与实际应应用还有有一定差差距。末末两行是是根据前前面参数数规律稍稍做改动动得

12、到的的, 与与公式 2 有有一定出出入, 但与个个人计算算机系统统标准时时间已经经相当接接近。由由于表 1 的的数据本本身是肉肉眼估出出来的,本身就就带有很很大的误误差,实实际运用用可用精精密仪器器得到表表 1 数据,则系统统参数可可以更进进一步接接近实用用值。3.2 系统功功能与操操作说明明主要功能能:二十十四进制制时间显显示 ( 时、分), 秒以以.的闪烁烁表示;电子跑跑表计数数功能;可通过过按键修修改,显显示时,分,秒秒,复位位;可通通过个人人计算机机机串口口设置时时,分,设置时时连续发发送四位位十六进进制数,依次为为时的高高,低位位,分的的高, 低位。完成后后秒自动动复位。辅助功功能:

13、键键盘共 4 个个键,从从左到右右依次标标名为向向上的,向下的的,组,重新设设定, 用来修修改和设设置系统统时钟。同时还还可以通通过串口口来修改改和设置置系统时时钟。4结论论系统的功功能完全全符合设设计任务务的要求求,经过过大量的的测试数数据显示示, 系系统的可可靠性已已经完全全达到了了实际电电子钟的的设计要要求。同同时系统统具有很很强的扩扩展性:添加 A/DD 转换换器可更更改成数数值仪表表,而添添加 DD/ 转转换器则则可以设设计成波波形发生生器,同同时扩充充串口的的功能可可以道到到很好的的计算机机控制系系统。系系统扩展展图如下下:图4系系统功能能扩展原原理图参考文献献:1陈姚节节. 基于

14、于串行通通信的数数字监控控系统.武汉:武汉理理工大学学学报(交通科科学与工工程版),220022,266(5):6550-66532 赵鸽,陈姚节节. 基基于WDDM设备备驱动的的虚拟仪仪器的研研究与实实现. 武汉:武汉理理工大学学报(交通科科学与工工程版),20002,26(6):8111-8114 3 李广弟弟、朱月月秀、王王秀山.单片机机基础.北京:北京航航空航天天大学出出版社 ,20001:2000-2440Digiitall cloockdessignn baasedd onn SCCMaand timme aadappt rreseearcchChenn Yaaojiie Daii

15、 Zhhejuun (Commputter Depparttmennt ,Wuhhan Uniiverrsitty oof SScieencee annd ttechhnollogyy,Wuuhann,43300881 )AbsttracctItss veeryconnvenniennttto uuse a SSCM todessignn a diggitaal cclocck wwithh sooftwwaree. BBut thee errrorr wiill eassy ccomee out witth tthe timme rrun by sofftwaare.Toconntraast witth tthe reaal cclocck aand finnd tthe reaa

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论