projects
/
goodfet
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
goodfet.msp430 selftest is working!
[goodfet]
/
firmware
/
apps
/
jtag
/
jtag430.c
diff --git
a/firmware/apps/jtag/jtag430.c
b/firmware/apps/jtag/jtag430.c
index
a35a40b
..
5a8da9a
100644
(file)
--- a/
firmware/apps/jtag/jtag430.c
+++ b/
firmware/apps/jtag/jtag430.c
@@
-51,9
+51,14
@@
void jtag430_haltcpu(){
//! Release the CPU
void jtag430_releasecpu(){
CLRTCLK;
//! Release the CPU
void jtag430_releasecpu(){
CLRTCLK;
+ debugstr("Releasing target MSP430.");
+
+ /*
jtag_ir_shift8(IR_CNTRL_SIG_16BIT);
jtag_ir_shift8(IR_CNTRL_SIG_16BIT);
- jtag_dr_shift16(0x2401);
- jtag_ir_shift8(IR_ADDR_CAPTURE);
+ jtag_dr_shift16(0x2C01); //Apply reset.
+ jtag_dr_shift16(0x2401); //Release reset.
+ */
+ jtag_ir_shift8(IR_CNTRL_SIG_RELEASE);
SETTCLK;
}
SETTCLK;
}
@@
-324,6
+329,7
@@
void jtag430handle(unsigned char app,
* for testing server.
*/
while((i=jtag430_readmem(0xff0))==0xFFFF){
* for testing server.
*/
while((i=jtag430_readmem(0xff0))==0xFFFF){
+ debugstr("Reconnecting to target MSP430.");
jtag430_start();
P1OUT^=1;
}
jtag430_start();
P1OUT^=1;
}
@@
-428,7
+434,10
@@
void jtag430handle(unsigned char app,
break;
case JTAG430_SETPC:
jtag430_haltcpu();
break;
case JTAG430_SETPC:
jtag430_haltcpu();
+ debughex("Setting PC.");
+ debughex(cmddataword[0]);
jtag430_setpc(cmddataword[0]);
jtag430_setpc(cmddataword[0]);
+ jtag430_releasecpu();
txdata(app,verb,0);
break;
case JTAG430_SETREG:
txdata(app,verb,0);
break;
case JTAG430_SETREG: