Altered 16MHz MSP430 flash timing code to be 320 kHz.
533kHz gave errors; might need to correct 3MHz code as well.
git-svn-id: https://svn.code.sf.net/p/goodfet/code/trunk@171
12e2690d-a6be-4b82-a7b7-
67c4a43b65c8
print "Tests complete, erasing."
self.MSP430masserase();
- def MSP430flashtest(self):
- self.MSP430masserase();
- i=0x2500;
- while(i<0xFFFF):
- if(self.MSP430peek(i)!=0xFFFF):
- print "ERROR: Unerased flash at %04x."%i;
- self.MSP430writeflash(i,0xDEAD);
- i+=2;
def MSP430masserase(self):
"""Erase MSP430 flash memory."""
self.writecmd(self.MSP430APP,0xE3,0,None);
for i in h._buf.keys():
#print "%04x: %04x"%(i,h[i>>1]);
if(i>=start and i<stop and i&1==0):
- client.MSP430pokeflash(i,h[i>>1]);
+ val=h[i>>1];
+ val2=client.MSP430pokeflash(i,val);
+ if(val!=val2):
+ print "Write error at %04x, %04x!=%04x." %(
+ i, val, val2);
if(i%0x100==0):
print "%04x" % i;
-if(sys.argv[1]=="flashtest"):
- client.MSP430flashtest();
if(sys.argv[1]=="verify"):
f=sys.argv[2];
start=0;
default:
jtaghandle(app,verb,len);
}
- jtag430_resettap();
+ //jtag430_resettap();
}
sub #1, r15 ; 1 cycle
;; 1+3+3+1+2=10, beneath limits,
- ;; +3+2=5, repeat 5 times to get 10+25=35, within limits
+ ;; +3+2=5, repeat 8 times to get 10+40=50, within limits
+ push r11 ; 3 cycles
+ pop r11 ; 2 cycles
+ push r11 ; 3 cycles
+ pop r11 ; 2 cycles
+ push r11 ; 3 cycles
+ pop r11 ; 2 cycles
push r11 ; 3 cycles
pop r11 ; 2 cycles
push r11 ; 3 cycles