English
Language : 

AN664 Datasheet, PDF (1/18 Pages) Silicon Laboratories – PRECISION32™ CMSIS AND HAL USER’S GUIDE
AN664
PRECISION32™ CMSIS AND HAL USER’S GUIDE
1. Introduction
CMSIS is the Cortex Microcontroller Software Interface Standard, and the Hardware Access Layer (HAL) is a
defined part of this standard.
The HAL provides an access layer for the SiM3xxxx device registers. The functions and macros are non-blocking
and simple; they cannot return error codes, so they are designed to never fail. The HAL is designed to replace the
individual bit field accesses of the module with a function name that describes the action the bit is controlling.
Note: HAL functions and macros are not designed to be thread-safe. These routines do not disable interrupts during non-
monotonic register modifications.
The HAL is one layer above the hardware and is the only code that accesses the registers directly. More complex
firmware systems like a Real Time Operating System (RTOS) or code example call the HAL and CMSIS routines.
Figure 1 shows the Precision32™ firmware layer block diagram.
CODE EXAMPLES
APPLICATION
RTOS
CMSIS CoreSupport
from ARM
si32Library
Callback
CMSIS
HAL from Silicon Labs
HARDWARE
Figure 1. Firmware Layer Block Diagram
2. Relevant Documentation
Precision32 Application Notes are listed on the following website: www.silabs.com/32bit-appnotes.
AN668: Precision32™ Software Development Kit (SDK) Code Examples Overview
AN670: Getting Started with the Silicon Labs Precision32™ AppBuilder
AN672: Precision32™ si32Library Overview
AN673: Precision32™ Software Development Kit Overview
AN675: Precision32™ Development Suite Overview
Rev. 0.2 3/12
Copyright © 2012 by Silicon Laboratories
AN664