| ??? 02/10/06 16:56 Read: times |
#109730 - example in asm Responding to: ???'s previous message |
FCF EQU 0B1h
R0B0 EQU 0
;on entry: operation code in R0B0, value in A
;preserves R1
ORG 2000h ;actually, anywhere above 2000h
FLASH_API:
PUSH IE ;DISABLE INTERRUPTS
CLR EA
XCH A,R1
PUSH ACC
MOV A,R1
MOV R1,R0B0 ;SETUP OPERATION CODE
ANL FCF,#0FCh ;enable boot sector - !!! this command MUST be located ABOVE 2000h!!!
CALL 01FF0H ;call to ISP_API (modifies B register but no Rx)
ORL FCF,#001h ;switch back to user FLASH
MOV R1,A
POP ACC
XCH A,R1
POP IE
RET
|
| Topic | Author | Date |
| P89V51 ISP | 01/01/70 00:00 | |
| example in asm | 01/01/70 00:00 | |
| must be in asm | 01/01/70 00:00 | |
| C? | 01/01/70 00:00 | |
| not advisable with Keil | 01/01/70 00:00 | |
| now I got curious | 01/01/70 00:00 | |
| what is not advisable | 01/01/70 00:00 | |
| details? | 01/01/70 00:00 | |
| pseudo-C | 01/01/70 00:00 | |
| I hope not, that would be the ultimate r | 01/01/70 00:00 | |
| the linker does not care if a module is | 01/01/70 00:00 | |
| no stack | 01/01/70 00:00 | |
| I do not know if that makes any sense | 01/01/70 00:00 | |
| Thanks Jan - P89V51RDA2 IAP | 01/01/70 00:00 | |
| yes, that is working | 01/01/70 00:00 | |
| P89V51 IAP | 01/01/70 00:00 | |
examples | 01/01/70 00:00 |



