ОС как библиотека

Иногда внезапно возникает необходимость сделать какую-то работу в коде программы в синхронном режиме — то есть, не конечным автоматом, а просто дожидаясь результата каких-то действий. Например, скачать http-страничку, или, того хуже, https-страничку.

Но и тормозить основной цикл тоже как-то не очень хорошо. На этот случай есть известное решение — ОС.

Но если требуется допилить уже существующий проект с минимальным вмешательством в остальной код?
Вот мне стало интересно сделать мини-ОС, которая подключается к проекту как библиотека. То есть, делаем вызов какой-нибудь функции os_Init() и получаем возможность создавать потоки, не вмешиваясь в работу основного цикла. Он продолжает работать, как будто никакой ОС и нет, просто иногда управление передаётся дополнительным потокам.



Читать дальше

Stm32F0 и 1-wire

Сегодня решил попробовать работу связки STM32F030 и DS18B20 как описал steel_ne здесь. Не получилось определить наличие датчика на OWI по сбросу так, как мне хотелось. Код steel_ne полностью рабочий, за исключением возврата значения функцией OW_Reset при закороченной линии данных. Проблемное место нашел и исправил.


Читать дальше
  • +1
  • 31 октября 2015, 19:59
  • SeregaB
  • 1

8-канальная светомузыка на STM32F030F4

Т.к. тема довольно популярна, выкладываю проект 8-канального контроллера.


Читать дальше

Генератор ШИМ/импульсов на STM32F050

Иногда полезная приблуда — управляемый по RS232 генератор на 6 каналов ШИМа + 1 импульсный.


Читать дальше

Частотомер на STM32F050F4

За счет использования непрерывного счета и накопления разрешение не зависит от входной частоты и делителей.


Читать дальше

STM32F0DISCOVERY Free Kit от ST (USA/Canada)

Натолкнулся сегодня на такой вот рекламный баннер на сайте ST (STM32F0DISCOVERY с STM32F051R8T6 на борту):



Читать дальше