From 9f95ff5b6ba01db09552b84a0ab79607060a2666 Mon Sep 17 00:00:00 2001 From: Ali Labbene Date: Wed, 11 Dec 2019 08:59:21 +0100 Subject: Official ARM version: v5.4.0 Add CMSIS V5.4.0, please refer to index.html available under \docs folder. Note: content of \CMSIS\Core\Include has been copied under \Include to keep the same structure used in existing projects, and thus avoid projects mass update Note: the following components have been removed from ARM original delivery (as not used in ST packages) - CMSIS_EW2018.pdf - .gitattributes - .gitignore - \Device - \CMSIS - \CoreValidation - \DAP - \Documentation - \DoxyGen - \Driver - \Pack - \RTOS\CMSIS_RTOS_Tutorial.pdf - \RTOS\RTX - \RTOS\Template - \RTOS2\RTX - \Utilities - All ARM/GCC projects files are deleted from \DSP, \RTOS and \RTOS2 Change-Id: Ia026c3f0f0d016627a4fb5a9032852c33d24b4d3 --- docs/Core_A/html/using_pg.html | 165 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 165 insertions(+) create mode 100644 docs/Core_A/html/using_pg.html (limited to 'docs/Core_A/html/using_pg.html') diff --git a/docs/Core_A/html/using_pg.html b/docs/Core_A/html/using_pg.html new file mode 100644 index 0000000..f406fef --- /dev/null +++ b/docs/Core_A/html/using_pg.html @@ -0,0 +1,165 @@ + + + + + +Using CMSIS in Embedded Applications +CMSIS-Core (Cortex-A): Using CMSIS in Embedded Applications + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
CMSIS-Core (Cortex-A) +  Version 1.1.2 +
+
CMSIS-Core support for Cortex-A processor-based devices
+
+
+ +
+
    + +
+
+ + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Using CMSIS in Embedded Applications
+
+
+

To use the CMSIS-Core-A the following files are added to the embedded application:

+ +
Note
The files Startup File startup_<device>.c, System Configuration Files system_<device>.c and system_<device>.h, Memory Configuration Files mem_<device>.h, and Memory Management Unit Files mmu_<device>.c may require application specific adaptations and therefore should be copied into the application project folder prior configuration. The Device Header File <device.h> is included in all source files that need device access and can be stored on a central include folder that is generic for all projects.
+

The Reset_Handler defined in Startup File startup_<device>.c is executed after reset. The default initialization sequence is

+ +

After the system initialization control is transferred to the C/C++ run-time library which performs initialization and calls the main function in the user code. In addition the Startup File startup_<device>.c contains a weak default handler implementation for every exception. It may also contain stack and heap configurations for the user application.

+

The System Configuration Files system_<device>.c and system_<device>.h performs the setup for the processor clock and the initialization of memory caches, memory management unit, generic interrupt interface and floating point unit. The variable SystemCoreClock indicates the CPU clock speed. System and Clock Configuration describes the minimum feature set. In addition the file may contain functions for the memory bus setup and clock re-configuration.

+

The Device Header File <device.h> is the central include file that the application programmer is using in the C/C++ source code. It provides the following features:

+
    +
  • Peripheral Access provides a standardized register layout for all peripherals. Optionally functions for device-specific peripherals may be available.
  • +
  • Generic Interrupt Controller Functions can be accessed with standardized symbols and functions for the General Interrupt Controller (GIC) are provided.
  • +
  • Intrinsic Functions allow to access special instructions, for example for activating sleep mode or the NOP instruction.
  • +
  • Generic and Private Timer functions to configure and start a periodic timer interrupt.
  • +
  • Level 1 and Level 2 Cache controller functions to enable, disable, clean and invalidate caches.
  • +
+
+CMSIS_CORE_A_Files_user.png +
+CMSIS-Core-A User Files
+

The CMSIS-Core-A user files are device specific. In addition, the Startup File startup_<device>.c is also compiler vendor specific. The various compiler vendor tool chains may provide folders that contain the CMSIS files for each supported device.

+
Note
The silicon vendors create these device-specific CMSIS-Core-A files based on CMSIS-Core Device Templates provide by Arm.
+

Thereafter, the functions described under Reference can be used in the application.

+

Examples

+ +
+
+ + + + -- cgit