Building Advanced Applications on Cortex-M Devices using Keil MDK-ARM Middleware

 

This 2-day course is an introduction to building advanced applications on Cortex M devices using the Keil MDK-ARM Professional Development Software. 

This is an instructor-led course delivered by our resident ARM Specialist, Trevor Martin who is also a published author and recognised authority on Cortex-M cores. 

It also includes hands-on exercises at all key stages.

Day 1: File System and Networking Components

CMSIS Pack and CMSIS Driver

In this section we look at the CMSIS Pack and CMSIS driver specifications and how they enable the use of configurable software components. We will also see how software components are installed and managed within the Keil MDK-ARM toolchain.

KEIL File System Component

In this section we look at how to configure and use the file system component.

  • Getting started
    Learn how to set up and configure project containing a file system and download to a development board and debug. 

  • Using the file system component
    This section looks at how to use the features available in the file system component
    • Supported volumes
    • Configuring for SD card Fat32
    • Configuring  for NOR Flash EFS
    • Using the file system API
      • System routines
      • File IO
      • Utility and maintenance routines
      • Media support and IO control routines

Keil Networking Component 

The networking component includes a TCP\IP stack and a wide range of services. This section of the course details how the configure and use the key aspects of the networking component

  • Getting started
    Learn how to configure the networking component and deploy it to a development board so it can be ‘pinged’ from a PC 

  • Using the networking component
    This section looks at how to use the features available in the networking component:
    • Supported network channels
      • Ethernet, PPP and Slip
    • Custom communication with BSD Sockets
    • Adding services
      • Webserver and compact webserver
      • FTP server and client
      • Telnet
      • SMTP
      • DNS and SNTP
      • SNMP

Day 2: USB and Graphics Component

Keil USB Component

The USB component includes support for USB host and USB device with a range of device classes. This section introduces the USB protocol and details how to use the USB component to build a range of devices.

  • USB Protocol overview
    This section provides an overview of the key aspects of the USB protocol and how they impact on developing USB based devices. 

  • Using the USB component
    In this section we look at creating USB host and USB device applications with the USB component
    • USB Device
      • USB Communications Device class
      • USB Human Interface Device class
      • USB Mass Storage Class
      • Composite Devices
    • USB Host
      • USB Communications Device class
      • USB Human Interface Device class
      • USB Mass Storage Class

Segger emWin Graphics Component

The Segger emWin component also you to develop sophisticated graphical interfaces for a wide range of LCD screens. The Segger graphical component provides a 2D graphics library and a PC based GUI designer which includes a wide range of windows objects (wigits).

  • Getting started
    Learn how to configure the GUI component for a supported LCD screen and deploy a simple ‘Hello World’ program to a development board. 

  • Using the graphics component
    In this section we look at creating graphics based applications.
    • 2D Graphics library
      • Graphics primitives
      • Bitmap support
      • Installing fonts
    • GUI Design
      • GUI builder
      • Windows manager
      • Joystick and touch screen support

Designing software components for code reuse

Finally we look at how to develop and deploy your own software components based on the CMSIS pack specification. This is a method of reusing code developed in house across multiple projects to increase development productivity and reliability.

  • Developing a CMSIS Pack Component
    In this section we look at the technology underlying the CMSIS pack specification
    • CMSIS Pack Structure
    • Designing a software component
    • Deploying software components

When, where and how much?

ARM middleware training booking

Dates:
The next dates are:

15th-16th February 2017
17th-18th May 2017
5th-6th July 2017
21st-22nd November 2017 (Please be aware that this date is part of our annual ARM User Conference Week, and as such will be held at the Hilton Hotel, Warwick.

Venue:
Unless otherwise stated above, this course is run at our UK office:

Hitex UK Office
Millburn Hill Road
University of Warwick Science Park
Coventry
CV4 7HS

Full directions can be found here.

Costs:
The workshop costs are:

£250

Costs will include lunch and course materials.