This course teaches intermediate embedded skills for working with embedded systems, including software development and C++ programming. It covers programming the ARM Cortex microcontroller, a powerful 32-bit microcontroller, and its modularised programmes and OOP architecture. The knowledge gained will be applied in the Advanced Level course.
Learning Outcome
- Outline Importance of software development process when writing code
- Write embedded system software in C++ programming language
- Describe the architecture of ARM Cortex microcontroller
- Understand and create class diagrams
- Control GPIO pins on the ARM device
- Debug and test codes running on the arm device
- Handle external and timer interrupts
- Perform serial communications with external devices
- Create timers to perform periodic actions
- Read analog voltage using ADC
- Generate PWM pulses using analog output
- Explain Memory Access
- Explain Basic RTOS concept
- Use embedded solution as external plugin to PLC
Methodology
This course will be conducted in a workshop fashion, whereby the basic theory and concepts will be presented, followed by hands-on practice and exercises.
Pre-requisite
Participants would preferably have attended the Embedded Skills (Fundamental Level) course.
Duration
4 Days
Target Group (who should attend)
Fresh graduates, and working industrial workforce involved in factory manufacturing production, such as process, quality, mechanical, computer science and other related fields.
Day 1
- Embedded Software Development Process
- Essential C++ Programming for Embedded
Day 2
- Introduction to the ARM Cortex Microcontroller
- Overview of Class Diagram for Embedded Architecture Planning
- Controlling General-Purpose Input/Output (GPIO) Pins for Simple Input and Output Devices and Parallel
- Debugging and Testing the Programme
- External and Timer Interrupts
- Serial Communications
- Timers
Day 3
- Reading Analog Values – Analog to Digital Conversion
- Controlling power output using Digital to Analog Converters (DACs)
- Memory Access
- Introduction to RTOS
- Embedded Solution as External Plugin to PLC
Day 4
- Mini Project #3