Занимаюсь разработкой промышленных контроллеров, программирую, развожу платы ну и всё в этом духе.

Достижения

Все достижения (1)

Наибольший вклад в теги

Все теги (21)

Лучшие ответы пользователя

Все ответы (18)
  • Как управлять питанием в stm32f4?

    bullitufa
    @bullitufa
    электронщик программист (микроконтроллеры и PC)
    Вы питание блутуза прям с ноги мк снимаете??? Так не стоит делать.
    Проще всего через транзистор. Тогда и уровень питания не будет помехой.
    Ответ написан
  • FreeRTOS: какие правила хорошего тона?

    bullitufa
    @bullitufa
    электронщик программист (микроконтроллеры и PC)
    Прежде всего смотрите на RTOS (любую) как на инструмент решения Вашей задачи. У любого инструмента есть описание: Курниц (вполне себе актуален и сейчас) и офф мануал в pdf (по-моему бесплатно дают).
    Правильно пользоваться ОС это значит понимать:
    1) разницу в примитивах синхронизации (очередь, мьютекс, семафор) когда и где ими пользоваться
    2) как задавать размер стека и приоритет задачам
    3) что делать в прерываниях и что делать в задачах (в том числе как правильно задавать приоритеты прерываний)
    Это первое что пришло на ум.

    Мне лично, после перехода на ОС, пришлось немного перестраивать мышление при написании кода:
    1) ты никогда не знаешь когда выполнится код в одной задаче по сравнению с соседней задачей.
    2) выполнение задачи могут прервать другие задачи и прерывания
    3) если задача куда-то пишет, а другая читает - значит их нужно синхронизировать
    и т.д.
    Удачи!
    Ответ написан
    1 комментарий
  • Кто знает литературу по профессиональному программированию микроконтроллеров?

    bullitufa
    @bullitufa
    электронщик программист (микроконтроллеры и PC)
    По основной теме вопроса: сам мучаюсь, но мучаюсь только по тому что "не умею" программировать. То что нужно продумывать архитектуру с самого нала - это в некоторых случаях крайне рекомендательно. У нас разрабатывается несколько устройств - приходится писать общие библиотеки. Приходится писать достаточно гибкие библиотеки - иначе переписывать приходится!
    Как показала практика очень часто встречаются указатели на функции, стейт машины, операционки (freertos, chibios и т.д.) и т.д. Отличным подходом (имхо) буде написание низкоуровневых (HAL от stm32) и высокоуровневых функций (modbus, canopen и т.д.). Вот эти вещи посмотрите как делают.

    По вопросу реализации коммуникации по рс485: если протокол отличный от модбаса, но похож - посмотрите на библиотеку freemodbus.

    Сейчас тихонько пытаемся внедрить тесты. Есть отличная книжка на английском (переводов не встречал): we.easyelectronics.ru/Nemo/tdd-dlya-embedded.html - там же ссылка на эту книгу.
    Чем хорошо писать "под тесты"? Тем что писать каждую функцию приходится думая, а бы как не напишешь. Короче видим плюсы в этом!
    Удачи!
    Ответ написан
    1 комментарий
  • Как и где хранить общие файлы?

    bullitufa
    @bullitufa
    электронщик программист (микроконтроллеры и PC)
    По моему git submodule самое то оно.
    Создаёте 3 реп. туда общие файлы. И в каждый реп добавляете субмодуль. По мере обновления синхронизируете субмодули!

    Чем хорошо субмодуль? Тем что, вы можете "взять" слепок основного репа и субмодуля. При этом вести активную работу на всех трех. Ну и естественно использовать ветвление: всё что уходит в деплой берёте строго с веток релиз (например). + правильно здесь использовать теги. Особенно у субмодуля. Т.е. забирать с субмодуля не по камиту, а по тегу.
    Удачи!
    Ответ написан
    2 комментария
  • Как начать работать на бирже Upwork?

    bullitufa
    @bullitufa
    электронщик программист (микроконтроллеры и PC)
    Не понятно чего хотите спросить, аж 3 вопроса: как, что нужно и верификация!

    Как? Надо зарегиться, заполнить профиль.
    Что нужно? Знать английский, знать своё дело (стек и т.д.), знать себе цену, уметь планировать время (особенно если есть основная работа), иметь инструменты (например если эмбедер), быть честным (перед собой прежде всего), не помешает "самозанятый"(налог), здоровья (чтоб сидеть на 5ой точке, больше чем обычно)) ). И наверное желание)

    Верификацию проходил после получения первого заказа. На английском языке. Смог пообщаться только на второй раз). Спросили кто зачем и почему) минут 5, не больше. Но я по 100 раз переспрашивал)) Да и интерьювер был похоже индус)

    Не берите проекты ради профиля. Берите нормальный проект, где уверены что сможете. Пообщайтесь с заказчиком. Обговорите всё "на берегу". Я при обсуждении, уточнении вопросов, прям так и писал: я должен знать все нюансы работы, чтоб быть увереным что могу сделать! Заказчикам это нравится))

    Удачи!
    Ответ написан
    Комментировать

Лучшие вопросы пользователя

Все вопросы (17)