C Language Programming with SDK

 

register

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.

Level
Embedded 1

Duration
2 days

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

Why this training pays huge dividends
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

Software Tools

  • Xilinx ISE® Design Suite: Embedded Edition 13.1

Hardware Tools

  • Architecture: N/A*
  • Demo board: Spartan®-6 FPGA SP605 or Virtex®-6 FPGA ML605 board or Avnet LX9 microboard*

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.

 

.