Embedded System Design using UML State Machines
About Course
Learn the fundamentals of simple and hierarchical UML state machines in easy steps
The course emphasizes project-based learning, learning by doing.
The goal of this course is to introduce an event-driven programming paradigm using simple and hierarchical state machines.
After going through this course, you will be trained to apply the state machine approach to solve your complex embedded systems projects.
Some of the highlights of this course are as below
you will learn,
1) UML(Unified Modeling Language) state machine semantics like simple/composite states, events, signals, transitions, entry/exit actions, guards, pseudo-states, etc
2) Drawing UML state machines using graphical modeling tools such as Astah and QM™ modeling tool
3) Implementing embedded applications using Hierarchical state machines and Active objects design approach
4) Using QP™ real-time embedded framework and QP™-Nano Arduino library in your embedded projects
5) Active objects
6) Hands-on event-driven project implementation and testing on Arduino UNO board (Please check the preview videos)
Hardware:
If you want to test the code developed on the target hardware, you need the below-mentioned boards and components
1. Arduino UNO(1)
2. 16×2 character LCD (1)
3. Pushbuttons (3)
4. 10KΩ resistors (3)
5 . 220Ω resistor (3)
6. 100KΩ Potentiometer (1)
7. Arduino buzzer (1)
8. Jumper wires-M2M
Software:
Installation procedure for important software are covered in this course
1. Arduino IDE (Free and Open source )
2. Microsoft visual code (Free)
3. PlatformIO VS code extension(Free and Open source )
4. QM™ modeling tool by Quantum Leaps, LLC (Free GPL version)
5. Astah by Change Vision, Inc.(Trial version)
Learning order of FastBit Embedded Brain Academy Courses,
If you are a beginner in the field of embedded systems, then you can take our courses in the below-mentioned order.
This is just a recommendation from the instructor for beginners.
1) Microcontroller Embedded C Programming: absolute beginners(Embedded C)
2) Embedded Systems Programming on ARM Cortex-M3/M4 Processor(ARM Cortex M4 Processor specific)
3) Mastering Microcontroller with Embedded Driver Development(MCU1)
4) Mastering Microcontroller: TIMERS, PWM, CAN, RTC,LOW POWER(MCU2)
5) Mastering Microcontroller: STM32-LTDC, LCD-TFT, LVGL(MCU3)
6) Embedded System Design using UML State Machines(State machine)
7) Mastering RTOS: Hands-on FreeRTOS and STM32Fx with Debugging(RTOS)
8) ARM Cortex M Microcontroller DMA Programming Demystified(DMA)
9) STM32Fx Microcontroller Custom Bootloader Development(Bootloader)
10) Embedded Linux Step by Step using Beaglebone Black(Linux)
11) Linux device driver programming using Beaglebone Black(LDD1)
Course Content
Introduction
-
A Message from the Professor
-
Introduction to Finite State Machine
07:50 -
Mealy and Moore machine
09:08 -
Mealy and Moore State Transition Table
05:04 -
Exercise-0001 LED control Mealy machine example
12:13 -
Exercise-001 LED control Mealy machine implementation part 1
24:08 -
Exercise-001 LED control Mealy machine implementation part 2
06:55 -
Exercise-002 LED control Moore machine implementation
04:42
UML Flat state machine and Implementation
Flat state machine exercise implementation
Nested switch technique to implement State Machine
Function pointers in ‘C’
State handler technique to implement State Machine
State table technique to implement State Machine
UML Hierarchical State Machines and QP™ framework
UML HSM transition execution sequences
UML HSM exercise using QM tool
Earn a certificate
Add this certificate to your resume to demonstrate your skills & increase your chances of getting noticed.