added content to board_XMC.asciidoc authored by Patrick Schmitt's avatar Patrick Schmitt
== https://es.technikum-wien.at/openlab/openlab_wiki/wikis/home[Home] | https://es.technikum-wien.at/openlab/openlab_wiki/wikis/board_TIVAC[<Microcontroller-based TIVAC] | https://es.technikum-wien.at/openlab/openlab_wiki/wikis/sig_proc_osci_hardware[Signal Processing Front-End (XMC,TIVAC,DE0-Oscilloscope)>]
= Microcontroller-based XMC4500
One of the tested microcontroller-based solutions at the OpenLab project is the Relax Kit V1.0 [10] 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 Relax Lite Kit-V1 and a less populated one shown in figure 15.
Each of the pictures shows one version of the Relax Kit with markings pointing to key components that have been assembled onto either board.
{empty} +
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.
{empty} +
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.
{empty} +
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.
{empty} +
== 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
{empty} +
*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
{empty} +
*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
{empty} +
*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
{empty} +
*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
{empty} +
*Input/Output Lines*
* Programmable port driver control module (PORTS)
* Individual bit addressability
* Tri-stated in input mode
* Push/pull or open drain output mode
* Boundary scan test support over JTAG interface
{empty} +
*On-Chip Debug Support*
* Full support for debug features: 8 breakpoints, CoreSight, trace
* Various interfaces: ARM-JTAG, SWD, single wire trace
{empty} +
== Bibliography
. TERASIC: _DE0 product page_ [Online] http://www.terasic.com.tw/cgi-bin/page/archive.pl?Language=English&CategoryNo=165&No=364&PartNo=1[DE0 product page]
. ALTERA CORPORATION: _Cyclone III Device Handbook_, 1.0 ed., 2012
{empty} +
== https://es.technikum-wien.at/openlab/openlab_wiki/wikis/home[Home] | https://es.technikum-wien.at/openlab/openlab_wiki/wikis/board_TIVAC[<Microcontroller-based TIVAC] | https://es.technikum-wien.at/openlab/openlab_wiki/wikis/sig_proc_osci_hardware[Signal Processing Front-End (XMC,TIVAC,DE0-Oscilloscope)>]