Lecture07_IntroductionToTheMbedPlatform
Lecture07_IntroductionToTheMbedPlatform
• Mbed Overview
• Mbed OS
• Mbed Software Development Kit (SDK)
• Mbed Hardware Development Kit (HDK)
• Cortex Microcontroller Software Interface Standard (CMSIS)
What is Mbed? The Mbed platform provides: The Mbed platform includes:
A platform used for the easy Open software libraries Mbed Operating System (Mbed OS)
prototyping and development of Open hardware designs – Libraries, RTOS core, HAL, API,
applications and systems based on and more
Open online tools for professional
Arm Cortex-M-based A microcontroller Hardware
rapid prototyping of products based
microcontrollers, typically used in Development Kit (HDK) and
on Arm-based microcontrollers
the world of IoT supported development boards
Integrated Development
Environment (IDE), including an
online compiler and online
developer collaboration tools
applications
• An Mbed OS application can be run on any Mbed-
compatible platform IoT
Connectivity
Human Interface Device (HID) USB drag and drop programming USB serial port
Provides a channel over which The DAPLink debug probes appear DAPLink probe also provides a USB
CMSIS-DAP protocols can run as USB disks on host computers serial port
• Enables tools such as Keil MDK, Binary and hex files can be copied • Port will appear on a Windows PC
IAR Workbench, and pyOCD to the USB disk that are then as a COM port or in Linux as a
programmed into the memory of /dev/tty interface
the target system
Greentea
• Automated testing tool for Arm Mbed OS development
• Pair with “UNITY” and “utest” frameworks
• https://os.mbed.com/docs/mbed-os/v5.15/tools/greentea-testing-applications.html
Icetea
• Automated testing tool for Arm Mbed OS development
• Typically used for local development and automation in a continuous integration environment
• https://os.mbed.com/docs/mbed-os/v5.15/tools/icetea-testing-applications.html
• This benefits developers, as they are assured that the platforms they choose to work with can perform certain
functions/provide certain performance.
• It is also beneficial to vendors, as it gives their products more exposure when certified that can increase their
popularity with developers in the Mbed ecosystem.
• Deep knowledge of C++ is not necessary to use the Mbed API. However, there are many C++ tutorials and books that
can prove helpful.
API
Arm CMSIS-Core
Cortex-M0
Cortex-M
Arm Cortex-M
Cortex-M3
Processor
Cortex-M4
• Debugger can
connect via USB to
debug unit & device
• Debug unit
connected to target
via JTAG/SW
• CoreSight Debug and
Trace Unit on CPU
• Multi-core debugging