scmRTOS for STM8, IAR port

Нашёл время на продолжение разработки scmRTOS.

Порт STM8/IAR добавлен в репозиторий в ветку scmRTOS pre-v4.00. Оттуда можно вытащить архив примеров scmRTOS для порта STM8/IAR. Каталоги scmRTOS/Common, scmRTOS/Extensions и scmRTOS/STM8 в архиве примеров пусты, необходимо загрузить архивы ядра scmRTOS pre-v4.00, расширений ядра и порта STM8/IAR, распаковать их в соответствующие каталоги.

»»» Подробнее про порт scmRTOS для микроконтроллеров STM8

scmRTOS for STM8

Выкладываю первую черновую версию порта scmRTOS для микроконтроллеров STM8 и компилятора IAR.
Порт основано на scmRTOS ветки pre-v400.

Ограничения этой версии порта:

  • Не поддерживается LARGE модель данных.
  • Не реализовано переключение контекста программно инициированным прерыванием.
  • Не реализовано переключение прерываний на отдльный стек.

В комплекте идут примеры 1-EventFlag и 4-Debug.
Примеры собирались компилятором IAR версии 1.30, проверялись на плате STM8S-DISCOVERY (STM8S105C6).

Файлы iostm*.h от IAR конфликтуют с файлом stm8s.h от STMicroelectronics, примеры сделаны под IAR-овские include-файлы.
Порт scmRTOS (содержимое каталога scmRTOS/STM8) не зависит от этих файлов, всё необхимое ему передаётся в виде макросов в файле scmRTOS_TARGET_CFG.h.
Позже, по-видимому, в отдельном #include-файле будет дописано недостающее для применения stm8s.h и примеры переписаны под стандартную библиотеку от STMicro.

Пример 1-EventFlag основан на примере для AVR/GCC порта, можно пользоваться описанием этого примера использования scmRTOS.
При оптимизации максимального уровня на скорость пример 4-Debug работает неправильно. В чём причина — пока не разбирался.


Дополнение от 8.11.2011: порт STM8/IAR добавлен в репозиторий scmRTOS.

Attached Files:

[flagcounter image]