Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

[PIC] dsPIC30F5013 ERASE PROGRAM MEMORY

Status
Not open for further replies.

Christian Zichichi

Newbie level 2
Newbie level 2
Joined
Jan 10, 2014
Messages
2
Helped
0
Reputation
0
Reaction score
0
Trophy points
1
Visit site
Activity points
14
Hi,
I need to wipe the program memory entirely (all bits at 0) of my dsPIC30F5013,
why doesn't this code work?

oldAddress=0x100;
while(oldAddress<0x00AFFE){
addressToWrite=oldAddress;
if(oldAddress+16<=0x00AFFE)
break;
else
WriteWord(addressToWrite,0);
oldAddress+=16;
}


function WriteWord is defined in in eeprom_rw.s written by btbass (library included in the code):
;------ Write a word to eeprom
_WriteWord:
push w4
mov #ADDRESS_HI,w4
mov w4,TBLPAG
mov w4,NVMADRU
mov #ADDRESS_LO,w4
sl w0,#1,w0
add w0,w4,w0
mov w0,NVMADR
rcall EraseWord
mov #WRITE_WORD,w4
mov w4,NVMCON
TBLWTL w1,[w0]
rcall KeySequence
pop w4
return
 

Status
Not open for further replies.

Similar threads

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top