Ответы пользователя по тегу Микроконтроллеры
  • Как настроить DMA на stm32F103 для WS2812?

    @itxs
    Инженер-электронщик
    https://geektimes.ru/post/255548/ - сразу DMA примененный в проекте с WS2812B
    Ответ написан
    Комментировать
  • STM32F4 discovery как заставить работать прерывания по шине I2C?

    @itxs
    Инженер-электронщик
    1) В прерывании нужно очищать флаг происхождения прерывания, иначе после одного срабатывания при включении больше срабатывать не будет.
    2) NVIC попроще инитьте: NVIC_EnableIRQ(I2C1_EV_IRQn); NVIC_EnableIRQ(I2C1_ER_IRQn);
    3) Имена функций прерываний нужно брать из .s файла в проекте, где они прилинкованы в область векторов прерываний. I2C_start_IT(void) здесь размещается совсем не в области векторов вот и не работает.
    4) Прерывания самой периферии (I2C_ITConfig(I2C1, I2C_IT_EVT, ENABLE); и т.д.) нужно включать в коде инициализации этой периферии.
    Ответ написан
  • STM32: как вызывать Delay на System Tick Timer из обработчика внешнего прерывания?

    @itxs
    Инженер-электронщик
    1. В прерывании EXTI нужно очищать флаг прерывания для возможности повторного срабатывания этого прерывания.
    2. SysTickDelay должен иметь тип uint32_t, иначе вы не используете целую половину возможного диапазона.
    3. Хорошо что у вас SysTickDelay декрементируется, а то были случаи.
    4. Никаких прерываний с дилеями внутри! Делайте асинхронно, с таймерами, спинлоками (это просто переменная-флаг) и т.д.
    Ответ написан
    Комментировать
  • Как лучше сделать многоканальный драйвер PWM (ШИМ) вентиляторов на базе STM32?

    @itxs
    Инженер-электронщик
    1. Обойдемся без мультиплексоров, видел STM32 с 14 таймерами например.
    2. Таймеры могут считать длительность сигнала на ноге. У некоторых таймеров по 4 канала, у некоторых по 2.
    3. При одинаковом временном масштабе сигналов можно использовать по одному таймеру для подсчета сразу 4 (или 2) независимых сигналов.
    4. На STM32F103RGT можно сделать хоть 24 независимых аппаратных ШИМа, не требующих прерываний, только что проверил в справочнике STM32CubeMX. С прерываниями - и того больше. Плюс ногодрыгом - и еще больше.
    5. Возвратный сигнал тахометра не модулируется входным ШИМ сигналом, иначе зачем он нужен вообще.
    6. Частота для ШИМа вентиляторов смотрится в документации на них, либо подбирается экспериментально, что не сложно и не занимает много времени.
    Ответ написан
    1 комментарий
  • Что можно сделать с датчиками движения, системами безопасностями, насколько они устарели?

    @itxs
    Инженер-электронщик
    Деду нужно быстро ломать стереотипы и изучать новые технологии, инструменты и современный рынок микроэлектроники и компонентов. Нужно определиться с поставщиками этих компонентов, наладить хорошую логистику, не заказывать детали с Китая. Нужно соблюдать культуру разработки, изучать новые концепции в проектировании электроники, стараться меньше делать на "рассыпухе" при наличии интегрированных решений, стремиться к общей интеграции компонентов.

    За 5 лет в электронике меняется много, нужно в фоновом режиме быть в курсе новостей, обращать внимание на перспективные решения и разработки. Есть конечно и много ветвей, которые обновляются медленнее.

    Если вы оба готовы на такие решительные переделки, то можно попробовать, мозг он и в Африке мозг.

    Увы, но на одном например "машинном зрении" как единственной освоенной технологии нельзя создать жизнеспособный продаваемый продукт, но можно стать ученым. Для воплощения технологических достижений в ощутимое нужны усилия разных людей.
    Ответ написан
    Комментировать
  • Существуют ли микроконтроллеры с частотой 600 Мгц -- 1 Ггц?

    @itxs
    Инженер-электронщик
    Довольно интересный вопрос, учитывая что изображение тут - наверняка не маленькая картинка 16х16 пикселей. Вообще для реализации алгоритмов кодирования изображения в реальном времени используют ПЛИС + вам нужен какой нибудь передатчик. Если реалтайм не нужен, то лучше взять что-нибудь из А серии, например iMX6 процессоры с Cortex-A9, и Wi-Fi модуль например. Для таких задач, как ваша обычные микроконтроллеры не используют, требуется полноценный процессор, либо DSP-устройство, либо ПЛИС. А микроконтроллеров с частотой 600 МГц-1ГГц не существует, потому что такие частоты прерогатива системных процессоров, где важна скорость обработки. Микроконтроллеры предназначены для других задач, где такие частоты не нужны. Честно говоря, серия STM32F7, вышедшая недавно, и так уже предел в 216 МГц + кэши, да еще и MIPI DSI для видеовывода; еще быстрее делать МК нет смысла.
    Ответ написан
    Комментировать