Microcontroller-based XMC4500
One of the tested microcontroller-based solutions at the OpenLab project is the Relax Kit V1.0 [1] developed by Infineon. This board is used as an evaluation board for the XMC4500 microcontroller. The Relax Kit is available in two versions, the fully assembled Relax Kit-V1 shown in figure 1 and a less populated one shown in figure 2. Each of the pictures shows one version of the Relax Kit with markings pointing to key components that have been assembled onto either board.
The less populated version lacks the connector and interface devices for Ethernet networking, the SD-card holder, an on-board FLASH memory accessible via SPI (Serial Peripheral Interface) and a crystal which may be used to clock the internal RTC (Real Time Clock) unit.
The components that are essential for the developed firmware to function are available on both types. So it is possible to use the cheaper one for the OpenLab oscilloscope if other features like the Ethernet port or the micro SD card slot are not needed by optional user firmware. A very convenient feature of both variants is that they are shipped with a fully functional in-circuit debugger on board. It is marked on the boards as "Detachable Debugger". This debugger supports a de facto standard debugging interface called JLink introduced by the company "SEGGER Microcontroller GmbH & Co. KG". It is in widespread use within the open-source and open-hardware community not at last because the stand-alone debugging probes are available from this company in an "EDU" version which is aimed at and affordable by hobbyists.
The XMC4500 integrates a state-of-the-art processor at its core as well as a broad range of highly configurable and powerful peripheral hardware units. This renders this microcontroller to be fairly complex for a novice programmer and it took a considerable amount of time to become familiar with just a sub-set of the possibilities this controller offers. Therefore the following listing gives just an overview of the features and specification of the microcontroller found in the datasheet by Infineon.
Summary of the features and specification of the XMC4500 microcontroller [2]
CPU Subsystem
-
CPU Core
-
High Performance 32-bit ARM Cortex-M4 CPU
-
16-bit and 32-bit Thumb2 instruction set
-
DSP/MAC instructions
-
System timer (SysTick) for Operating System support
-
-
Floating Point Unit
-
Memory Protection Unit
-
Nested Vectored Interrupt Controller
-
Two General Purpose DMA with up-to 12 channels
-
Event Request Unit (ERU) for programmable processing of external and internal service requests
-
Flexible CRC Engine (FCE) for multiple bit error detection
On-Chip Memories
-
16 KB on-chip boot ROM
-
64 KB on-chip high-speed program memory
-
64 KB on-chip high speed data memory
-
32 KB on-chip high-speed communication
-
1024 KB on-chip Flash Memory with 4 KB instruction cache
Communication Peripherals
-
Ethernet MAC module capable of 10/100 Mbit/s transfer rates
-
Universal Serial Bus, USB 2.0 host, Full-Speed OTG, with integrated PHY
-
Controller Area Network interface (MultiCAN), Full-CAN/Basic-CAN with 3 nodes, 64 message objects (MO), data rate up to 1MBit/s
-
Six Universal Serial Interface Channels (USIC),providing 6 serial channels, usable as UART, double-SPI, quad-SPI, IIC, IIS and LIN interfaces
-
LED and Touch-Sense Controller (LEDTS) for Human-Machine interface
-
SD and Multi-Media Card interface (SDMMC) for data storage memory cards
-
External Bus Interface Unit (EBU) enabling communication with external memories and off-chip peripherals
Analog Frontend Peripherals
-
Four Analog-Digital Converters (VADC) of 12-bit resolution, 8 channels each, with input out-of-range comparators
-
Delta Sigma Demodulator with four channels, digital input stage for A/D signal conversion
-
Digital-Analogue Converter (DAC) with two channels of 12-bit resolution
Industrial Control Peripherals
-
Two Capture/Compare Units 8 (CCU8) for motor control and power conversion
-
Four Capture/Compare Units 4 (CCU4) for use as general purpose timers
-
Two Position Interfaces (POSIF) for servo motor positioning
-
Window Watchdog Timer (WDT) for safety sensitive applications
-
Die Temperature Sensor (DTS)
-
Real Time Clock module with alarm support
-
System Control Unit (SCU) for system configuration and control
Bibliography
The content of this chapter is taken from the master thesis "Development of a low-cost micro-controller based oscilloscope including equivalent time sampling" by Ing. Harald Schloffer, MSc, November 2016
-
INFINEON TECHNOLOGIES AG: XMC4500 Relax Kit & Relax Lite Kit Board User’s Manual, 1.1 ed., November 2012.
-
INFINEON TECHNOLOGIES AG: XMC4500 Data Sheet V1.4 2016-01, January 2016.