As of 1): You can always just link the RXD & TXD lines to one of those cheap USB to UART and so not hassle with the inconvenient (and probably voltage-incompatible and outdated for modern PC use) RS232 link... I guess you were already aware of that.
As of 2:)
- Regarding clones to the JTAG-ICEmkI, you can get your hands on "Evertool", which is an AVRISP/STK-500 programmer BUT also JTAG-ICE-protocol aware. This means you can access it with both AVRStudio from Atmel and AVaRice. Related to question 1), there is "Evertool-USB" out there which basically has the integrated USB-UART (with a FTDI chip but you're not obligued to choose that and can use e.g. CP2102 or CH340/1 to the same means), in all other respects it's just the original Evertool. Please note that Evertool combines the ISP programming part (akin to e.g. USB-ASP) and the JTAG interface, you if you don't need the former you can do with just the JTAG part of the design and this would be called "Evertool-light".
- Link about all this follows (have to use the Wayback Machine): EverTool and other clones (Wayback Machine)
As the corresponding files for download are not always available at the same date references in the Wayback Machine, for convenience I've attached the ZIP for the Evertool (SEE AT BOTTOM LINE OF THIS POST.)
Also I've taken the means to grant you a ZipFile I created for myself, with all the relevant info included, HERE---> EverTool info, schemaics & soft
- NOTE: just in case you (or anyone interested in this topic) are talking about the problem when trying to use AVaRICE and either the JTAG-ICE mkI or II within Ubuntu / Linux. If you don't use proper command form for AVaRICE then it tries to connect with serial and gives all kind of problems, if the device is properly detected e.g. at 'lsusb' and 'dmesg' command info, then for example for using the MKII the right command is: (example about debugging code on an ATMega32):
avarice -2 --jtag usb -P atmega32 :4242
which yields:
Defaulting JTAG bitrate to 250 kHz.
JTAG config starting.
Found a device: JTAGICEmkII
Serial number: 09:00:00:00:6c:6c
Reported JTAG device ID: 0x9502
Configured for device ID: 0x9502 atmega32 -- Matched with atmega32
JTAG config complete.
Preparing the target device for On Chip Debugging.
Waiting for connection on port 4242
and REMEMBER, previously it is required that you properly clock the part (the ATMega32) by OSC or CLK etc. Then the server is initiated and you can enter GDB, example session would be like this, in another shell window:
avr-gdb ./asm01.elf
GNU gdb (GDB) 7.10.1
Copyright (C) 2015 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "--host=x86_64-linux-gnu --target=avr".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from ./asm01.elf...done.
(gdb) target remote localhost:4242
Remote debugging using localhost:4242
Remote debugging using localhost:4242
reset () at FEATHER.INC:5
5 rjmp startup ; RESET External Pin/ POR/ BOR/
(gdb) n
startup () at asm01.S:17
17 eor r1, r1
(gdb) n
18 mov r26, r1
(gdb) n
ETC ETC....
- If you need a refresher about the GDB use & commands, I would also recommend a quick read of this tutorial:
Using AVR-GDB and AVaRICE Together
If you need any further help or insight with this don't hesitate to ask me.
Kind regards from Spain!
evertool_light_rr.zip