Barr Group TwitterBarr Group LinkedInBarr Group Vimeo

Course Overview

Course Length: 
4 Days
CEUs: 
3.0
Format: 
Hands-on/Lecture

 Download the Complete Course Syllabus

Barr Group's Embedded Software Boot Camp® is an efficient and information-rich hands-on embedded systems training program for programmers of all levels. Through a combination of lectures and programming exercises on ARM-Cortex-based embedded hardware, attendees will learn how to use the C programming language to create portable device drivers, use real-time operating systems, and more. Attendees will independently complete nearly a dozen hands-on programming exercises, including a large capstone project. The exercises include working with Micrium's uC/OS-III operating system and uC/GUI graphics package on a development board.  Attendees may keep all course materials and associated hardware. 

Topics covered during this course include:

  • Embedded C Fundamentals
  • Programming Embedded Peripherals
  • How to Handle Interrupts
  • How to Choose a Language
  • Inter-task Communication and Synchronization
  • Memory Management and Other Related Topics

Prerequisites: Attendees should be familiar with the C or C++ programming language. Prior experience programming for embedded systems may be beneficial but is not necessary.

Requirements: Each student will need a computer, such as a laptop, running XP or a newer version of Windows with an available USB port and administrator privileges. (Windows over Mac OS X generally works.)

Can't make it to an in-person course or don't need an instructor?  See our Embedded Software Training in a Box to find out how you can do the course on your own.

Syllabus

The following summary covers the major course topics and may be modified at the instructor's discretion based on the needs and pace of the course.

  • Introduction
    • Embedded C Fundamentals
  • Fixed-Width Integers
    • Binary Data Manipulation
    • Fixed and Floating Point Math
    • Performance Improvement
    • Data Storage and Lifetimes
    • The World Before main()
  • Peripheral Control
    • Peripheral Registers
    • Memory-Mapped I/O
    • Struct Overlays
    • Volatile Keyword
    • Bitmasks vs. Bitfields
    • Device Drivers
  • Interrupt Handling
    • Interrupt Service Routines
    • Vector Tables
    • Hardware Hurdles
    • Disabling Interrupts
    • Interrupt Latency
  • Language Choice
    • C vs. Assembly
    • C vs. C++
  • Multitasking Fundamentals
    • Tasks and Task States
    • Scheduling Points
    • Context Switching
    • System Calls
    • Mutual Exclusion
  • Intertask Communication
    • Semaphores
    • Mailboxes
    • Message Queues
    • Event Flags
    • Starvation and Deadlock
  • Related Topics
    • Memory Management
    • Timer Ticks
    • OS Hooks
    • Interrupt Handling
  • Key Takeaways

Reviews

"Even as an older experienced software engineer, I learned a lot, especially about RTOS use." - Attendee, 2018

"BARR training is able to elegantly bridge the gap from understanding to executing." - M.Z.H.

"I came into the training with some experience but I really benefitted from from learning the right way to do the basics - and from a very experienced instructor to boot.  You can't get this kind of training from Stack Overflow." - Attendee, 2018

"Great content and delivery." - Attendee, 2018

"Course structure was very well laid out to help digest such a large amount of information in a short period of time." - Attendee, 2018

"So much material!  It was all great and relevant!" - Attendee, 2017

"The exercises were well structured and struck a great balance between what was provided and what the student needed to implement." - Attendee, 2017

"The class was really great... The exercises were really well done.  I feel like I have  good awareness of the basics of embedded systems." - Attendee, 2017

Related Courses

Upcoming Sessions

Date(s) Location PRICE Register
Oct 15 to Oct 18
Embedded Software Boot Camp
Germantown, Maryland, United States $1,999.00 *
Inquire

Find out More

To find out more about our upcoming public trainings, go to our Training Calendar.

Contact Us to find out more about this course or to enquire about an on-site training at your company.

Recording Policy

All Barr Group Training Public and On-site courses may not be audiotaped, videotaped or photographed without consent from Barr Group's executive team.  Barr Group reserves the right to record portions or all of a training course for instructional purposes.  As a result, attendees present may also appear on the recording.