DS1685/87和DS17X85/87访问扩展用户RAM

描述

本应用笔记介绍如何使用某些多路复用总线实时时钟(RTC)中提供的扩展RAM。

一般概述

DS1685/87和DS17x85/87包括一个额外的扩展用户RAM模块。每个设备的内存容量变化如下;DS1685/87提供1,024位,组成128 x 8模块,DS17x85/87提供16,384、32,768或65,536位,分别以2kbit x 8、4kbit x 8或8kbit x 8模块排列。

寄存器分区

图 1 说明了如何将寄存器块划分为两个独立的存储体:组 0 和组 1。位于控制寄存器0Ah(位4)中的组选择位DV0用于选择要访问的寄存器组。当 DV0 写入逻辑 0 时,选择库 0,并且可以访问额外的 64 字节用户 RAM。但是,当 DV0 写入逻辑 1 时,将选择组 1,并且可以访问附加功能,包括扩展用户 RAM。实时时钟 (RTC)、控制寄存器和 50 字节的用户 RAM 可从任一组访问,与 DV0 位无关。

寄存器

图1.注册块分区。

软件通信端口

扩展用户 RAM 通信端口驻留在组 1 寄存器块中。扩展用户RAM地址端口位于寄存器50h和51h中,而扩展用户RAM数据端口位于寄存器53h中。寄存器 50h 包含 LSB 地址,寄存器 51h 包含 MSB 地址。DS1685/87仅需7位即可对扩展RAM进行寻址,因此不需要MSB地址寄存器51h。这三个组 1 寄存器提供访问扩展用户 RAM 所需的软件接口。下面列出了读取和写入扩展 RAM 所涉及的步骤:

将 DV0 位写入逻辑 1

写入LSB地址以注册50h

写入MSB地址(如果需要)以注册51h

读取或写入数据寄存器,53h

DS17x85/87具有自动地址递增功能,简化了访问扩展用户RAM所需的软件。此功能可以通过位于扩展控制寄存器4Ah,位5中的单个位启用或禁用。此功能简化了访问连续 RAM 地址位置所需的软件。

适用于 PC 应用的协议

用于访问 CMOS RAM 的处理器 I/O 端口分别为 70h 和 71h。端口70h是CMOS RAM地址寄存器,端口71h是CMOS RAM数据寄存器。图 2 所示的流程图说明了 PC 应用程序的软件协议。

寄存器

图2.PC软件协议流程图。

总结

扩展用户RAM软件访问方法为用户提供了最大的灵活性,无需任何硬件修改即可确定DS1685/87和DS17x85/87(2kbits、4kbits和8kbits)器件所需的RAM密度。

审核编辑:郭婷

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分