Microchip ARM Cortex-M3

Microchip's (formerly Atmel) range of ARM®Cortex®-M3 microcontrollers deliver up to 96MHz of high performance processing and plenty of memory, as well as support for off-chip memories, making them idea for a range of applications where connectivity plays an important role. The SAM3U family is ideal for connectivity applications, with its high-speed USB interfaces and SD-Card peripheral, as well as its collection of timers. The SAM3X and SAM3A provide a similar feature-set, albeit without the external memory interface. The SAM3X also features on the popular Arduino DUE development board.

The SAM3S range fulfil almost every need, including both analog input and output peripherals in the form of ADCs, DACs and Analog Comparators. Included is also a Real-Time Clock (RTC) module. The SAM3N pares down the feature set for cost-sensitive applications, retaining the ADC and DAC at the expense of interfaces such as SD-Card and USB.

Both debug and instrumented trace support are provided on these devices via ARM's CoreSight™ technology, utilizing the Serial Wire Debug (SWD) interface for pure debugging and the Serial Wire Output (SWO) single-pin interface for basic trace output.

Furthermore, the following CoreSight™ features are supported by this family:

CoreSight™ Feature Description SAM3S SAM3X SAM3A SAM3U SAM3N iC5000 iC5700
FPB (Flash Patch Breakpoint) Implements hardware breakpoints
DWT (Data Watchpoint and Trace) Hardware comparators for program counter
and data watchpoints
ITM (Instrumentation Trace Macrocell) Block supports printf style debugging, trace of
RTOS events and output of diagnostic system
information.
SWO (Serial Wire Output) Single-pin output for ITM trace messages
TPIU (Trace Port Interface Unit) Bridge between on-chip trace data and either
SWO or ETM interfaces.
SWD (Serial Wire Debug) Two-wire CoreSight™ interface used for debugging
and debug configuration.

If you are looking to improve code quality, our integrated testing tool testIDEA can also utilize the debug interface to test your code on the target microcontroller as well, even providing code coverage for unit tests with our 'Slow Run' feature.