有些人学习单片机时选用的单片机芯片是NXP(PHILIPS)的P89V51RD2。之所以选用它是因为它具有串口下载功能(ISP)和在KEIL中进行调试的功能(SoftICE,仿真功能)。新的芯片是ISP功能,通过FlashMagic 软件可以设置其为SoftICE功能。但要想回到ISP功能,则没有现成的好办法,只有通过编程器了。
在NXP(PHILIPS)官方资料以及周立功网站上,关于P89V51RD2单片机SoftICE模式的介绍中都强调,一旦进入SoftICE模式后再想回到ISP模式,就只能使用并行编程器全片擦除的方法来恢复。
但是我在网上时无意中发现一种恢复ISP功能的简单方法。不知是拿位高手写的。我亲自试过,确实可行!
将下面的程序,通过Keil调试方式下载到单片机里面,然后全速运行。再断电,就回到ISP模式了。
ORG 0000H
JMP MAIN0
ORG 2030H
MAIN0: NOP
NOP
NOP
CLR A
MOV DPTR,#1F20H
LCALL Program_One_Byte;
AJMP $
Program_One_Byte:
ORL SFCF,#40H
MOV SFAH,DPH
MOV SFAL,DPL
MOV SFDT,A
MOV B,A
MOV SFCM,#0EH
ACALL WAIT
ORL SFCF,#40H
MOV SFAH,DPH
MOV SFAL,DPL
MOV SFCM,#0CH
MOV A,SFDT
XRL A,B
RET
WAIT: MOV A,SFST
JB ACC.2,WAIT
RET
SFCF DATA 0B1H
SFCM DATA 0B2H
SFAL DATA 0B3H
SFAH DATA 0B4H
SFDT DATA 0B5H
SFST DATA 0B6H
AUXR DATA 08EH
end
文章评论(0条评论)
登录后参与讨论