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.