数码之家

 找回密码
 立即注册
搜索
查看: 979|回复: 9

[C51] 关于自制2003年第5期《简易串行存储器拷贝器》源程序

[复制链接]
发表于 2024-3-20 22:30:01 | 显示全部楼层 |阅读模式
本帖最后由 xjlfh 于 2024-3-20 22:39 编辑

这两天有空想自制一个可以直接复制24C系列串行存储器的拷贝器,网上搜了一圈发现了下面的这个电路,不知道原来是在《电子制作》还是《无线电》杂志发表过的,但看着比较简单就搭建了一个,元件和接线都是按原理图接的,但把源程序编译烧写进AT89C2051后发现无法成功复制,按压复制按钮后灯会长亮一下然后就不停的闪动,用别的编程器检查复制的24C02和母片里的数据对比发现没有复制成功,反复检查也没发现问题,故把它转发到这来请各位高手看看到底是什么原因造成复制失败的。下面是原链接和电路原理图,流程图,源程序。

原链接 串行存储器拷贝器的工作原理及制作 - 电子制作 - 电子发烧友网  https://www.elecfans.com/article/89/169/2009/20091226147899.html
流程图

原理图

源程序

ORG 0000H
     LJMP MAIN
     ORG 002DH
MAIN:MOV SP,#40H
     MOV 34H,#0FFH
     MOV P1,0FFH
M1:  CPL P1.2
     LCALL YS
     JB P1.3,M1
     LCALL YS
     JB P1.3,M1
M2:  JNB P1.3,M2
     CLR P1.2
     MOV R7,#04H
     MOV R6,#10H
     MOV 30H,#0A0H
M14: MOV 32H,#00H
M13: MOV 31H,#40H
     MOV R1,#20H
MA:  DJNZ 31H,M4
     MOV 34H,#88H
     LJMP M1
M4:  LCALL QD
     MOV A,30H
     LCALL FA
     JNB F0,M3
     SJMP MA
M3:  MOV A,32H
     LCALL FA
     JB F0,MA
     LCALL QD
     MOV A,30H
     ADD A,#01H
     LCALL FA
     JB F0,MA
M7:  LCALL DU
     MOV @R1,A
     CJNE R1,#2FH,M5
     LCALL FYD
     LCALL TZ
     SJMP M6
M5:  LCALL YD
     INC R1
     SJMP M7
M6:  MOV 31H,#0FFh
     MOV R1,#20H
M9:  DJNZ 31H,M8
     MOV 34H,#30H
     LJMP M1
M8:  LCALL QD
     MOV A,30H
     ADD A,#08h
     LCALL FA
     JB F0,M9
     MOV A,32H
         LCALL FA
         JB F0,M9
M15: MOV A,@R1
     LCALL FA
         JB F0,M9
         CJNE R1,#2FH,M10
         LCALL TZ
         MOV 34H,#0AH
         LCALL YS
         DJNZ R6,M11
         DJNZ R7,M12
         NOP
         NOP
         NOP
         LJMP MAIN
M10: INC R1
     SJMP M15
M11: MOV A,32H
     ADD A,#10H
         MOV 32H,A
         LJMP M13
M12: MOV A,30H
     ADD A,#02H
         MOV 30H,A
         LJMP M14
    ORG 0200H
YS:  MOV R5,34H
LOOP1:MOV R4,#0FFH
LOOP2:DJNZ R4,LOOP2
      DJNZ R5,LOOP1
      RET
    ORG 0100H
QD: SETB P1.7
    SETB P1.6
    NOP
    NOP
    CLR P1.7
    NOP
    NOP
    CLR P1.6
    RET
   ORG  0140H
FA: MOV R0,#08H
FA2: RLC A
    JC  FA1
    SJMP FA3
FA4:DJNZ R0,FA2
    SJMP FA5
FA1:SETB P1.7
    SETB P1.6
    NOP
    NOP
    CLR P1.6
    CLR P1.7
    SJMP FA4
FA3:CLR P1.7
    SETB P1.6
    NOP
    NOP
    CLR P1.6
    SJMP FA4
FA5:SETB P1.7
    SETB P1.6
    CLR F0
    MOV A,P1
    JNB ACC.7,FA6
    SETB F0
FA6:CLR P1.6
    NOP
    RET
DU:MOV R0,#08H
DU2:SETB P1.7
   SETB P1.6
   MOV A,P1
   JNB ACC.7,DU0
   SJMP DU1
DU3:DJNZ R0,DU2
   RET
DU0:CLR C
   MOV A,R2
  RLC A
   MOV R2,A
   CLR P1.6
   SJMP DU3
DU1:SETB C
    MOV A,R2
    RLC A
    MOV R2,A
    CLR P1.6
    SJMP DU3
   ORG 0110H
TZ:CLR P1.7
   SETB P1.6
   NOP
   NOP
   SETB P1.7
   NOP
   NOP
   CLR P1.6
   RET
   ORG 0120
YD:CLR P1.7
   SETB P1.6
   NOP
   NOP
   CLR P1.6
   NOP
   NOP
   SETB P1.7
   RET
   ORG 0130H
FYD:SETB P1.7
    SETB P1.6
    NOP
    NOP
    CLR P1.6
    CLR P1.7
    RET
    END

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
发表于 2024-3-21 06:03:50 | 显示全部楼层
LED快速闪烁,说明没有收到应答
回复 支持 反对

使用道具 举报

发表于 2024-3-21 08:10:41 | 显示全部楼层
能用汇编的大佬是元老级的。
回复 支持 反对

使用道具 举报

发表于 2024-3-21 09:14:53 | 显示全部楼层
24c01到24c1024,这么多型号,可以做到自动识别吗?
回复 支持 反对

使用道具 举报

发表于 2024-9-12 13:59:03 | 显示全部楼层
20年前的制作,还是汇编的程序,楼主这是在那里发现的上古典籍?24C复制,到STC官网下载个24C读写例程,稍微修改就可以了。以前做过16颗同步复制的机器,用来批量复制24Cxx芯片。
回复 支持 反对

使用道具 举报

发表于 2024-9-12 17:30:55 | 显示全部楼层
guer 发表于 2024-9-12 13:59
20年前的制作,还是汇编的程序,楼主这是在那里发现的上古典籍?24C复制,到STC官网下载个24C读写例程,稍 ...

批量拷贝,可以同时吗?觉得批量拷贝,好像得多组SDA SCL引脚才能实现。
回复 支持 反对

使用道具 举报

发表于 2024-9-12 19:35:23 | 显示全部楼层
lmn2005 发表于 2024-9-12 17:30
批量拷贝,可以同时吗?觉得批量拷贝,好像得多组SDA SCL引脚才能实现。

分时切换的,可以做成不同的地址
回复 支持 反对

使用道具 举报

发表于 2024-9-12 20:24:18 | 显示全部楼层
lmn2005 发表于 2024-9-12 17:30
批量拷贝,可以同时吗?觉得批量拷贝,好像得多组SDA SCL引脚才能实现。

可以用软件模拟I2C,一个SCL+N个SDA,近似同时操作。
回复 支持 反对

使用道具 举报

发表于 2024-9-12 20:28:29 来自手机浏览器 | 显示全部楼层
lmn2005 发表于 2024-9-12 17:30
批量拷贝,可以同时吗?觉得批量拷贝,好像得多组SDA SCL引脚才能实现。

iic接多个eeprom,存取地址可以设置的不一样,不过这种方式没必要了,用编程器更方便些。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

APP|手机版|小黑屋|关于我们|联系我们|法律条款|技术知识分享平台

闽公网安备35020502000485号

闽ICP备2021002735号-2

GMT+8, 2025-5-13 09:53 , Processed in 0.234000 second(s), 11 queries , Redis On.

Powered by Discuz!

© 2006-2025 MyDigit.Net

快速回复 返回顶部 返回列表