Rapid Embedded Systems Design Education Kit

Teaching materials now available on GitHub.

You can download the materials by clicking the button below which will take you to Arm Education's official GitHub pages.

Our Rapid Embedded Education Kit is now open for modification and additions using the GitHub platform. Contributions are an important part of our materials, and our goal is to make it as simple as possible to become a contributor. The license agreement along with documentation on how to contribute can be found on our repo.

Kit specification:

  • A full set of lecture slides, ready for use in a typical 10-12-week undergraduate course (see full syllabus).
  • Lab manual with code solutions for faculty. Labs are based on low-cost but powerful Arm-based hardware platforms
  • Prerequisites: Basics of programming in C / C++
Access Education Kit

Course Aim

To produce students who can design and program Arm-based embedded systems and implement them using commercial API.

 

Learning Outcomes

  • Knowledge and understanding of
    • Arm processor architectures
    • Arm-based microcontrollers as modern embedded computing platforms
    • High-level programming API as a prototype tool for rapid development of embedded applications
    • Fundamentals of programming peripherals on microcontrollers
  • Intellectual
    • Explain the characteristics of an embedded system and evaluate its benefits and challenges
    • Identify and explain key features of Arm architectures and processors
    • Describe the flow of programming an Arm processor
    • Outline the different components of the Mbed platform, how they relate to programming microcontrollers, and the benefits of a high-level API
    • Explain how microcontroller peripherals can be controlled through the Mbed API, using digital and analog I/O, interrupts, pulse-width modulation, and timers
    • Explain key serial communication technologies and how the Mbed API supports them
    • Explain the features of a Real-time Operating System (RTOS) and how Mbed supports them
  • Practical
    • Use the Mbed Command-line Interface (CLI) to import, compile and run projects
    • Utilize Mbed API functions for digital and analog I/O, interrupts, and pulse-width modulation to control peripherals on a microcontroller
    • Implement different serial communication protocols, such as UART, SPI, and I2C using Mbed Studio
    • Utilize the Mbed RTOS APIs to create an application that can alter LED displays
    • Utilize a range of Mbed APIs to design and create an advanced music player

 

Syllabus

1 Introduction to Embedded Systems
2 The Arm Cortex-M4 Processor Architecture
3 Introduction to Arm Cortex-M4 Programming
4 Introduction to the Mbed Platform and CMSIS
5 Digital Input and Output (IO)
6 Interrupts and Low Power Features
7 Analog Input and Output
8 Timer and Pulse-Width Modulation
9 Serial Communication
10 Real-Time Operating Systems
11 Final Project

Extra Reading: The Arm Cortex-M Processor Architecture: Part 2

Access Education Kit

You can download the materials by clicking the button below which will take you to Arm Education's official GitHub pages.

Our Rapid Embedded Education Kit is now open for modification and additions using the GitHub platform. Contributions are an important part of our materials, and our goal is to make it as simple as possible to become a contributor. The license agreement along with documentation on how to contribute can be found on our repo.

Access Education Kit
 

Embedded Systems Essentials with Arm

Looking for supplementary materials to help your students begin their embedded systems design and programming career?

Our Embedded Systems Essentials Program provides learners with practical, hands on resources to supplement the skills acquired during their course.

Our new progam on edX is live now!

Sign Up for Newsletter

Interested in hearing more from the Arm University Program?

Sign Up