Event-Driven Programming and State Machines

Course#: BSEMB10017

About this Course

Course Type Course Code Duration
Embedded Software BSEMB1017 2 Days

Once learned, the technique of event-driven programming is a fun and easy way to write reliable and maintainable embedded software. Unfortunately, most embedded programmers either haven’t heard of event-driven programming or don’t know how to use it properly. This course trains programmers to architect firmware with an event focus and shows the many benefits of using state machine frameworks to implement the resulting design.

Why Attend this Course?

You’ll also learn UML’s statechart notation and a variety of best practices for effective event-driven programming in C (contact us about C++ options).

What Makes this Course Stand Apart?

What you will Learn?


Embedded software developers and managers


Experience writing embedded software in C or C++

Course Outline

Reactive Programming
Events and Reactions
Event Queues
State Machines
Active Objects
UML Statecharts
States and Transitions
Guard Conditions
Actions and Reactions
Entry and Exit Actions

Design Patterns
Ultimate Hook
Deferred Event
Orthogonal Component
Transition to History
Inversion of Control
Event Delivery
Garbage Collection
Time and Power
Related Topics
Common Pitfalls
Preemption and Priority
Software Tracing
Debug and Test

Demonstration Platforms

Quantum Platform (link is external)
Texas Instruments Cortex-M4 Based LaunchPad

What next- How do I arrange a group course or book a public place.?

We are here to help so please utilise our live chat team

Call to speak to your account manager or a consultant on

+44 (0)345 467 9557 or email sales@brightts.com

We are all technical with a wealth of Learning & Development experience
so can talk you through any specific requirements or the details of
one of our courses.


Start typing and press Enter to search