• Как научиться понимать английский язык на слух? Это вообще возможно?

    @LampTester
    Ну, во-первых, да, научиться понимать в принципе возможно. :) Мне тоже сначала казалось, что это вообще нереально.

    1. Как уже говорилось - нафиг субтитры. Они наоборот отвлекают. Реально действенный метод для старта - песни. Слушаете песню, пытаетесь услышать и понять максимум, потом читаете ее текст, потом слушаете снова (не глядя в текст). Вы удивитесь, но после этого вы поймете в ней процентов 50 или даже больше, если только это не совсем хардкорный рэп. :)

    2. Ролики на YouTube, снятые американцами, австралийцами или шотландцами. Это из носителей языка. Не знаю, как кому, но мне эти акценты наиболее понятны. Вообще, часто речь не-носителей еще более понятна. Сначала вы, может быть, будете понимать около 20% произносимого - не пугайтесь, просто слушайте дальше и пытайтесь догадаться по контексту. Через некоторое время вы станете понимать 30%, 50%, 70%...

    Важно - песни должны нравиться, ролики должны быть интересны прежде всего своим содержанием. Иначе просто не будет мотивации для достаточного погружения.

    Могу порекомендовать YouTube-каналы Big Clive, Chief MAKOi. Они говорят не слишком быстро, но и не так рафинированно, как на записи, прилагаемой к учебнику. Это нормальная английская речь в умеренном разговорном темпе.

    Совет выше насчет англоязычного радио тоже дельный.

    3. На английском говорит куча народа и в разном состоянии. Понимать ВСЕХ нереально, этому не надо огорчаться. Сами англичане периодически не понимают своих соседей по королевству, не говоря уже об остальных.

    Очень важно уметь догадываться по контексту - это придет с практикой. То, что часть сказанного вы не поймете напрямую со слуха - норма. Но в большинстве случаев можно с большой точностью догадаться, что было сказано.

    И главное - не отчаивайтесь в начале пути. Как верно сказали выше - это просто тренировка мозга. Пройдет время, и это умение появится, если вы будете достаточно регулярно тренироваться.
    Ответ написан
    Комментировать
  • Почему может не вызываться прерывание?

    @LampTester
    Используйте NVIC_EnableIRQ() вместо __enable_irq(). В ARM прерывания включаются именно так.

    И да, определите обработчик, если еще не сделали этого. Просто скопируйте (но не убирайте его из исходного места!) нужное имя из startup_xxx.S в main.c, оформив его как функцию.

    void SysTick_Handler(void)
    {
    }
    Ответ написан
    Комментировать
  • Необходимые знания для embedded developer'a?

    @LampTester
    Начать хочу с самых ранних азов.


    Правильно. Если хотите стать профессионалом, начинать надо с базовой теории. "Нет царских путей в геометрию".

    Интересуют так же такие вещи как: стоит ли учится писать сценарии программ для Arduino, сможет ли это помочь абстрагироваться в выбранной сфере разработки и получить те самые азы?


    Нет. Ардуино - это игрушка. Все, чему вы должны научиться, там надежно скрыто, чтобы не травмировать нежные умы казуальных любителей. Вы потратите время, чтобы изучить ее, а потом потратите время, чтобы отучиться от того, чему вас там научат. Тем более, если вы хотите программировать для приложений, критичных по надежности (автомобили).

    Нужно ли учиться паять и разбираться в микросхемах, теристорах, тестерах и прочем железе что бы работать embedded программистом?


    Да, обязательно. Хороший embedded-программист сам должен быть способен разрабатывать железо. Более того, в не слишком сложных проектах (или в очень критичных по оптимальности решения) разработчик железа и программист - один и тот же человек.

    Вообще, embedded-программист - в большей степени электронщик (где-то на 80%, или даже больше), чем программист.

    Нужны ли знания программирования под линукс? Читая вакансии не один раз встречал требования знания работы с линукс.


    Опционально, будет плюсом.

    Что касается процесса обучения, то он примерно идентичен процессу обучения инженера-электронщика.

    1. Полный курс общей физики. Обязательно. Без него никуда, это база всего. После него отпадают 98% элементарных вопросов и появляется стройная картина мира. Математика - без фанатизма, но в достаточном объеме, чтобы понимать курс физики.
    2. Базовый курс конкретно электроники. Здесь можно посмотреть в сторону классики - Горовиц и Хилл первое, что приходит на ум.
    3. Программирование. Без фанатизма. Ночами штудировать численные методы и заучивать классичесские алгоритмы не надо (хотя представлять, как работает, например, метод Рунге-Кутта будет полезно), но выработать навыки алгоритмизации требуется обязательно. На эту тему полно туториалов, гораздо больше, чем по электронике.
    4. Обработка сигнала тоже нужна. В написании программ для контроллеров всякие цифровые фильтры встречаются очень часто (особенно при обработке сигнала с датчиков), надо бы представлять, как работают методы ЦОС.
    5. Специальные вопросы. Архитектура контроллеров, стандартные интерфейсы и т.п. Это уже по необходимости.

    Кроме этого - английский в достаточном объеме, чтобы понимать техническую литературу и общаться на среднем уровне. Простой тест - свободное чтение документации и ресурсов типа hackaday.

    Но самое главное - желание. Только оно может обеспечить достаточный объем практики.
    Ответ написан
    3 комментария
  • Почему датчик температуры LM35 показывает волнистые значения?

    @LampTester
    Это не наводки 50 Гц, случаем? График строить, чтобы проверить, лень. :)
    Ответ написан
    Комментировать
  • Как уменьшить напряжение с 5 до 3.3 вольт?

    @LampTester
    Без стабилизатора никак.

    ESP8266 потребляет до 200 - 250 мА, для схемы со стабилитроном это много. Про делитель в этом случае вообще говорить смешно.
    Ответ написан
    Комментировать
  • Реализовать систему управления затворов full-bridge?

    @LampTester
    Схемы в студию!
    Ответ написан
    Комментировать
  • Какие проекты можно осуществить на STM8(32)?

    @LampTester
    Какие проекты можно осуществить на STM8(32)?


    Любые. В линейке STM32 есть и простые малопотребляющие контроллеры, и совершенные монстры, на которых можно собрать чуть ли не полноценный ПК.
    Ответ написан
    Комментировать
  • Как разработать и произвести партию устройства?

    @LampTester
    Есть ли у вас опыт в подобном для аналогии?


    Есть. :)

    Стоимость разработки как правило начинается где-то от 25 т.р. (без учета компонентов) и дальше в зависимости от сложности.

    Стоимость непосредственно производства зависит от размера партии. Если партия маленькая, то ее целесообразнее делать в России. Сразу скажу, что сделать устройство себестоимостью менее 800 - 1500 р. в мелкой партии практически нереально.
    Ответ написан
  • С чего начать электроннику?

    @LampTester
    Если всерьез, я бы рекомендовал начать с курса общей физики - он снимет 80% глупых вопросов, которые часто задают новички. Дальше курс Теоретических Основ Электротехники (ТОЭ). Дальше Горовиц и Хилл ("Искусство схемотехники"). Дальше по ситуации.
    Ответ написан
    Комментировать
  • В каких ВУЗах можно научиться созданию электронных устройств?

    @LampTester
    Специальность в самом общем случае называется "инженер-разработчик", "инженер-конструктор", "инженер-электронщик", "разработчик РЭА", "эмбеддер"/"инженер-разработчик встроенных систем".

    Однако учтите, что в реальности над условным летающим костюмом работала бы целая команда - электронщики, конструкторы, программисты, специалисты по двигателям, аэродинамике, сервоприводам, технологи, промышленные дизайнеры, etc. А еще монтажники и рабочие. В одиночку такие вещи можно сделать только в кино. :)

    Кроме того, если вы ожидаете, что придете в ВУЗ, а там вот так вот бац - и научат быть классным разработчиком, я вас разочарую. Сам я, когда шел на радиофакультет, тоже думал, что встречу там что-то типа радиофорума, этакой тусовки понимающих и увлеченных людей, однако добро пожаловать в суровую реальность:

    • большинство обучающихся сами не понимают, зачем пришли на специальность - поступили просто потому, что не прошли по конкурсу на что-то более престижное (а на инженерные специальности конкурс традиционно ниже, чем на менеджерские);

    • преподаватели, даже действительно классные, вынуждены ориентироваться на эту массу, и порой пропускать самое интересное - иначе 90% потока надо просто отчислить, а тогда кафедра останется без студентов и ее закроют;

    • учебные программы безнадежно устарели.


    Я уже не буду говорить про то, что часто лаборатории больше напоминают музей - сейчас в крупных ВУЗах с оснащением уже получше.

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

    Остается, конечно, старая гвардия преподавателей, у которых действительно при желании можно многому научиться.

    Так что не ждите, что вас научат - читайте профильную литературу, задавайте вопросы знающим людям, берите паяльник в руки, и вперед. Конечно, для полной уверенности в собственном будущем вам понадобится красивая бумажка-диплом; чтобы получить ее, достаточно поступить в любой ВУЗ, имеющий факультет с названием типа "радиотехника", "проектирование РЭА" или вроде того.
    Ответ написан
    Комментировать
  • Как научиться изящно и грамотно программировать МК?

    @LampTester
    Я всегда говорю, что программирование контроллеров распадается на две задачи: собственно программирование и схемотехника. Потому сначала надо научиться программировать и освоить схемотехнику.

    Научиться программировать можно выполняя классические задачи - на сортировки, на работу со структурами данных и т.п. Про это есть множество хороших и проверенных книжек и сайтов. Только не берите книжки типа "C++ за десять дней" - это совсем не то, что научит писать изящно и грамотно. На описываемом этапе вас будут интересовать основы, которые помогут научиться проводить разбиение сложной задачи на простые действия.

    Естесственно, генераторы кода я даже не обсуждаю - про них надо просто забыть. Никакого C++, только ANSI C - упор на него.

    Знание схемотехники необходимо, чтобы понимать особенности железа и способы правильного взаимодействия с ним. По основам схемотехники тоже есть много проверенных книг. Но, опять же, это не "Ардуино для начинающих". Берите нормальные книги вроде Горовица и Хилла.

    Ну и практика, практика, практика. Ну и, конечно, не забывайте, что понимание терминов "изящно и грамотно" у каждого свое. :)
    Ответ написан
    Комментировать
  • Почему за основу для Arduino выбрали Atmega328P, когда STM32 и дешевле до двух раз, и лучше до двух раз?

    @LampTester
    Простой ответ - потому что Arduino вышла раньше, чем контроллеры от ST обрели популярность. Про это уже говорили выше.

    Если же подойти философски, то надо сказать, что "лучше" - понятие растяжимое. Да, у ST есть более производительные контроллеры за сравнимую цену, но это совсем не означает, что в этом применении они лучше. Как минимум, они сложнее, и, учитывая круг применения Ардуино, эта сложность не оправдает себя, как и расширенные возможности. Платформа Ардуино призвана прежде всего снизить порог вхождения, и AVR отвечают этой задаче лучше.
    Ответ написан
    Комментировать
  • Как сделать радиоантену?

    @LampTester
    Ни в коем случае не используйте в качестве заземления или антенны розетку! В те годы, когда писалась книга Борисова, представления об электробезопасности были несколько другими.

    Вам подойдет любой достаточно длинный провод (метров пять). И ДВ-радиостанций, действительно, почти не осталось. Кроме того, если вы делаете детекторный приемник, вам потребуется заземление. Классический вариант - трубы отопления, но, учитывая, что сейчас они часто бывают пластиковыми, это может не сработать. Разумеется, труба отопления годится только для сигнального заземления детекторного приемника. Использовать трубы коммуникаций для защитного заземления электрооборудования категорически нельзя (иначе ваших соседей может ударить током)!
    Ответ написан
    Комментировать
  • Как симулировать микроконтроллер STM32 и электрическую схему?

    @LampTester
    Ответ на вопрос - никак. Вообще, полная симуляция устройства это тупиковый путь: чем сложнее схема, тем непредсказуемее становится влияние погрешностей симуляции на результат, и тогда его ценность теряется.

    Потому на самом деле устройства как правило разрабатываются следующим образом:

    • сложный функционал разбивается на простые задачи;
    • конкретным задачам сопоставляются типовые решения, например, для источников питания, усилителей, узлов согласования уровней и прочих блоков в составе устройства;
    • при наличии сомнений в работоспособности конкретного узла выполняется его симуляция (только одного узла); при этом выполняется его проверка во всех интересующих режимах, с заданием управляющих воздействий с помощью примитивов симуляции (идеальные источники тока/напряжения и т.п.); также может проводиться макетирование отдельного узла в реальности;
    • прошивка тоже отлаживается отдельно и по частям; для этого создается проект на ПК, в котором отлаживаются модули, не имеющие отношения к железу (например, шифрование, различные кодировщики и т.п.).
    • на финальном этапе все собирается вместе, дописывается HAL и производится отладка в железе.


    Выше описан "максимальный" вариант разработки для сложного устройства. В конкретных случаях некоторые этапы могут пропускаться или переставляться местами. Я, например, чаще всего начинаю разработку прошивки уже при наличии собранной платы, и тестирую ее прямо в железе, причем сначала пишу HAL (если он предполагается). Тестирование на ПК требуется в основном тогда, когда прошивка содержит в себе какие-то сложные алгоритмы, не поддающиеся разработке без основательной отладки и не имеющие прямого отношения к железу (изначально кросс-платформенные).
    Ответ написан
    Комментировать
  • Что вы можете сказать про СТМ микроконтроллеры?

    @LampTester
    STM32 стоит выбирать, если вы уже знаете, что это такое, и/или имеете причины его выбрать. Единственно что могу сказать - эта архитектура не подходит для первоначального обучения работе с контроллерами, отчасти по причине более высокой сложности, отчасти по причине политики STMicroelectronics, про которую уже было сказано выше.

    В остальном это такие же контроллеры, как и все остальные, и их применимость в каждом конкретном случае определяется степенью соответствия их возможностей техзаданию.
    Ответ написан
    Комментировать
  • Что представляет из себя программирование МК STM?

    @LampTester
    Сразу скажу, что STM32 - не лучшая архитектура для начала освоения МК по причине того, что она достаточно продвинута, платой за что является относительно большая сложность многих действий, которые на тех же AVR, скажем, делаются гораздо проще. Другая причина - политика самой STMicroelectronics, не поощряющая глубокое изучение, и нацеленная либо на поверхностный подход "здесь и сейчас", либо на уже достаточно опытных специалистов.

    В целом STM32 идеологически ничем не отличается от всех остальных контроллеров.

    Если вы хотите начать изучать программируемую элементную базу, я бы рекомендовал начинать с AVR (но только не с Ардуино, если вы хотите достичь серьезного понимания).
    Ответ написан
    Комментировать
  • Где почитать по эффективной разработке программ для процессоров с использованием DMA, прерываний?

    @LampTester
    Я не совсем понял вопрос. Что вы хотели бы узнать по этой теме помимо того, что написано в соответствующих Reference Manual'ах и Programming Guide'ах? Кроме всего прочего, блок DMA не входит в ядро Cortex-M0. Обычно это отдельный блок, специфичный для конкретного МК.
    Ответ написан
    Комментировать
  • Где взять спецификации на JTAG и SWD для STM32?

    @LampTester
    Важно понимать, что SWD - это не эксклюзивный протокол STM32, а часть технологии CoreSight от ARM. Соответственно, там и надо смотреть.

    Вот описание самого интерфейса. А как работать с CoreSight - это уже сюда.
    Ответ написан
    Комментировать
  • Звуковой сигнал (слово) на пересекание луча фотореле (ик диоды, фотодиоды)?

    @LampTester
    Проще всего прикрутить туда какую-нибудь микросхему из семейства ChipCorder от Winbond. Вот статья в тему.
    Ответ написан
    Комментировать
  • Существует ли аналог digikey для ОЭБ?

    @LampTester
    Никогда о таком не слышал... По крайней мере, об открытом. Для военных существуют списки компонентов, допущенных к использованию, но это не совсем Digikey, и эти списки закрыты, насколько мне известно.
    Ответ написан
    Комментировать