Skip to content

This repository contains code example projects for the AURIX™ Development Studio.

Notifications You must be signed in to change notification settings

Infineon/AURIX_code_examples

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

35 Commits
 
 
 
 
 
 

Repository files navigation

Code Examples for AURIX™ Development Studio

Hundreds of code examples are available for AURIX™ devices in this repository.
Each code example is made up of two parts: the source code and the corresponding tutorial.

To import a code example into AURIX™ Development Studio, follow the guide at the end on this page.

NOTE: For any question or request, please use the dedicated Infineon AURIX™ forum.

Topics

The topics covered by the code examples stored in this repository are the following, divided per macro category:

Communication Protocols Data Handling Timers Analog/Digital Signals CPU Management Alarms, Interrupts and Resets
ASCLIN module handling for LIN, UART and SPI Flexible CRC Engine control Capture and Compare Unit control Versatile Analog-to-Digital converter control Assembly code execution Device Reset type trigger and detection
Ethernet communication Input-Output Monitor control Clock System Delta-Sigma Analog-to-Digital converter control Code execution from SRAM Interrupt handling
I2C communication BUS register protection General Purpose Timer control GPIO port control Performance registers usage Safety Management Unit control
CAN communication Memory Protection control Generic Timer Module control Power Management System control
SPI communication Data and Program Flash programming System Timer Module control Multicore
DMA control Trap recognition
Memory test Watchdog handling

Source code

The source code of each code example is based on Infineon Low Level Drivers (iLLDs), for which the documentation can be found on the top right of this webpage.

Each code example is provided with a comment section called "metadata" in the Cpu0_Main.c file, which include:

  • Title: the title of the code example
  • Abstract: a short description of the example’s scope
  • Description: a detailed description of the example’s scope
  • Name: the example’s univocal name
  • Version: the version number of the example (V<major changes>.<minor changes>.<bugfixes> e.g. V1.0.2)
  • Board: a list of boards supported by the code
  • Keywords: a list of keywords used to ease the search
  • Documents: a list of links to documents useful for the code example
  • Last Updated: date of the last modification

e.g.:

Name

The name of each code example follows a specific naming scheme:

<Code name>_<ID number>_<Board short name>

e.g. : ADC_Filtering_1_KIT_TC375_LK

where:

  • The code name summarizes in a couple of words the scope and the module used in the example
  • The ID number is an identification number for the example scope (If the same scope would be achieved using different code, then the two code examples would be called _1 and _2 in order to differentiate them)
  • The board short name describes which board the example code has been developed for (using board-specific port pins such as LED, communication, etc.)

Board

The code examples supports the following types of boards:

In particular, the following boards are supported:

AURIX™ TC2xx Boards # Code Examples AURIX™ TC3xx Boards # Code Examples
KIT_AURIX_TC234_TFT ~5 KIT_A2G_TC334_LITE ~60
KIT_AURIX_TC237_TFT ~5 KIT_A2G_TC367_5V_TFT ~5
KIT_AURIX_TC265_TFT ~5 KIT_A2G_TC375_ARD_SB ~5
KIT_AURIX_TC275_ARD_SB ~5 KIT_A2G_TC375_LITE ~60
KIT_AURIX_TC275_LITE ~60 KIT_A2G_TC377_5V_TFT ~5
KIT_AURIX_TC277_TFT ~5 KIT_A2G_TC387_5V_TFT ~5
KIT_AURIX_TC297_TFT ~60 KIT_A2G_TC397_5V_TFT ~60

Tutorial

Each code example is provided with a tutorial, which can be downloaded either directly following the link inside the metadata in the Source Code, or from here, where you can find a collection of all the released tutorials.

Each tutorial contains the following information:

  • Summary: An abstract and a detailed description of the example's scope
  • Introduction: A generic introduction on the used module and it main features
  • Hardware: The used hardware and how to configure it
  • Implementation: A detailed explanation of how to implement the module's configuration using iLLDs and exploits their features
  • Run and Test: The steps to follow to make sure the code is working properly and interact with it

How To Import

To import a code example, use the dedicated import function in AURIX™ Development Studio: File >> Import... >> Infineon >> "AURIX Development Studio Project", select "Infineon Code Examples Repository" and select the code example to be imported.

The same result can be achieved by clicking on "Import AURIX Project" in the Quick Links view of AURIX™ Development Studio: