首 页文档资料下载资料维修视频包年699元
请登录  |  免费注册
当前位置:精通维修下载 > 文档资料 > 电子技术 > 通信与网络
基于DS3231的高精度时钟接口设计
来源:本站整理  作者:佚名  2010-04-16 09:41:30




    微控制器通过I2C总线与DS3231连接,DS3231的与微控制器的相连。DS3231的VCC接系统电源VCC,VBAT为备用电池输入,该引脚应连接一个低泄漏电容进行去耦。为低电平有效中断或方波输出,该漏极开路输出要求外接上拉电阻,如果不使用,可保持开路。微控制器主要通过I2C总线向时钟芯片DS323l写时间信息,DS323l以写入的时间信息为基准精确走时。上电后,微控制器从时钟芯片读取时间信息并存入内存供系统使用,器件每隔64 s测量一次温度,通过调节晶体的负载电容,使其在指定温度达到O ppm的精度,最终达到提高时钟精度的目的。即使系统断电一段时间后重新上电,时钟芯片内的实时数据仍能被正确读出。

2 软件接口程序设计
    DS323l采用I2C总线与系统微控制器进行通信,I2C总线是由PHILIPS公司开发的两线式串行总线,用于连接微控制器及其外围设备,由于接口直接在组件之上,因此I2C总线占用空间少。减少了电路板的空间和芯片管脚的数量,降低了互联成本。它支持多主控,任何能够进行发送和接收的设备都可以成为主总线。一个主控能够控制信号的传输和时钟频率。
    I2C总线通过两根连线(串行时钟线SCL和双向传送SDA)实现半双工同步数据传输,确保两器件之间地址和数据信息的双向传输。它采用器件地址的硬件设置方法(即每个器件具有一个确定的ID),通过软件寻址,从而避免器件的片选信号线寻址,使硬件系统扩展灵活简便。为保证通信正常,必须保证I2C总线上的数据能够顺利传送。在数据开始传送前,首先让I2C接口进行初始化。图2为I2C总线初始化流程。


    DS3231的I2C接口的初始化操作可通过微控制器在总线上发送一个有效START条件来实现,因为微控制器产生的START信号能够终止DS3231的I2C接口当前的数据收、发过程,并将该接口置于START条件后的待命状态。但要发送一个有效的START条件,必须在DS323l释放SDA数据线时才能实现。如果SDA数据线处于低电平状态,这时,可以让系统微控制器产生一个附加的SCL脉冲来迫使DS323l接口送出下一位数据。假设下一位数据仍然为逻辑“0”,就继续产生附加的SCL脉冲,经过多个SCL脉冲后,DS323l就会释放SDA数据总线。
    完成I2C总线的初始化后,接着进行控制和状态寄存器的初始化设置,确定正确的数据范围,就可以运行相应的测控程序。

3 结束语
    本文首先简介DS323l的特点、工作原理及引脚功能,设计了高精度时钟器件DS3231与微控制器之间通信的硬件接口与软件接口,本设计具有一定的通用性,对应用DS3231器件进行系统设计有一定的借鉴意义。

上一页  [1] [2] 

关键词:

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分)
Copyright © 2007-2017 down.gzweix.Com. All Rights Reserved .
页面执行时间:134,293.00000 毫秒