项目简介
DRAMutils库是专门为Arduino UNO设计的库,用于对老旧的DIP DRAM芯片进行读写操作,目前支持Hitachi HM50256 - 15芯片的写入、读取和刷新等基本操作。
项目的主要特性和功能
- 写操作:可将数据写入DRAM芯片指定地址。
- 读操作:能从DRAM芯片指定地址读取数据。
- 刷新操作:对DRAM芯片进行刷新,保证数据长期存储。
- Read - Modify - Write操作:提高对DRAM芯片操作的效率。
安装使用步骤
安装
在Arduino IDE中导入库:Sketch > Include Library > Add .ZIP Library
,选择下载的ZIP文件。
使用步骤
- 初始化:在Arduino的
setup()
函数中调用DRAM_setup()
函数初始化引脚。Arduino void setup() { DRAM_setup(); }
- 写操作:使用
DRAM_write()
函数将数据写入指定地址。Arduino void loop() { mem_addr address = {.row = 0x076, .col = 0x1AA}; bool data = 0; DRAM_write(address, data); }
- 读操作:使用
DRAM_read()
函数从指定地址读取数据。Arduino void loop() { mem_addr address = {.row = 0x076, .col = 0x1AA}; bool data_read = DRAM_read(address); }
- 刷新操作:使用
DRAM_refresh()
函数进行刷新。Arduino void loop() { mem_addr address = {.row = 0x077, .col = 0x011}; DRAM_refresh(address); }
- Read - Modify - Write操作:使用
DRAM_rmw()
函数执行读 - 修改 - 写操作。Arduino void loop() { mem_addr address = {.row = 0x1AA, .col = 0x1AA}; bool data_read = DRAM_rmw(address, 1); }
注意事项
- 确保硬件连接正确,按说明连接DRAM芯片和Arduino板。
- 使用前仔细阅读相关硬件手册和时序要求。
- 因硬件和时序复杂,可能需进一步调试和优化。
待办事项
- 实现Page Mode Read和Write功能。
- 测试CAS before RAS刷新和Hidden Refresh Cycle。
- 实现通用“master”读写函数,处理各种数据类型。
- 考虑用7400 - based shift register减少引脚计数。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】