Пишем драйвер ИК термодатчика MLX90614 для Zephyr RTOS
Итак в продолжение темы о драйверах для Zephyr переходим непосредственно к созданию конкретного драйвера устройства. В качестве подопытного я выбрал ИК термодатчик MLX90614.
Итак в продолжение темы о драйверах для Zephyr переходим непосредственно к созданию конкретного драйвера устройства. В качестве подопытного я выбрал ИК термодатчик MLX90614.
Я тут боле-менее разобрался с написанием драйверов для Zephyr-а. Решил поделиться своим опытом. Информации об этом не так, чтобы очень много, поэтому думаю кому-то это может пригодиться. Если вам эта тема интересна, то значит вы попали по адресу.
В одной из поделок понадобилось питание порядка 12-15 вольт. Как и у многих наверно дома валяется куча блоков питания от старых мобильников. Но все они как правило 5-ти вольтовые. Решил доработать один из таких блоков и поднять ему напряжение до требуемого.
В одном из комментариев меня упрекнули - дескать “всё суета, а ты вот попробуй светодиодом поморгать через bluetooth”. Ну что - упрёк справедлив и вызов принят. Начинаю серию статей по программированию под zephyr. В данной статье будет код для bluetooth устройства с одним светодиодом, которым можно управлять.
Что-то я как-то упоролся в конец RTOS-ами и что называется “Остапа понесло”. Обнаружил, что zephyr тоже поддерживает Bluetooth и решил попробовать как оно в работе. А копнув глубже обнаружил, что штука-то очень даже перспективная и имеет ряд довольно приятных возможностей и особенностей.
Воодушевившись первыми успехами с миганием светодиодами на Mynewt решил двинуть дальше и попробовать запустить BLE примеры с сайта. Простейший из них это конечно BLE iBeacon - его я и решил попробовать словив при этом несколько проблем.
Давно хотел попробовать поиграться с какой-нибудь микроконтроллерной операционной системой. Наконец в контексте моего увлечения BLE модулями, где довольно много ресурсов, решил таки попробовать. В закладках уже давно болталась ссылка на Mynewt ну и наконец её время пришло. Итак пробую запустить на модуле nrf51822 Mynewt.
На днях много времени потратил на доводку и калибровку 3d принтера. В связи с этим пришлось довольно часто обновлять прошивку принтера. Ну и т.к. в принтере используется плата, совместимая с Arduino, то пользовался я для этого Arduino IDE, что очень неудобно, т.к. постоянно приходилось менять порт подключения. В итоге начал искать как зафиксировать порт в Arduino. Но в итоге я нашёл нечто более удобное, а именно PlatformIO и как раз впечатлением об этой штуке я и хочу поделиться.
На днях тут починил наконец грелку в принтере и чорт меня дёрнул до кучи обновить ещё и прошивку. Думаю ну пока уж занялся ремонтом то уж заодно и обновлюсь - дело-то нехитрое. Но не тут-то было - в итоге пришлось изрядно попотеть.