Available Languages?:

OSA : Error list

#1 : Unknown compiler!

OSA работает только со следующими компиляторами:

  • HI-TECH PICC STD
  • HI-TECH PICC18 STD
  • Microchip C18
  • Microchip C30
  • CCS PICC
  • microC PRO for PIC

Остальные компиляторы пока не поддерживаются.


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

Эта ошибка возникает, когда вы пытаетесь разместить переменные OSA с помощью устаревших констант. Новые константы имеют префикс имени "OS_BANK_" (См. конфигурация.)


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

Одна или несколько констант OS_BANK_xxx имеют недопустимое значение (в файле OSAcfg.h). Разрешены только значения 0, 1, 2 и 3.


#13 : OST_TIMER is not supported! Use OS_TIMER_SIZE instead

Вы пытаетесь переопределить тип таймера через устаревшую константу OST_TIMER. В старых версиях этой константе приравнивалось имя типа напрямую (например, char или unsigned long). Теперь тип таймеров задается указанием размерности переменной. Например:

#define OS_TIMER_SIZE    4      // таймеры будет типа unsigned long

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

Начиная с версии 90200 типы OST_MSG и OST_SMSG не могут быть переопределены напрямую. Теперь они переопределяются через константы OS_MSG_TYPE и OS_SMSG_TYPE. Причина описана ниже:

Например OST_MSG определена в файле OSAcfg.h так:

#define OST_MSG    void *

Когда определяется несколько переменных:

OST_MSG msg1, msg2, msg3;

компилятор делает подстановку:

void * msg1, msg2, msg3;

Как видно, толь msg1 будет указателем, а msg2 and msg3 будет иметь просто тип void.

Ситуацию можно было бы исправить так:

typedef void * OST_MSG;

Но тогда будет невозможно переопределять эти типы вручную. По этой причине переопределение типа OST_MSG сделано так:

#define OS_MSG_TYPE     int *

а сам OST_MSG определяется без вмешательства пользователя в файле OSA.h:

typedef OS_MSG_TYPE   OST_MSG;

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

Введено неправильно значение размера переменных типа счетного семафора. Допустимые значения:

  • 1 - для unsigned char
  • 2 - для unsigned int
  • 4 - для unsigned long

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

Введено неправильно значение размера переменных таймера. Допустимые значения:

  • 1 - для unsigned char
  • 2 - для unsigned int
  • 4 - для unsigned long

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

Qtimers are not supported with 12-bit controllers. Actualy, there is no needness to use them on 12-bit PICs, since benefit is noticed only with large number of timers.


#25: STM8 with ROM > 64K are not supported yet

Контроллеры STM8 с ROM > 64K пока что не поддерживаются


 
osa/ref/appendix/errorlist.txt · Последние изменения: 22.01.2011 15:03 От osa_chief
 
Creative Commons License Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki