EnglishFrenchSpanish

OnWorks favicon

ice-gdb - Online in the Cloud

Run ice-gdb in OnWorks free hosting provider over Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator

This is the command ice-gdb that can be run in the OnWorks free hosting provider using one of our multiple free online workstations such as Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator

PROGRAM:

NAME


ice-gdb - JTAG ICE frontend for avr-gdb
ice-insight - JTAG ICE frontend for avr-insight

SYNOPSIS


ice-gdb/ice-insight [--debugger debugger] [--capture] [--ignore-intr] [--external]
[gdb_arguments]

DESCRIPTION


ice-gdb (respectively ice-insight) starts avr-gdb (respectively avr-insight) and avarice
to do on-chip debugging on Atmel AVR processors using their JTAG-based on-chip debug
facilities, via the Atmel JTAG ICE pod.

The executable for the program being debugged is downloaded to the processor unless the
--capture option is specified. A number of extra commands are available within gdb when
started, see their description in NEW GDB COMMANDS below. Restrictions on debugging with
the JTAG ICE pod are discussed in more detail in DEBUGGING WITH JTAG ICE below.

The arguments passed to avarice include the value of the AVARICE_ARGS environment
variable. This is typically used to specify the serial port to which the JTAG ICE pod is
connected by setting AVARICE_ARGS to "-j <serial port name>".

OPTIONS


--debugger debugger_command
Specify a different debugger than avr-gdb (or avr-insight). This other debugger
should behave similarly to gdb.

--capture
Don't download the executable being debugged to the mote, just interrupt the
current program and assume that it matches the executable passed to ice-gdb. This
is similar to "attaching" to a running program within gdb.

--ignore-intr
Pass the --ignore-intr option to avarice. The single-step commands in gdb (s, n)
will then "step over" interrupt handlers (i.e., if an interrupt occurs, execution
will resume for the duration of the interrupt).

--external
Do not start avarice. Instead, avr-gdb will attempt to connect to an already
running avarice on port localhost:6423.

NEW GDB COMMANDS


ice-restart
Restart avarice.

ice-load filename
Download executable filename to the Atmel processor and start debugging it (this
replaces the gdb load command).

target-ice
Connect to a copy of avarice running on port localhost:6423.

DEBUGGING WITH JTAG ICE


The JTAG ICE debugging environment has a few restrictions and changes:

· No "soft" breakpoints, and only three hardware breakpoints. The break command sets
hardware breakpoints. The easiest way to deal with this restriction is to enable and
disable breakpoints as needed.

· Two 1-byte hardware watchpoints (but each hardware watchpoint takes away one hardware
breakpoint). If you set a watchpoint on a variable which takes more than one byte,
execution will be abysmally slow. Instead it is better to do the following:

watch *(char *)&myvariable

which watches the least significant byte of myvariable.

· The Atmel AVR processors have a Harvard architecture (separate code and data buses).
To distinguish data address 0 from code address 0, avr-gdb adds 0x800000 to all data
addresses. Bear this in mind when examining printed pointers, or when passing absolute
addresses to gdb commands.

ENVIRONMENT


AVARICE_ARGS
Extra arguments to pass to avarice at startup.

Use ice-gdb online using onworks.net services


Free Servers & Workstations

Download Windows & Linux apps

  • 1
    AstrOrzPlayer
    AstrOrzPlayer
    AstrOrz Player is a free media player
    software, part based on WMP and VLC. The
    player is in a minimalist style, with
    more than ten theme colors, and can also
    b...
    Download AstrOrzPlayer
  • 2
    movistartv
    movistartv
    Kodi Movistar+ TV es un ADDON para XBMC/
    Kodi que permite disponer de un
    decodificador de los servicios IPTV de
    Movistar integrado en uno de los
    mediacenters ma...
    Download movistartv
  • 3
    Code::Blocks
    Code::Blocks
    Code::Blocks is a free, open-source,
    cross-platform C, C++ and Fortran IDE
    built to meet the most demanding needs
    of its users. It is designed to be very
    extens...
    Download Code::Blocks
  • 4
    Amidst
    Amidst
    Amidst or Advanced Minecraft Interface
    and Data/Structure Tracking is a tool to
    display an overview of a Minecraft
    world, without actually creating it. It
    can ...
    Download Amidst
  • 5
    MSYS2
    MSYS2
    MSYS2 is a collection of tools and
    libraries providing you with an
    easy-to-use environment for building,
    installing and running native Windows
    software. It con...
    Download MSYS2
  • 6
    libjpeg-turbo
    libjpeg-turbo
    libjpeg-turbo is a JPEG image codec
    that uses SIMD instructions (MMX, SSE2,
    NEON, AltiVec) to accelerate baseline
    JPEG compression and decompression on
    x86, x8...
    Download libjpeg-turbo
  • More »

Linux commands

Ad