RSS

串行时钟器件DS3231与AVR单片机的接口设计02

来源:网络 作者:佚名 时间:2008-08-20 Tag:串行时钟器件   DS3231   AVR单片机   接口设计   点击:

 

 

 

 

 

 

 

 

 

 

 

 




上述读写操作信号中:S为起始信号(START),1101 000为DS1307的口地址,A为应答信号ACK,A为非应答信号NACK,P为停止信号(STOP)。主器件产生所有的串行时钟和START、STOP条件,通过传输STOP和重发START条件使其停止。

3 DS3231与AVR单片机的硬件接口
ATmega系列单片机片内集成2线制串行接口模块。Atmel称其为TWI接口。事实上,TWI与Philips的I2C总线是一回事。AVR硬件实现的TWI接口是面向字节和基于中断的,相对软件模拟I2C总线有更好的实时性和代码效率,引脚输入部分还具有毛刺抑制单元,可去除高频干扰。图4是DS3231与AVR单片机ATmega8的硬件接口电路原理图。


4 DS3231与AVR单片机的软件接口
软件设计中,首先要对AVR单片机ATMega8与实时钟器件DS3231进行初始化。给DS3231准确的日期和时间。不论主控模式还是被控模式,都应当将TWI控制寄存器TWCR的TWEN位置为1,从而使能TWI模块。TWEN位被置位后,I/O引脚 PC5和PC4转换成SCL和SDA,对TWI 控制寄存器TWCR的操作可在总线上产生START和STOP信号,从START到STOP认为是主控模式的行为。将TWI地址寄存器TWAR的第一位TWGCE置为有效,同时将TWI控制寄存器TWCR的TWEA(应答允许)位置1,TWI模块就可以在总线上对其寻址做出应答,并置状态字。对TWI模块的操作均为寄存器的读写操作,Avr-libc没有提供专门的API,可以利用基于US-ART的标准I/O实现对DS3231读写日历和时钟的操作。下面的程序是DS3231与AVR单片机接口部分代码:






5 结束语
选用实时时钟器件DS3231和AVR单片机ATmega8设计了一个日历时钟系统,该系统体积小,通用性强。DS3231具有集成的温度补偿晶体振荡器(TCXO),计时准确且不随季节的变化而产生误差。该系统适用于智能显示屏以及实时测控系统。


1.部分资源来自网络,经ET电子归类整理,旨在服务电子爱好者并无商业目的,不保证正确性与完整性.
2.如果您觉得本站资源对您有用,请告知您的好友,用搜索引擎搜"ET电子"即可.


最新评论共有 0 位网友发表了评论
发表评论
评论内容:不能超过250字,需审核,请自觉遵守互联网相关政策法规。
用户名: 密码:
匿名?
注册
教程下载