embOS Technical Information

1. Kernel Size(ROM) 1100 ~ 1600Byte
2. Kernel RAM Usage 18 ~ 25Byte
3. RAM Usage Mailbox 9 ~15Byte
4. RAM Usage Binary and Counting Semaphore 3Byte
5. No. of Tasks : Unlimited (By available RAM Only)
6. No. of Mailboxs : Unlimited (By available RAM Only)
7. No. of semaphores : Unlimited (By available RAM Only)
8. Max. No of Priorities : 255

embOS 지원 Device

Core Chip Manufacturer "C"-compiler Core Chip Manufacturer "C"-compiler
ARM 7/9/11 Various IAR Systems M32C & M16C80 RENESAS IAR Systems
ARM 7/9/11 Various Atollic TrueStudio M32C & M16C80 RENESAS Renesas NC308 ver. 540 and HEW 4
ARM 7/9/11 Various KEIL MDK MSP430 & MSP430x Texas Instruments IAR Systems
ARM 7/9/11 Various ARM ADS 1.2 toolkit MSP430 Texas Instruments Rowley
ARM 7/9/11 Various ARM RVDS 3.0 MSP430 & MSP430x Texas Instruments TI Code Composer
ARM 7/9/11 Various GNU NIOS 2 ALTERA GNU
ARM 7/9/11 Various Rowley PIC18 Microchip Microchip
ARM Cortex M Various Atollic TrueStudio PIC24F/PIC24H,
dsPIC30F/dsPIC33F
Microchip Microchip
ARM Cortex M Various CodeSourcery PIC32 Microchip Microchip
ARM Cortex M Cypress Cypress PSoC5 R32C RENESAS HEW
ARM Cortex M Various IAR Systems R32C RENESAS IAR Systems, compiler for R32C
ARM Cortex M Various KEIL MDK R8C RENESAS HEW
ARM Cortex M Various Rowley RL78 RENESAS IAR
ARM Cortex M Various GNU RX RENESAS HEW
ARM Cortex A/R Various GNU RX RENESAS GNU
ARM Cortex A/R Various CodeSourcery RX RENESAS IAR
AVR ATMEL IAR Systems SH2 RENESAS HEW
AVR32 UC ATMEL AVR32 Studio / GNU SH2A RENESAS IAR
AVR32 UC ATMEL IAR Systems SH2A RENESAS HEW
AVR32 AP ATMEL AVR32 Studio / GNU SH2A RENESAS GNU
C16x Infineon KEIL SO8 Freescale Codewarrior
Coldfire V1 Freescale Metrowerks Codewarrior ST7 ST Microelectronics COSMIC CXST7
Coldfire Freescale Metrowerks Codewarrior STM8 ST Microelectronics IAR
Coldfire V1/V2/V3 Freescale IAR Systems TLCS900 TOSHIBA TOSHIBA CC900
CR16C National Semiconductor IAR V850 / V850E / V850ES NEC IAR Systems
F2MC-16LX,
F2MC-16FX
FUJITSU Fujitsu V850 / V850E / V850ES NEC GREEN HILLS
FR30 / FR50 / FR70 FUJITSU Fujitsu V850 NEC NEC
H8 / H8S RENESAS IAR Systems Z180 ZILOG IAR Systems
H8 / H8S / H8SX RENESAS HEW 64180 HITACHI IAR Systems
M16C/R8C RENESAS IAR Systems, compiler for M16C 78K0/K0S/K0R NEC IAR Systems
M16C6X RENESAS HEW 78K4 NEC IAR Systems
M16C/R8C RENESAS Tasking 8051 PHILIPS, SIEMENS,... IAR Systems

embOS Viewer(Analyzing)

  • 목적
    개발시 OS 디버깅 용도로 현재 Task 수, Task 상태 및 CPU 점유율 등을 확인 할 수 있음.
  • 인터페이스
    OSView 프로그램 과 Target
    Board는 Serial 통신으로 Data전송
  • 사용방법
    Rtosinit.c 파일 수정
    Osview 및 Uart 선언을 Enable

  • embOS Plug-In (EWARM)

  • 목적
    개발시 OS 디버깅 용도로 현재 Task 수, Task 상태 등을 확인 할 수 있음.
    (OS-Viewer기능과 비슷함)
  • 인터페이스
    IAR-Embedded Wrokbench IDE
  • 사용방법
    EWARM 옵션에서
    Debugger>Plugins > emBOS 선택

  • embOS 제공 파일 LIST

    RTOS.H
    - embOS에서 제공되는 모든 API 함수 및 Data Type 정의
    RTOSInit.C
    - embOS Timer Tick 생성 / STM32 초기화 함수(PLL,TIMER,USART)
    RTOSVect.c
    - Interrupt Vector Table 등록(ISR)
    OS_Error.C
    - OS Error Status 에 대한 정보 제공
    os7mtlnn8dp.a
    - 제공되는 OS Kernel에 대한 라이브러리-1
    os7mtlnn8r.a
    - 제공되는 OS Kernel에 대한 라이브러리-2
    JLINKMEM_Process.c
    - J-LINK와 연동하여 디버깅하는 용도로 사용

    embOS - OS Kernel 라이브러리 정보

    os<Arch><CpuMode><ByteOrder><FPU><Interwork><StackAlign><Libmode>.a
    Parameter Meaning Values
    Arch Specifies the CPU variant 6m : Corex M0
    7m : Cortex M3
    CpuMode Specifies the CPU mode. t : Always thumb
    ByteOrder   b : Big endian
    l : Little endian
    FPU Floating point unit Interworking. n : No floating point support
    Interwork n : Always No interwork
    StackAlign Alignment of Stack 8 : Stack alignment used in library
    LibMode Specifies the library mode xr : Extreme release
    r : Release
    s : Stack check
    D : Debug
    SP : Stack check + profiling
    DP : Debug + profiling
    DT : Debug + profiling + trace
    Table 3.1 : Naming conventions for prebuild libaries compatible to IAR EW V5.x

    embOS 포팅 Default 구조


    1. Global Interrupt Disable
    2. OS Kernel 초기화
    3. OS-TIME-TICK 과 PLL 설정(주로 1msec Tick 생성)
    4. Target Board에 알맞게 해당 포트 초기화(BSP)
    5. Global Interrupt Enable
    6. OS Create
    7. OS Kernel Start (Multitasking Start)

    embOS Task 구조

      company product solution support seminar contact us TOP▲