Available Languages?:

OSA : Error list

#1 : Unknown compiler!

OSA can only be built with the following compilers:

  • Microchip C18
  • Microchip C30
  • microC PRO for PIC
  • WinAVR
  • IAR

Other compilers are not yet supported.

#2 : Constants OS_xxx_BANK are not allowed now (use OS_BANK_xxx instead)

This means that you defined old-style constants for allocating OSA variables in file OSAcfg.h. New-style names are prefixed by "OS_BANK_". See configuration.

#3 .. #12 : Incorrect OS_BANK_xxx value (should be 0, 1, 2 or 3)

You define one or more OS_BANK_xxx constants in OSAcfg.h with incorrect value(s). Allowed values are 0, 1, 2 and 3 only.

#13 : OST_TIMER is not supported! Use OS_TIMER_SIZE instead

This means that you defined an old-style constant. OST_TIMER is no longer supported. In older OSA versions this constant could be used to redefine type of timers, where type was given directly (e.g. char, unsigned long). Now you can redefine the timer's type by setting its size. For example:

#define OS_TIMER_SIZE    4      // Timer's type will be unsigned long

#14 .. #15 : Can't redefine name OST_xxx in 'OSAcfg.h'. Use OS_xxx_TYPE instead.

Since OSA version 90200, types of OST_MSG and OST_SMSG can be redefined only via the new constants OS_MSG_TYPE and OS_SMSG_TYPE. The reason is below:

OST_MSG was defined as:

#define OST_MSG    void *

When you define several variables of this type:

OST_MSG msg1, msg2, msg3;

the compiler makes the substitution:

void * msg1, msg2, msg3;

As you see, only msg1 will be pointer to void, while msg2 and msg3 will be just void.

This situation could be corrected by replacing the type definition by:

typedef void * OST_MSG;

But in this case the user can't redefine this type. For this reason, the type of MSG is not redefined in OSAcfg.h directly, but through a constant:

#define OS_MSG_TYPE     int *

and then OST_MSG is defined in osa.h:

typedef OS_MSG_TYPE   OST_MSG;

#16 : Incorrect OS_CSEM_SIZE value (m.b. only 1, 2 or 4)! (see OSAcfg.h)

You entered an incorrect size for variables of counting semaphore type. Allowed values:

  • 1 - for unsigned char
  • 2 - for unsigned int
  • 4 - for unsigned long

#17 .. #21 : Bad OS_xxx size (must be 1, 2 or 4)

You entered an incorrect size for timer variables. Allowed values:

  • 1 - for unsigned char
  • 2 - for unsigned int
  • 4 - for unsigned long

#22: Qtimers are not supported under 12-bit controllers (PIC10 and PIC12)

Qtimers are not supported for 12-bit controllers. In practice, there is no need to use them on 12-bit PICs, since they are only beneficial when using a large number of timers.

en/osa/ref/appendix/errorlist.txt · Last modified: 07.10.2010 13:58 (external edit)
Creative Commons License Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki