"Barr Group training courses should be required before writing any embedded code."

General Dynamics

Sign Up Now

Receive Michael Barr's Firmware Update ® newsletter for free how-to articles and industry news by e-mail. Sign up now.

Bookmark It

Bookmark this page or share it with a colleague.

Embedded Software Development Tools Courses

Every profession has its specialized tools. So, too, embedded software developers. The courses below demonstrate best practices for the use of some of the most powerful tools available for firmware development.

Embedded Programming with the GNU Development Tools
The GNU compiler, debugger, and related development tools are unmatched in their power and portability. Embedded programmers regularly choose the GNU tools and subsequently spend months or years getting to know their many features and options intimately. This course is a combination of lectures and hands-on lab exercises that will turn you into a GNU tools power user in less than a week. The course is appropriate for both C and C++ programmers (more).

Critical Software Safeguards: Lint and MISRA-C
The automatic C/C++ code checker, lint, is a powerful but underutilized static analysis tool. The “2004 Guidelines for the Use of the C Language in Critical Systems” (a.k.a., MISRA-C) are similarly powerful and underused. On their own, lint and MISRA-C are powerful tools for preventing or detecting bugs and, thus, making embedded systems safer and more reliable. Furthermore, the value of following the MISRA-C coding guidelines is magnified many times by the use of lint or another static analysis tool as an automatic rule enforcer. This course introduces both static analysis and MISRA-C, then demonstrates how to put them together for maximum impact (more).

To request pricing or dates, or for more information about these courses, contact us.