Ответы пользователя по тегу Микроконтроллеры
  • Стоит ли начинать с Ардуино, если хочешь познать мир микроконтроллеров на хорошем уровне?

    riky
    @riky
    Laravel
    вы правильно поняли ардуино для тех кому надо быстрый результат без погружения вдебри.
    поддержу вариант stm32 - дешевая мощная и современная замена, с очень богатым функционалом.
    ардуино тоже можно использовать и на низком уровне, но он к тому же и морально устарел.
    Ответ написан
  • Запуск параллельных потоков из setup, не из loop?

    riky
    @riky
    Laravel
    когда то давным давно тоже делал библиотеку для псевдопотоков.
    controll.run(); должен быть в loop.
    вы же понимаете что никакой многопоточности в ардуино быть не может. controll.run в каждой итерации loop проверяет все подключенные обработчики/thread и если пришло их время запускает эти функции. никакого волшебства, ровно как и никаких реальных потоков.

    если вы не вызываете controll.run в loop то эти обработчики никогда не будут запущены.

    также учтите что код в обработчиках не выполняется параллельно!!!
    то есть если 2 функции(thread) которые там добавлены выполняются каждая по 1 секунде (например они содержат sleep внутри себя) то они будут выполнены ровно по очереди и вместе будут выполняться 2 секунды, а не 1 секунду как было бы при честной многопоточности.

    либо еще вариант делать их запуск по условию
    initTime = millis() + 5000;
    
    loop() {
       if (millis() < initTime) {
          controll.run(); 
      }
    }


    controll.run будет запускаться только первые 5 сек. если вы не хотите получить лишние накладные расходы при обычной работе после запуска.

    UPD: читайте как работают EventLoop в любых языках программирования и библиотеках.
    Ответ написан
    Комментировать
  • Какие вы знаете книги и ресурсы для изучения принципов проектирования микросхем для микроконтроллеров?

    riky
    @riky
    Laravel
    жмешь на кнопку - пищит

    извиняюсь конечно, думаю и сами понимаете, но тут МК не нужен, пара проводков всего лишь и все последовательно соединить.

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

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

    с ардуиной начинать удобнее, отказаться от нее при необходимости можно легко, хотя смысла нет, стоит пару баксов (если брать mini or nano), и вся обвязка там есть, а попаять и так найдешь что, если затянет.
    Ответ написан
    6 комментариев