Пользователь пока ничего не рассказал о себе

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

Все теги (12)

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

Все ответы (9)
  • Необходимые знания для embedded developer'a?

    @OYTIS
    Embedded Software Developer
    Оффтоп: денег в вебдеве как правило больше, особенно в РФ (но глобально - тоже). Если это не смущает, читайте дальше =)

    С++, Linux, Verilog - это все хорошо, но я бы занимался этим после того, как поработаете какое-то время, и поймете, куда хотите расти.

    Абсолютный must, имхо:
    • Язык C. Это рабочая лошадка firmware, без него никуда, зато остальные языки - совершенно опциональны.
    • Какой-нибудь простой ассемблер (сегодня я бы сказал, армовский). Не обязательно быть мастером, но очень помогает понять, как работает процессор в принципе.
    • Скучная школьная теория: архитектура ЭВМ, устройство операционных систем, конечные автоматы - все это для эмбеддера куда более актуально, чем для веб-девелопера
    • Электроника. Необязательно уметь спроектировать шестислойную плату с учетом EMC, но читать схемы - это важно. А также способность потыкать плату тестером или осциллографом (в большинстве случаев ошибка все равно в софте, но успокаивает).
    • Стандартная периферия и интерфейсы: UART, I2C, SPI, DAC/ADC. Это до какой-то степени можно выучить и на ардуине, но лучше освоиться с настоящим железом
    • Умение читать документацию на железо. Должно прийти при освоении предыдущих пунктов, если не ограничиваться копипастом из туториалов.


    Если освоите до какой-то степени (главное - не увлекаться) этот набор, то можете работать в firmware. А дальше уже можете развиваться куда душа лежит, и где будут карьерные возможности - Linux, C++, электроника, DSP, whatnot.
    Ответ написан
    3 комментария
  • Можно ли спаять WiFi усилитель на операционном усилителе?

    @OYTIS
    Embedded Software Developer
    Если вы посмотрите в даташиты указанных деталей, то увидите, что они перестают работать задолго до нужной вам полосы (2.4 GHz). Посмотрите в сторону чего-то такого.
    Ответ написан
    Комментировать
  • Как правильно работать с callback функциями в многопоточных программах?

    @OYTIS
    Embedded Software Developer
    Обычно колбэку в таких случаях передается this в качестве параметра (большинство библиотек поддерживают передачу void* параметра колбэкам). Переменную val нужно или объявить публичной, или сделать геттеры/сеттеры или объявить my_callback как friend для MyClass. Переменную нужно защитить так же, как для обычной многопоточной программы. На вскидку здесь могут подойти std::atomic или std::mutex.
    Ответ написан
    5 комментариев
  • В какой момент устанавливать ключ и сертификат на устройство iot?

    @OYTIS
    Embedded Software Developer
    Лучший вариант с точки зрения безопасности - генерировать пару ключей и запрос на сертификат (CSR) прямо на девайсе, а не заливать снаружи или хардкодить. Но для этого нужен хороший генератор случайных чисел, а лучше вообще специализированный чип.
    Ответ написан
    Комментировать
  • Как исправить ошибку "QApplication: Нет такого файла или каталога"?

    @OYTIS
    Embedded Software Developer
    На моей машине QApplication лежит в поддиректории QtWidgets, которой у вас в путях нет.
    Ответ написан
    2 комментария