??? 06/02/05 00:05 Read: times |
#94210 - You Call That Convenient??? Responding to: ???'s previous message |
Richard Erlacher said:
Think about it for a moment ... the resident debugger allows you to run a test loop, by means of which you can verify proper function of your I/O synchronization code, etc. You can do exactly the same via JTAG; in fact better, because the JTAG can write the code direct to code memory - without involving the 8051 at all, and without you having to type the code line-by-line at your VT100 using a crude inline assembler. The JTAG can directly access the peripherals - without the 8051 having to interpret your commands, execute code to access the peripheral, and then execute more code to pass the results back to you. Yes, you can, after many hours of examination, determine the same thing that you could have seen in 10 seconds under the control of an async-interfaced debug monitor. I use the Triscend devices with JTAG etc; this can download over 60K of code in only a few seconds - I'd hate to have to do that on a line-by-line assembler, with no symbolic addressing, etc. You then examine (via disassembly) the associated code, make patches using the line-by-line assembler and never having to look up a byte of binary, and then try it again. Because it has to run in the 8051, you're restricted to a line-by-line assembler without symbolic addressing; All you can see is raw hex data, etc, etc. JTAG makes no demands on the 8051 whatsoever; it just gives you direct access to registers, peripherals, memory - everything. You can then use the power of a PC to give you a full-function assembler, high-level language source debugging, symbolic display, etc, etc, etc. There are always may ways to skin the proverbial cat, but some certainly are more convenient than others. Having used both resident debugger/monitors (including MS-DOS DEBUG) and JTAG-based solutions, I have absolutely no doubt that the JTAG-based solutions are by far the most convenient & capable. |