| ??? 02/24/06 21:57 Read: times |
#110734 - Thanks it worked!! Responding to: ???'s previous message |
Jon Ledbetter said:
second_part: LOAD_PAGE1: MOV FMDAT,#32H ;write data to FMDATA DJNZ R3,LOAD_PAGE1 ;do until count MOV FMCON,#EP RET ;and return Guess what Jon...the code worked and now the address locations 440h to 480h are loaded with "32h".Thanks for the help!!! I have written the code below for other to read.
HIGHADDRESS EQU 04H ; get high address
LOWADDRESS EQU 40H ; get LOW address
LOAD EQU 00H ; LOAD COMMAND
ERASE EQU 68H ; ERASE COMMAND
COUNT EQU 64 ; NUMBER OF BYTES IN THE PAGE TO BE ERASED
DATA_ERASE EQU 00H ; 00 TO ERASE
DATA_PROGRAM EQU 32H ; VALUES TO BE WRITTEN (for example "32H")
IAP_CODE:
CLR EA ; INTERRUPTS DISABLED
MOV R3,#COUNT
MOV R4,#HIGHADDRESS
MOV R5,#LOWADDRESS
MOV FMCON,#LOAD
MOV FMADRH,R4
MOV FMADRL,R5
LOAD_PAGE: MOV FMDATA,#DATA_ERASE ; TO ERASE THE ADDRESSES
NOP ; BETWEEN 440H TO 480H
DJNZ R3,LOAD_PAGE ; 64 BYTES ERASE
MOV FMCON,#ERASE
MOV A,FMCON
ANL A,#0FH
JNZ BAD
CLR C
MOV R3,#COUNT
MOV R4,#HIGHADDRESS
MOV R5,#LOWADDRESS
MOV FMADRH,R4
MOV FMADRL,R5
LOAD_PAGEONE: MOV FMDATA,#DATA_PROGRAM ; TO WRITE TO ADDRESSES
NOP ; 440H TO 480H
DJNZ R3,LOAD_PAGEONE ; 64 BYTES WRITE
MOV FMCON,#ERASE
MOV A,FMCON
ANL A,#0FH
JNZ BADWRITE
CLR C ; CLEAR ERROR FLAG IF GOOD
JMP SEND_FLASH_END
BADWRITE: SETB C ; SET ERROR FLAG IF NOT WRITTEN
JMP SEND_FLASH_END
BAD: SETB C
SEND_FLASH_END: SETB EA ; INTERRUPTS ENABLED
RET
Thank you, Shruthi |
| Topic | Author | Date |
| 89LPC952 FLASH PROGRAMMING | 01/01/70 00:00 | |
| Notes on posting code | 01/01/70 00:00 | |
| rewrritten code 89LPC952 IAP code | 01/01/70 00:00 | |
| what more do you need | 01/01/70 00:00 | |
| Not sufficient!!! | 01/01/70 00:00 | |
| how did you not "see" that? | 01/01/70 00:00 | |
| I have written the code.... | 01/01/70 00:00 | |
| Looks to me like | 01/01/70 00:00 | |
| I have written the code | 01/01/70 00:00 | |
| How can writing a constant be "the next" | 01/01/70 00:00 | |
| Oh I see... | 01/01/70 00:00 | |
| Disreguard previous post | 01/01/70 00:00 | |
| a hint | 01/01/70 00:00 | |
| updated code for 89LPC952 IAP | 01/01/70 00:00 | |
| The above correction ('ONE' should be '1 | 01/01/70 00:00 | |
| Ok... | 01/01/70 00:00 | |
| That's exactly my question | 01/01/70 00:00 | |
| How about.... | 01/01/70 00:00 | |
| Thanks it worked!! | 01/01/70 00:00 | |
You're welcome | 01/01/70 00:00 | |
| Neat | 01/01/70 00:00 | |
| If we go there, then | 01/01/70 00:00 |



