介绍了一个简单的可调实时时钟系统的设计。设计中采用了atmel32位的arm微处理器作为控制驱动器件,实现了对ds1307实时时钟芯片的时间信息采样和液晶显示,并通过键盘来调节时间信息。通过实际的测试,该模块得到稳定的运行。
实时日历时钟在测控系统和智能显示中得到了广泛的应用。通过软件编程和cpu中断构造软时钟是一种较为常用的方法,时钟计时无需外围硬件支持,但是此种方法的弊端是计时精度会受到cpu主晶振、起振电容以及掉电的影响,而导致计时精度不高。因此采用硬件设计实时时钟是一种更为可靠的方式。
ds1307是i2c接口的8引脚实时时钟芯片,片内含有8个特殊功能寄存器和56bit的sram。它是一款按bcd码存取、低功耗的时钟/日历芯片,已被应用到人造板尺寸检测以及电控单元中。
1、硬件设计
设计的可调实时时钟系统原理框图如图1所示。采用了atmel32位armrisc处理器中的一员,即at91sam7s256微处理器来驱动ds1307时钟芯片和液晶模块,并接收键盘中断来实现时间可调的功能。
1.1 芯片与单片机的接口与连线
若要驱动ds1307芯片,一种方式是使用i2c总线虚拟技术,另一种是采用带i2c接口的单片机。at91sam7s256微处理器外围电路中具有两线接口(twi),它与i2c接口相互兼容,很适合典型的处理器应用,因此系统中采用了此接口实现芯片与cpu的通信。接口电路和连线图如图2所示。
ds1307使用到了32768hz的晶振,bat1为电池电源。i2c总线内部是双向传输电路,端口输出为开漏结构,因此接入了上拉电阻。sqw/out端是方波输出端,通常情况下该引脚接到能产生电平变化中断请求的输入口。
1.2 液晶显示电路
与传统的数码管相比,液晶显示具有功耗低、体积小、显示内容丰富、人机交互性好等优点。设计中使用到了的lm256160点阵液晶显示模块。利用该模块灵活的接口方式和简单方便的操作指令,可为用户提供良好的日期、时间显示和调节界面。
1.3 按键调节电路
为实现时间的可调,系统中设计了键盘输入电路。键盘包括调节模式进入键、“0~9”的数字输入键、清除键以及确认键。用户按下调节模式进入键便可以开始进行时间的设置和调节,如输入“20150920151000”代表设置时间为2015年9月20日15时10分0秒,再按下确认键便将数据信息写入到ds1307芯片中进行计数。
2、软件设计
系统的软件设计主要包括了主程序、ds1307驱动模块,液晶驱动模块、键盘中断处理模块四大部分,程序流程如图3所示。主程序中首先完成外设时钟的使能、i/o口的使能、twi口的使能以及液晶的初始化。初始化工作完成后,处理器通过twi接口读取ds1307中的时钟信息,数据通过液晶进行显示。当接收到外部按键中断请求时,处理器进行相应的键值中断响应,将设置好的数据写入到ds1307芯片中并返回。
ds1307在twi总线上是从器件,地址(sla)固定为“11010000”,时钟信息(年、月、日、星期、时、分、秒)分别放在地址为06h~00h的时间相关寄存器中。芯片的读写主要使用到了twi口低层驱动函数中的intat91f_twi_readbyte(constat91ps_twiptwi,intmode,intint_address,char觹data2read,intnb)和intat91f_twi_writebyte(constat91ps_twiptwi,intmode,intint_address,char觹data2send,intnb)。读写函数使用到了四个入口参数,constat91ps_twiptwi是设置twi口的基地址,intmode为主机模式,intint_address为器件寄存器的地址,char觹data2read是待写入数据或待读取存放的地址,intnb为写入或读取的字节数。需要注意一点是,数据是以bcd码存取的,因此在读取或写入之前需要十进制到bcd码的相互转换处理。
3、运行结果
系统的运行效果以液晶屏显示效果为准,如图4与图5所示。图4为设置时钟信息界面,设置完毕按回车键时钟开始计时,并跳转到运行显示界面。图5为设置好初始时间为2015年9月20日15时10分0秒后,时钟运行了15分38秒的显示效果。
4、结束语
设计的可调实时时钟系统避免了系统掉电与晶振电路的影响,芯片的驱动通过采用arm系列微处理器中twi接口并调用相关的低层驱动程序,减少了采用总线虚拟技术的程序量。经过实际的调试,系统得到了预期的结果。该实时时钟可用于系统主界面的日期与时间显示,并为以时间为单位的事务处理提供时间基准。
用单片机控制的光谱数据采集系统
Intel陷困境,难以争取到更多订单,或将考虑缩减代工业务
讲解一下电容器的容量换算方法
央行屡屡打压马云支付宝 支付宝一夜之间即将面临生死攸关的窘境吗
iPhone8Plus拆解 内部做工如何
基于ARM和DS1307的实时时钟系统设计
AVR单片机全系列性能参数表
芯科实验室推出新型数字隔离器Si86xx系列
MetLab系列金相切割机是理想的金相切割设备
泛林集团以 FIRST Global机器人挑战赛为舞台,培养未来的STEM人才
全自动滚筒拆包机和拆包机械手特点优势
RGB颜色空间与RGB三色中色调、饱和度、亮度之间的关系
并发情况如何实现加锁来保证数据一致性
降压稳压器采用高功率负相-5V电源
永磁体是怎么产生的_永磁体的应用
Stability AI推出商业版会员计划 对AI模型的商业使用收费
2024程序员的未来方向如何走?还看今朝
PLC AB相脉冲高速计数设计实例详解
导致电动不锈钢法兰球阀过载的因素是什么
蜂鸣器的驱动实验