MDK Components  Version 5
MDK-Professional Middleware
MDK Components Documentation

The Microcontroller Development Kit MDK-ARM is a development environment for ARM Cortex-M series microcontrollers and contains everything for creating and testing applications in assembly, C or C++. MDK Version 5 is split into the MDK Core and Software Packs making new device support and middleware updates independent from the tools.

mw_overview.png
MDK Version 5 - Software Packs

The MDK Core contains IDE, ARM compiler, Pack Installer, and a debugger. Software Packs install device support and CMSIS components that include DSP Library and a full-featured RTOS.

The MDK Professional Edition includes the Middleware Software Pack with components for TCP/IP networking, USB Host and Device communication, file system for data storage, and a graphical user interface.

This Middleware documentation describes:

  • File System Component: create, save, read, and modify files in storage devices such as RAM, Flash, SD/SDHC/MMC memory cards, or USB memory devices.
  • Network Component: services, protocol sockets, and physical communication interfaces for creating networking applications.
  • USB Component: create USB Device and USB Host applications with standard USB device classes.

Each component is configureable for a wide range of applications.

Driver Interface

The interface to the microcontroller peripherals is done using drivers that will become a new CMSIS-Driver standard. These drivers are not limited to MDK Professional middleware and may be used by various middleware stacks to utilize those peripherals.

For each enabled peripheral of the microcontroller, a control or access struct is provided that is the interface for the middleware. Drivers for most of the communication peripherals are part of the Software Packs that provide device support.

mw_driver.png
Drivers are connected to Middleware using configuration files

The drivers are typically configured using the RTE_device.h configuration file. This file maps I/O pins, interrupts and DMA channels to the available microcontroller resources.

The access struct of the various drivers is connected to the middleware using the configuration files of each middleware component.