Difference between revisions of "OCEOS/oceos use"

From wiki
Jump to navigation Jump to search
Line 1: Line 1:
=<span style="color:#0000ff">'''Introduction'''</span>=
=<span style="color:#0000ff">'''Introduction'''</span>=
OCEOS is provided as an object library, documentation and example source code.
OCEOS is provided as an object library, documentation and example source code.<br>
The files provided include:<br>
Setup for the use of OCEOS requires the user to prepare the development environment. At a minimum this requires the installation for compilers, debug tool, editors, …etc.<br>
# User Manual
<p>The OCEOS build and test environment requires the following:</p>
# OCEOS object library
# SPARC Build environment (compiler, linker, libraries, etc.) [https://www.gaisler.com/index.php/downloads/compilers?task=view&id=161 Download here].
##liboceos.a compiled for SPARC with BCC-2-gcc, BCC-2-llvm and BCC-2-llvm in rex mode compilers
# ARM Build environment [https://developer.arm.com/tools-and-software/embedded/arm-compiler Download here] and [https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/gnu-rm Download here]
##liboceos.a compiled for ARM with gcc-arm and armclang compilers
# Debug software tool e.g. OCE’s DMON. [http://ocetechnology.com/?page_id=306 Evaluation download].
# OCEOS header files (oceos.h etc.)
 
# Application example (asw.h, asw.c, oceos_config.h, oceos_config.c)
====<span style="color:#0000ff">Content of Customer Release</span>====
# UART driver example for SPARC only (uart.h, uart.c, oceos_config.h, oceos_config.c)
====<span style="color:#0000ff">Customer Release for ARM</span>====
  Documentation/
  Documentation/
              OCEOS_User_Manual.pdf  // OCEOS User Manual
  Examples/
  Examples/
           AreaDisplayARM/
           AreaDisplay/               // OCEOS project to display sizes of data areas described [[OCEOS/oceos_introduction#OCEOS_Data_Area_Layouts|HERE]]
Examples/arm_startup
          arm_startup/                // Some start up files for Microchip Cortex-M3 and M7 developments boards, used in DEMO projects below
  Examples/asw
          asw/                        // DEMO project of main OCEOS features
Examples/tut1
          SampleProject/              // Skeleton project that can be used to start development  
Examples/tut2
          tut1/                      // This project demonstrates starting tasks with different priorities.
Examples/tut3
          tut2/                      // This project familiarize the developer with the use a mutexes.
Examples/tut4
          tut3/                      // This project demonstrates the use of semaphores for task synchronization.
  Examples/tut5
          tut4/                      // This project introduces the use of timer interrupts to start the task.
  Examples/SampleProjectARM
          tut5/                      // This project introduces the use of data queue with timeouts.
include/
  include/                            // OCEOS header files
OCEOS_GCC_LIB/
  OCEOS_GCC_LIB/
              liboceos.lib          // OCEOS library that can be linked with application
              README.txt            // Notes


====<span style="color:#0000ff">Building the example application</span>====
OCE Technology provides sample make files that can be used by application developer. Those files are located in demo projects of Examples folder. If make is called from one of the demo projects, than user requires only to modify variable TOOLCHAIN_PATH in ''tools_config_arm.mk'' to point to toolchain folder.
User can use make files to build project for one of the supported development board. User requires to modify make files to add own development board.
Make file available parameters for ARM:<br>
* Build target: all
* ARM_BUILD=1
* TOOLCHAIN=armclangv6|gcc|segger|iar
* RELEASE=0|1
* MCPU=cortex-m3|cortex-m7
* BOARD=ATSAM3X8E|ATSAMV71Q21
* FPU=0|1
* SAMV71_CONSOLE=0|1
Example:
make all FPU=1 TOOLCHAIN=gcc RELEASE=1 MCPU=cortex-m7 BOARD=ATSAMV71Q21


 
Make file available parameters for SPARC:<br>
 
* Build target: all
 
* TOOLCHAIN=gcc|clang
====<span style="color:#0000ff">Customer Release for SPARC LEON</span>====
* RELEASE=0|1
 
* MREX=1
<p>The OCEOS build and test environment requires the following:</p>
* BSP=gr716|pm698|gr712rc|gr740|agga4|at697
# SPARC Build environment (compiler, linker, libraries, etc.) [https://www.gaisler.com/index.php/downloads/compilers?task=view&id=161 Download here].
Example:
# ARM Build environment [https://developer.arm.com/tools-and-software/embedded/arm-compiler Download here] and [https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/gnu-rm Download here]
make all TOOLCHAIN=clang BSP=gr716
# Debug software tool e.g. OCE’s DMON. [http://ocetechnology.com/?page_id=306 Evaluation download].
or
make all TOOLCHAIN=clang BSP=gr716 MREX=1


=<span style="color:#0000ff">'''OCEOS Demo Tutorials'''</span>=
=<span style="color:#0000ff">'''OCEOS Demo Tutorials'''</span>=

Revision as of 16:45, 30 March 2022

Introduction

OCEOS is provided as an object library, documentation and example source code.
Setup for the use of OCEOS requires the user to prepare the development environment. At a minimum this requires the installation for compilers, debug tool, editors, …etc.

The OCEOS build and test environment requires the following:

  1. SPARC Build environment (compiler, linker, libraries, etc.) Download here.
  2. ARM Build environment Download here and Download here
  3. Debug software tool e.g. OCE’s DMON. Evaluation download.

Content of Customer Release

Documentation/
             OCEOS_User_Manual.pdf   // OCEOS User Manual
Examples/
         AreaDisplay/                // OCEOS project to display sizes of data areas described HERE
         arm_startup/                // Some start up files for Microchip Cortex-M3 and M7 developments boards, used in DEMO projects below
         asw/                        // DEMO project of main OCEOS features
         SampleProject/              // Skeleton project that can be used to start development  
         tut1/                       // This project demonstrates starting tasks with different priorities.
         tut2/                       // This project familiarize the developer with the use a mutexes.
         tut3/                       // This project demonstrates the use of semaphores for task synchronization.
         tut4/                       // This project introduces the use of timer interrupts to start the task.
         tut5/                       // This project introduces the use of data queue with timeouts.
include/                             // OCEOS header files
OCEOS_GCC_LIB/
              liboceos.lib           // OCEOS library that can be linked with application
              README.txt             // Notes

Building the example application

OCE Technology provides sample make files that can be used by application developer. Those files are located in demo projects of Examples folder. If make is called from one of the demo projects, than user requires only to modify variable TOOLCHAIN_PATH in tools_config_arm.mk to point to toolchain folder. User can use make files to build project for one of the supported development board. User requires to modify make files to add own development board. Make file available parameters for ARM:

  • Build target: all
  • ARM_BUILD=1
  • TOOLCHAIN=armclangv6|gcc|segger|iar
  • RELEASE=0|1
  • MCPU=cortex-m3|cortex-m7
  • BOARD=ATSAM3X8E|ATSAMV71Q21
  • FPU=0|1
  • SAMV71_CONSOLE=0|1
Example:
make all FPU=1 TOOLCHAIN=gcc RELEASE=1 MCPU=cortex-m7 BOARD=ATSAMV71Q21

Make file available parameters for SPARC:

  • Build target: all
  • TOOLCHAIN=gcc|clang
  • RELEASE=0|1
  • MREX=1
  • BSP=gr716|pm698|gr712rc|gr740|agga4|at697
Example:
make all TOOLCHAIN=clang BSP=gr716
or 
make all TOOLCHAIN=clang BSP=gr716 MREX=1

OCEOS Demo Tutorials

Drivers Porting Example

TODO How to port project from other ROTS