Freescale S12

From ErikaWiki

Revision as of 16:50, 2 December 2009 by Erikadds (Talk | contribs)
Jump to: navigation, search

Contents

Freescale S12 support

ERIKA Enterprise supports HCS12X microcontrollers. The support for RT-Druid is now available on release 1.5.0. The HCS12X support includes:

  1. support for COSMIC compiler.
  2. support for single and multi stack configurations (multi stack will be available soon...).
  3. ISR interrupt supported.
  4. support for Freescale Debugger.
  • Supported compiler
    • COSMIC C cross compiler and ELF module generation for debugging information.
  • Mode of operation
    • Mono-stack: The Monostack configuration of the ERIKA Kernel models the fact that all tasks and ISRs in the system share the same stack.
    • Multistack HAL: Every thread can have its private stack, or it can share it with other threads.
  • Handling of paging registers
The compiler supports bank switching for code and data, using the internal window mechanism provided by the HCS12X processor.
Bank switching mechanism delivers 32-bit performance with all the advantages and efficiencies of a 16-bit MCU.
Bank switching is supported via:
- @far type qualifier to describe a function relocated in a different bank. Calling such a function implies a special calling
sequence, and a special return sequence. Such a function has to be defined @far and referenced as @far in all the files using
it. The compiler also provides a specific option +modf to automatically consider all the functions to be @far. The @far type
modifier is also used to declared variables allocated in a data bank.
- Linker options are required to ensure proper physical and logical addresses computations. The linker is also able to
automatically fill banks without any need to take care of the page boundaries.

MCUs

  • The MCUs supported are currently the following:
    • Freescale MC9S12XS128; (an efficient 16-bit microcontroller with four modes of operation: normal single chip mode, normal single chip mde with active background debug mode, stop low power mode, wait low power mode).

Boards

  • The MCUs supported are currently the following:
    • SofTec Microsystems DEMO9S12XSFAME demo board.

Examples

  • The examples and tests are available at: [1].

Download and install pre-release

Procedure for installation:

  • Step 1:
Open Eclipse;
From the menu Help select Install New Software...;
Add with the button Add... the reference site mentioned above (fill the Loaction field with this: http://retis.sssup.it/~durin/rtd_150/site_s12/);
Tick all the plug-ins and install them clicking on the button Next;
Restart Eclipse;
  • Step 2:
From the menu File select New and then RT-Druid Oil and C/C++ Project;
From the Project menu select one of the available S12 demo tests;
Then click on the project name with the right mouse button and build to obtain the elf object module for debugging;

How to build a project in RT-DRUID

  1. In Eclipse/RT-Druid environment, open the New Project window.
    Druid.PNG
  2. Select a template from the s12xs menu.
    Task.PNG
  3. Name your project.
    Name.PNG
    • the folder appears in the Project Explorer;
    Oil.PNG
  4. Build the project (click with the right button of the mouse on the project name);
    Build.PNG
    • the compilation starts;
    Progress.PNG
    • the executable file appear in the Debug folder of the project.
    Elf.PNG
  5. Open the RT-debugger.
    Hiwave.PNG
  6. From the menu File choose Open Configuration...;
    Conf.PNG
    • and load the debugger environment configuration (.ini);
    Fullchip.PNG
  7. From the menu HCS12XS click on Load....
    Load.PNG
    • and load the executable of your application;
    Load exe.PNG
  8. Then starts the simulation and enjoy!!!.
    Start.PNG
Personal tools