Accemic MDE (Monitor Debugging Environment) is the key to success for all software developers using modern single-chip microcontrollers. For today's embedded processors, Accemic MDE provides powerful state-of-the-art debugging capabilities and a highly intuitive, easy-to-use visual interface.
Accemic MDE is designed to deliver functionality that will reduce the time spent on testing and debugging. Accemic MDE is the first tool on the market allowing the Spansion FR microcontrollers to be debugged in the single-chip mode without using an Emulator.

In combination with the Accemic topICE emulator the same user interface provides access to trace data, runtime measurement, complex breakpoints and other sophisticated features.

Features

Processor Status

Accemic MDE contains an extensive Processor Status Window for controlling I/O ports and peripheral units of the target. Each of the control registers is accessible and explains the purpose of the control bits in plain text. This makes it very easy to control the peripheral units and to test different register settings.

Program download

Accemic MDE contains a fast flashing tool to program the internal flash memory of the target. A CRC check guarantees error free programming.

User interface

The source code and the integrated disassembler display useful debugger functions such as syntax highlighting, current code line, and possible breakpoints. An ergonomic interface with drag-and-drop functionality is provided.

Execution functions

The way the target MCU will respond after a reset is programmable. The monitor kernel can be started directly in order to control loading and execution of new programs. Beyond that there is a “Run and Break” mode. In this mode the user program starts automatically after a reset, and if debugging is needed, it is possible to start the debugger with a special sequence of instructions. Single-stepping allows program execution to be watched line by line. It is possible to step into single lines of source or to step into or over procedure calls. The Call Function feature allows the user to call and test functions and interrupt service routines.

Breakpoints

The code breakpoints make the program halt at critical points and observe values. Breakpoints can also be inserted while the application is running. Of course, breakpoints can be set in all code addresses, even in RAM or ROM areas.

Online watching

With this feature it is possible to check the contents of memory and registers while the target program is running without impairing the real-time capability of program execution. The update rate is adjustable. A highly optimized update manager ensures that updates are completed rapidly while load on the system is minimal. Since the update manager only updates those variables visible on the screen at that moment, it is capable of inspecting large structures (e.g. char-arrays) very quickly.

Chart window

The Chart Windows allow you to graph the values of variables in your system as a function of time. This gives you considerable flexibility in observing variable values during debugging and tuning.

Transfer function

In addition to the online watching function, some powerful messaging functions (acc_printf and acc_MessageBox ) are implemented for linking into the application, allowing data and messages to be sent to the PC screen.

Watchdog timer update

A very helpful feature is the function acc_WatchdogEnable. If this function is called, Accemic MDE will update the watchdog automatically.

Monitor kernel access authorization

Some microcontrollers are equipped with a flash security function, which prevents the reading of internal flash memory content. This function is suitable for applications requiring protection of codes and data stored in the flash memory. When the flash content protection function is enabled, it is impossible to read values in internal memory using parallel writers, serial writers or other mechanisms.


The monitor kernel can be seen as a “standardized” workaround for bypassing this security feature.


For this reason Accemic has implemented monitor kernel access authorization. After start-up, initially the monitor kernel is in a passive state and no requests from the PC will be responded until the correct password is entered for the monitor kernel.


If you lose the password, the monitor kernel will have to be reloaded to re-access the monitor kernel via the bootloader.