Pull to refresh
0
0
Илья Проняшин @pozitrone23

Инженер-программист

Send message

Реализация протокола MIL-STD-1553 на STM32

Reading time3 min
Views32K
Однажды, появилась необходимость использования в нашем устройстве мультиплексного канала обмена информацией (МКИО), он же ГОСТ Р 52070-2003, он же MIL-STD-1553В. Первоначальный результат поисков несколько удивил: типовые решения выдаваемые поисковой системой, как правило, основывались на использовании ПЛИС. Поскольку решать проблему нужно было быстро, появилась мысль сделать конвертер протокола из MIL-STD-1553 в MODBUS RTU. При этом постараться использовать достаточно недорогие технические решения и микроконтроллер из семейства STM32.



На фото из Википедии: F16, на котором впервые был использована шина MIL-STD-1553В. Наши устройства не летают :), поэтому каких либо ограничений по применению элементной базы нет. Просто у Заказчика приборная сеть построена на основе этой шины. Первая часть статьи описывает прием и передачу по шине МКИО, вторая часть будет про конвертер в MODBUS.
И вот что из этого получилось.
Total votes 23: ↑23 and ↓0+23
Comments24

Как мы среду Arduino на 8051 натягивали, или ОС на один процесс

Reading time14 min
Views12K


Летом 2016 мы выпустили в широкую продажу нашу новую плату для разработки Z-Wave устройств — Z-Uno. Это абсолютно новаторское устройство, аналогов которому в мире Z-Wave пока нет. Учитывая большое количество программерских фишек, я решил поделиться некоторыми решениями, используемыми в Z-Uno.

Если кратко, то мы сделали упрощенную кооперативную ОС на 1 процесс на микроконтроллере семейства 8051 с API подобным Arduino.
Читать дальше →
Total votes 19: ↑19 and ↓0+19
Comments24

Искусство написания простых и коротких функций

Reading time10 min
Views26K

Софт постоянно усложняется. Стабильность и простота расширения приложения напрямую зависят от качества кода.


К сожалению, почти каждый разработчик, и я в том числе, в своей работе сталкивается с кодом плохого качества. И это — болото. У такого кода есть токсичные признаки:


  • Функции слишком длинные, и на них слишком много задач
  • Часто у функций есть побочные эффекты, которые сложно определить, а иногда даже сложно отлаживать
  • Непонятные имена у функций и переменных
  • Хрупкий код: небольшая модификация неожиданно ломает другие компоненты приложения
  • Плохое покрытие кода тестами или вообще его отсутствие

Всем знакомы высказывания «я не понимаю, как работает этот код», «бредовый код», «этот код сложно изменить» и другие.


Однажды мой коллега уволился, потому что пытался справиться с REST API на Ruby, который было трудно поддерживать. Он получил этот проект от предыдущей команды разработчиков.


Исправление текущих ошибок создавало новые, добавление новых функций рождало новую серию ошибок, и так далее (хрупкий код). Клиент не хотел перестраивать приложение, делать ему удобную структуру, и разработчик принял правильное решение — уволиться.



Такие ситуации случаются часто, и это печально. Но что делать?

Читать дальше →
Total votes 41: ↑37 and ↓4+33
Comments51

Как попасть на работу в международную ИТ-компанию?

Reading time7 min
Views45K
image
Считается, что спрос на ИТ-специалистов на рынке труда есть всегда, «айтишник никогда не пропадет». Но почему же тогда у таких людей возникают проблемы с поиском работы? Попросили рассказать про это наших HR-менеджеров. Под катом воз и маленькая тележка полезных советов от HR-менеджера Parallels Екатерины Фирсовой.

Спрос на ИТ-специалистов, программистов, системных администраторов, есть всегда. И нет сомнений — в разумных пределах, конечно — в том, что кандидат, претендующий на подобные позиции, по определению имеет высокую квалификацию, соответствующее профильное образование и богатый опыт применения своих знаний. Как ни удивительно, именно таким людям оказывается сложно найти работу. В чем же причина такой несправедливости? Да в том, что профессионалы часто неправильно позиционируют себя на рынке, неправильно составляют резюме, недостаточно проактивно общаются с компаниями. В результате многим прекрасным специалистам сложно найти работу, а компании, заинтересованные, казалось бы, именно в них, никак не могут их отыскать. Давайте разберемся с этим поподробнее.
Читать дальше →
Total votes 37: ↑28 and ↓9+19
Comments64

Железячники vs. Программисты

Reading time9 min
Views45K
imageВсем привет!

Я — один из основателей открытого проекта Embox, и по совместительству являюсь генеральным директором компании ООО “Ембокс”. Как не трудно догадаться, её основная цель — это оказание коммерческих услуг на базе нашего проекта.

Собственно, блог — это своего рода мой подарок проекту. Поводом для этого послужило появление пятого пользователя, готового оплачивать наши услуги. В итоге мне показалось, что могут существовать и другие компании с проблемами, которые можно решить именно с помощью нашего проекта.

Эта статья первая в нашем блоге, и мне кажется, что будет уместно рассказать не столько о технических решениях и находках, которые мы применяем в нашем проекте, это, безусловно, будет в последующих статьях, а сделать своего рода статью-приветствие. И поскольку Embox — операционная система для встраиваемых решений, речь в статье пойдет прежде всего о сфере embedded systems. По сути дела, в статье я хочу поделиться своим представлением о возможном направлении развития встраиваемого ПО, конечно, подкреплять всё это я буду реальными ситуациями, с которыми мы сталкивались в процессе работы над проектом. Поэтому те, кто интересуется встраиваемыми системами и кому не лень прочитать пару страниц жалоб на трудное детство рассуждений, прошу под кат.
Читать дальше →
Total votes 54: ↑47 and ↓7+40
Comments65

Information

Rating
Does not participate
Location
Саранск, Мордовия, Россия
Date of birth
Registered
Activity