C Language Programming with SDK

Course Description

This course is broken into a day of C language review, including variable naming, usage, and modifiers as well as an introduction to the Software Development Kit (SDK) environment, an explanation of the use of the preprocessors, program control, and proper use of functions. The second day consists of common issues and techniques employed by embedded programmers in the Xilinx SDK environment. This comprehensive course equally balances lecture modules with practical hands-on lab work.


Embedded 1

Training Duration

2 days

Who should attend?

Programmers and software engineers looking to reinforce their C skills for the embedded environment and hardware engineers interested in software engineering basics


  • Basic familiarity with embedded systems
  • Basic background in programming

Software Tools

  • Vivado® Design or System Edition 2014.1


  • Architecture: N/A*
  • Demo board: Zynq®7000 All Programmable SoC ZC702 or Zed board or Kintex®-7 FPGA KC705 board*

* This course does not focus on any particular architecture. Check with your local Authorized Training Provider for the specifics of the in-class lab board or other customizations.

Skills Gained

After completing this comprehensive training, you will know how to:

  • Recognize C language symbology
  • Design an effective C language program for the embedded environment
  • Identify the nuances between functions and macros
  • Effectively utilize numeric techniques
  • Debug software using the GNU debugging tool in the SDK software environment

Course Outline

Day 1

  • The C Language
  • SDK Environment
  • Lab 1: SDK Environment
  • C Preprocessor
  • Variables
  • Control Structures
  • Lab 2: Writing a Simple Program
  • Functions and Libraries

Day 2

  • Program Design
  • Common Errors
  • Debugging Strategies
  • Dynamic Memory
  • Lab 3: Debugging Dynamic Memory
  • The Stack
  • Lab 4: Debugging Stack Issues
  • Numeric Techniques
  • The Xilinx Embedded Environment
  • Lab 5: Driving Xilinx Hardware

Lab Descriptions

  • Lab 1: SDK Environment – Walks you through the process of configuring the hardware through SDK, building a simple application, and verifying that it works.
  • Lab 2: Writing a Simple Program – Examine a piece of existing code, then complete the program using the skills developed in the previous lecture modules.
  • Lab 3: Debugging Dynamic Memory – Guides you through the phases of debugging a program with memory leaks.
  • Lab 4: Debugging Stack Issues – Debug stack issues, another common problem.
  • Lab 5: Driving Xilinx Hardware – Combine the abstraction of programming with actual hardware to drive the LEDs on the demo board.


Op aanvraag

Cereslaan 10b
5384 VT

€ 1.500,00
18 Xilinx Training Credits

Training brochure


Registratie op aanvraag, neem contact op met ons.