AM261x MCU+ SDK: Introduction

| AM261x MCU+ SDK 26.00.00 |

Introduction

Welcome to MCU+ SDK for AM261X. This SDK contains examples, libraries and tools to develop RTOS and no-RTOS based applications for ARM R5F CPU and related peripherals.

# Getting Started

To get started, see Getting Started

# Block Diagram

Given below is a block diagram of the SW modules in this SDK,

Software Block Diagram

The main software components in the block diagram are described below

Software Components | Documentation Page | Description
--- | --- | ---
OS Kernel
No RTOS | NO RTOS | Contains modules which implement no-RTOS execution environment consisting of timers, ISR, main thread. Allows software on top to run in bare metal mode.
FreeRTOS Kernel | FreeRTOS | FreeRTOS Kernel, provides a execution environment consisting of tasks, semaphores, timers, see https://www.freertos.org/RTOS.html
FreeRTOS POSIX | FreeRTOS | Limited POSIX APIs with FreeRTOS underneath, provides pthreads, mqueue, semaphore, see https://www.freertos.org/FreeRTOS-Plus/FreeRTOS_Plus_POSIX/index.html
Driver Porting Layer (DPL) | Driver Porting Layer (DPL) | APIs used by drivers to abstract the OS environment. Example, Semaphore, HW interrupts, mutex, clock.
Device Drivers and HAL (Hardware Abstraction Layer)
SOC Peripheral Drivers | SOC Peripheral Drivers | Device Drivers library and APIs for peripherals within the SOC. Example, I2C, GPIO, UART.
Board Peripheral Drivers | Board Peripheral Drivers | Device Drivers library and APIs for peripherals on the board or EVM. Example, Flash, EEPROM.
Protocol Stacks and Middleware
SDL | Software Diagnostics Library (SDL) | Software Diagnostics Libaray
Examples and Demos
Examples and Demos | Examples and Demos | Examples and demos showing usage of different SW libraries and APIs
Tools (used on host machine)
Smart Placement | Smart Placement | Smart placement is a process which aims to place critical functions & data in faster memory and is usually used for large memory footprint application which requires XIP.
Memory Configurator | Memory Configurator | Memory Configurator is a tool which provides option to choose critical parameters to generate linker files for a seamless, hassle-free experience.
Code Composer Studio (CCS) | Using SDK with CCS Projects | IDE used to build projects, debug programs, see http://software-dl.ti.com/ccs/esd/documents/users_guide/index_project-management.html
TI CLANG Compiler Toolchain | TI CLANG CGT HOMEPAGE | CLANG based ARM compiler from TI for ARM R5F and M4F
IAR Embedded Workbench | IAR Embedded Workbench | IDE used to build, debug and load projects using IAR toolchain
SysConfig | Using SDK with SysConfig | System configuration tool, used to configure peripherals, pinmux, clocks and generate system initialization code
TI Resource Explorer (TIREX) | Using SDK with TI Resource Explorer | Web browser based tool to explore the SDK, select, import and run the examples
SDK Tools and Utilities | Tools and Utilities | Additional tools and utilities, like flashing tools, booting tools, CCS loading scripts used with the SDK development flow
Clocktree | Clocktree | A tool which enables the configuration of all clock components like PLLs, muxes, dividers, etc involved in the clock architecture of a device.

# Directory Structure

Given below is a overview of the directory structure to help you navigate the SDK and related tools.

Folder/Files | Description
--- | ---
${SDK_INSTALL_PATH}/
README_FIRST_AM261X.html | Open this file in a web browser to reach this user guide
makefile | Top level makefile to build the whole SDK using "make"
imports.mak | Top level makefile to list paths to dependent tools
docs/ | Offline browseable HTML documentation
examples/ | Example applications for AM261X, across multiple boards, CPUs, NO-RTOS, RTOS
source/ | Device drivers, middleware libraries and APIs
tools/ | Tools and utilities like CCS loading scripts, initialization scripts.
${SDK_INSTALL_PATH}/source/
board/ | Board peripheral device drivers
drivers/ | SOC peripheral device drivers
kernel/ | NO RTOS and RTOS kernel and Driver Porting layer (DPL) for these environments
${SDK_INSTALL_PATH}/examples/
drivers/ | SOC and board focused device driver examples. The examples are based on both NO-RTOS and RTOS.
empty/ | Template projects to copy into workspace and customize based on application needs

Given below are the paths where the different tools needed outside the SDK, like CCS, SysConfig are installed by default in Windows. In Linux, the tools are installed by default in ${HOME}/ti.

Folder/Files | Description
--- | ---
C:/ti/ccs2050 | Code Composer Studio
C:/ti/sysconfig_1.27.0 | SysConfig. NOTE, SysConfig is also installed as part of CCS at ${CCS_INSTALL_PATH}/ccs/utils/sysconfig_x.x.x
C:/ti/ti-cgt-armllvm_4.0.4.LTS | TI ARM CLANG compiler tool chain
C:/iar/ewarm-9.70.1 | IAR ARM compiler tool chain

# Licenses

The licensing information of this SDK, as well as any third-party components included which are made available under a number of other open-source licenses are enumerated as part of the manifest. A complete manifest along with export control information is detailed here [LINK], [LINK], [LINK], [LINK] and the SDK Software License Agreement (SLA) is here [LINK]

# Help and Support

For additional help and support, see https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum

# Documentation Credits

This user guide is generated using doxygen, v1.8.20. See https://www.doxygen.nl/index.html