原创 单片机P89V51RD2取消SoftICE功能的简单方法

2008-4-29 13:08 4776 6 6 分类: MCU/ 嵌入式

    有些人学习单片机时选用的单片机芯片是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

PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
我要评论
0
6
关闭 站长推荐上一条 /3 下一条