本人在网上搜索了一款24C、93C系列存储器(E2PROM、EEPROM、EPROM)读写器,它可以打开以BIN为后缀的二进制24C、93C系列存储器数据文件。使用25针打印口LPT1(端口地址为378H)端口工作。经我改进后设计如下线路图。主要是在各个数据输入端加了保护电阻,增加开关,使其使用的时候不必要拔插头关机。但是由于在开着计算机,所以开关电源的时候产生的脉冲干扰对主机的影响是很大,必须考虑,所以本人在电源输入部分加了电容、电感、电阻来保护主机的安全。当工作的时候本电路电源供电为3.3V左右,但是读写的数据是没有问题。本站提供DOS和WINDOWS两个版本的操作程序。
DOS程序,本程序不逊色于某些大型软件,接口也很简单,稍加熟悉便会使用。注意本程序在其它系统下使用可能会有错误。 1 接口的左上角是软件的名称及版本号:24C×× PROGRAMER VER1.0; 2 接口的右上角是被写芯片的名称和类型:Mfr:ATMEL Type:AT24C01A(缺省值)。 3 中间大范围的部分是代码编辑缓冲区,可以将芯片中的内容先读入到该编辑区,重新编辑后再写回到芯片中去。也可以将缓冲区中的内容以二进制文件的形式存放到硬盘上,或将硬盘上的二进制文件调入缓冲区,再写入到芯片中去。 4 中间靠右侧是弹出式菜单条,可用上下箭头选取菜单,再按回车键执行。也可以按加亮的大写字母所代表的键进行相应的操作。 5 左下部是代码保存的二进制文件名输入区FileName。 6 中下部是芯片的起始地址StartAddr和结束地址EndAddr。 7 右下部是缓冲区代码的校验和Check Sum。 菜单功能介绍: 1 芯片类型选择—Type,按T键弹出一个菜单,按数字键1~9可分别选择下列芯片:AT24C01A、AT24C02、AT24C04、AT24C08、AT24C16、AT24C32、AT24C64、AT24C128、AT24C256。 2 Read—读片,按R键可将芯片数据读入到缓冲区。 3 Auto—自动编程,按A键可自动完成写片、校验等一连串操作。 4 Blank check—空片检查,按B键可检查芯片是否为空片(FF)。 5 Erase—芯片擦除,按E键可擦除整个芯片,即将芯片写入全1(FF)。 6 Program—芯片编程,按P键可将缓冲区内容写入到芯片中去。 7 Verify—芯片校验,按V键可比对缓冲区数据和芯片内数据是否一致,若不相等则给出不相等数据的首地址。 8 lock bit—位锁定,暂不能用。 9 Load—装入档,按L键并输入文件名,可将2进制文件装入到数据缓冲区。 10 Save—保存缓冲区内容,按S键可将缓冲区内容保存为二进制文件。 11 eDit—编辑缓冲区数据,按D键可编辑、修改缓冲区内容。 12 clear Memory—清缓冲区,按M键可全部清除缓冲区内容,以FF填满。 13 unlock—解锁,暂不能用。 14 abOut—查看软件信息,按O键可查看到关于该软件的一些信息,如软件名称、版本数、作者等。 15 Quit—退出键,按Q键可退出该程序。 16 PgUp——上翻页。 17 PgDn—下翻页。
windows中文版本支持24C和93C系列的存储器。支持98、ME、2000、XP等系统。由于全是中文,本站就不对其具体解释程序中的文字意思,只对其使用方法介绍一下:
制作好读写器连接电脑的打印口后,装上待读写的存储器(24C系列)打开软件,点“设置”选择相对应的存储器型号(24C01-24C256)然后点确定。
如果要读存储器数据,就直接点“读芯片”读好后点“保存”选择要保存的目录保存就可以了。
如果要写芯片。首先点“打开”选择文件,注意存储器的容量确保和选择的文件大小一致。选择好后,点“写芯片”就可以把选择好的数据写进去存储器IC内部了。
常用的串行存储器分为24系列与93系列两种,分别有自己独特的通讯协议。24系列目前市面常见的有24C01A/02/04/08/16/32/64/256。93系列常见有93C46/56/66/76/86。做为手机或CALL的码片广泛存在于这些通讯设备中。因此这些器件的读写成为维修的最基本问题。
注意:美国AT、ST、BR公司生产的24C××系列存储器其⑦脚需接地才能写入数据;而韩国KOA、KOR、KS公司生产的24C××系列存储器其⑦脚则需接高电平才能写入数据。
PCF(PCA)85系列的脚位排列以及工作方式基本和24C系列一样。可以相互代换
AD系列在读写的时候是使用24CXX插口,对应设置即可正常读写。
几个系列的常用存储器引脚功能说明
|
Flash存储器 |
EEPROMs存储器 |
EEPROM存储器 |
脚位 |
25系列 |
25系列 |
24系列 |
85系列 |
AD系列 |
93系列 |
1 |
CS# |
CS# |
A0 |
A0 |
|
S |
2 |
DO 数据输出 |
SO |
A1 |
A1 |
|
CLK 时钟 |
3 |
WP# |
WP |
A2 |
A2 |
|
DI 数据输入 |
4 |
VSS 电源负 |
GND |
GND 地 |
VSS 电源负 |
|
DO 数据输出 |
5 |
DI 数据输入 |
SI |
SDA 数据 |
SDA 数据 |
|
VSS 电源负 |
6 |
CLK 时钟 |
SCK |
SCL 时钟 |
SCL 时钟 |
|
NC 空 |
7 |
HOLD# |
HOLD |
WP |
PTC |
|
NC 空 |
8 |
VCC 电源正2.7-3.6V |
VCC 1.8V-5.5V |
VCC 电源 |
VDD 电源正 |
|
VCC 电源正 |
几个系列的常用存储器存储空间与型号说明
字节 |
ATMEL 24C系列 EEPROM |
ATMEL 25系列 EEPROMs |
PCF(PCA) 85系列 EEPROM |
AD系列 EEPROM |
M93CXX 系列 EEPROM |
25系列 FLASH |
1K(128x8bit) |
24C01A |
AT25010 |
PCF8581 |
|
93C46 |
|
2K(256x8bit) |
24C02 |
AT25020 |
PCF8582/102C-2/103C-2 |
|
93C56 |
|
4K(512x8bit) |
24C04 |
AT25040 |
PCF8592/94C-2 |
A41DC |
93C66 |
|
8K(1024x8bit) |
24C08 |
AT25080 |
PCF8598C-2 |
A81DC/C81DC |
93C76 |
|
16K(2048x8bit) |
24C16 |
|
PCF85116C-3 |
A51DC |
93C86 |
|
32K(4096x8bit) |
24C32 |
|
|
|
|
|
64K(8182x8bit) |
24C64 |
AT25064 |
|
|
|
|
128K(16364x8bit) |
24C128 |
AT25128AN |
|
|
|
|
256K(32728x8bit) |
24C256 |
AT25256AN AT25HP256 |
|
|
|
|
512K |
|
AT25HP512 |
|
|
|
EN25B05 EN25F05 EN25LF05 EN25P05 |
1M |
|
AT25P1024 |
|
|
|
EN25B10 EN25F10 EN25LF10 EN25P10 |
2M |
|
|
|
|
|
EN25B20 EN25F20 EN25LF20 EN25P20 |
4M |
|
|
|
|
|
EN25B40 EN25F40 EN25LF40 EN25P40 |
8M |
|
|
|
|
|
EN25B80 EN25T80 EN25F80 EN25P80 EN25Q80 |
16M |
|
|
|
|
|
EN25B16 EN25D16 EN25F16 EN25P16 EN25Q16 |
32M |
|
|
|
|
|
EN25B32 EN25F32 EN25P32 EN25Q32 |
64M |
|
|
|
|
|
EN25B64 EN25P64 |
25针引脚表
脚位 |
说明 |
|
脚位 |
说明 |
英文 |
中文 |
英文 |
中文 |
1 |
Screen Shell |
保护地 |
|
13 |
|
第二路允许发送 |
2 |
TxD |
发送数据 |
|
14 |
|
第二路发送数据 |
3 |
RxD |
接收数据 |
|
15 |
SendClock |
发送时钟 |
4 |
RTS |
请求发送 |
|
16 |
|
第二路接收数据 |
5 |
CTS |
允许发送 |
|
17 |
ReceiveClock |
接收时钟 |
6 |
DSR |
数据置位就绪 |
|
18 |
NULL |
未用 |
7 |
Ground |
地 |
|
19 |
|
第二路请求发送 |
8 |
DCD |
载波检测 |
|
20 |
DTR |
数据终端就绪 |
9 |
|
作调试用 |
|
21 |
|
信号质量检查 |
10 |
|
作调试用 |
|
22 |
RI |
振铃指示 |
11 |
NULL |
未用 |
|
23 |
|
数据信号速率选择 |
12 |
|
第二路载波检测 |
|
24 |
SendClock |
发送时钟 |
|
|
|
|
25 |
NULL |
未用 |
编程器PC接口DOS程序的中英对照如下:
Type |
选择器件类型 |
Read |
读出器件内容 |
Auto |
自动擦除、空白检查、编程、校验及加密 |
Blank check |
空白检查 |
Erase |
擦除器件 |
Program |
编程器件 |
Verify |
校验器件 |
locK bit |
(无) |
Load |
将磁盘文件调入缓冲区 |
Save |
将缓冲区存入磁盘 |
eDit |
编辑缓冲区 |
clear Memory |
清除缓冲区 |
Unlock |
(无) |
abOut |
显示当前版本 |
Quit |
退出 | |