цифровая электроника
вычислительная техника
встраиваемые системы

 

Источники прерываний и таблица векторов прерываний в микропроцессорах MCS-51

Автор: Mike(admin) от 5-01-2020, 08:35

Одной из наиболее мощных и важных функций в микропроцессорах MCS-51, которые также иногда называют микроконтроллерами благодаря встроенным в них периферийным блокам, является обработка прерываний. Как мы уже выяснили, в большинстве процессов реального времени для правильной обработки определенных условий текущая задача должна быть приостановлена на некоторое время, произведена обработка возникшего события, и затем процессор должен вернуться к основной задаче. Для выполнения программ такого типа необходимы прерывания. Этот подход полностью отличается от метода опроса, в котором процессор должен последовательно проверять каждое устройство и спрашивать, требуется ли обработка или нет, потребляя при этом больше процессорного времени.


Что такое прерывания в микропроцессорных системах

Шагомер своими руками на основе Arduino и акселерометра

Автор: Mike(admin) от 30-12-2019, 15:55

Фитнес-браслеты становятся очень популярными в наши дни, они не только подсчитывают шаги, но и отслеживают количество сожженных калорий, отображают частоту сердечных сокращений, показывают время и многое другое. И эти устройства Интернета вещей (IoT) синхронизируются с облаком, так что вы можете легко получить всю историю вашей физической активности на смартфоне.


Шагомер своими руками на основе Arduino и акселерометра

Шагомеры – это устройства, которые реализуют часть функционала фитнес-гаджетов и используются только для подсчета шагов. Итак, в этом уроке мы собираемся создать простой и дешевый шагомер, используя Arduino и акселерометр. Этот шагомер будет подсчитывать количество шагов и отображать их на ЖК-модуле 16x2.

Пульсоксиметр своими руками на основе датчика пульсоксиметрии MAX30100 и Arduino

Автор: Mike(admin) от 23-12-2019, 03:55

В этом проекте мы будем использовать интерфейсный датчик пульсоксиметра MAX30100 с Arduino, который может измерять содержание кислорода в крови и частоту сердечных сокращений и отображать это на ЖК-дисплее 16×2. Концентрация кислорода в крови, обозначаемая как SpO2, измеряется в процентах, а частота сердечных сокращений / пульса измеряется в BPM (ударах в минуту). MAX30100 – это прекрасное решение для пульсоксиметрии и создания пульсометра.


Пульсоксиметр своими руками на основе датчика пульсоксиметрии MAX30100 и Arduino

Что такое прерывания в микропроцессорных системах

Автор: Mike(admin) от 19-12-2019, 04:35

Прерывание – это состояние, при котором микропроцессор временно работает над другой задачей, а затем позже возвращается к своей предыдущей задаче. Прерывания могут быть внутренними или внешними. Внутренние прерывания, или «программные прерывания», активируются программной инструкцией и действуют аналогично инструкции перехода. Внешнее прерывание или «аппаратное прерывание» вызывается внешним аппаратным модулем. Например, многие процессорные системы используют модуль ввода/вывода, управляемый прерываниями. Процессор останавливает то, что он делает, считывает входной сигнал, а затем возвращается к текущей программе. Эту процедуру можно представить в виде следующего рисунка.


Что такое прерывания в микропроцессорных системах

Измеряем интенсивность УФ-света с помощью Arduino и датчика ML8511

Автор: Mike(admin) от 18-12-2019, 03:55

В этом проекте мы свяжем УФ-датчик ML8511 с Arduino для измерения интенсивности ультрафиолетового света в мВт/см2. Ультрафиолетовое излучение или УФ-излучение происходит в диапазоне электромагнитных волн от 10 до 400 нм. Таким образом, чтобы получить эффективный выходной сигнал в соответствии с ультрафиолетовым излучением, следует использовать специальный датчик, такой как ML8511 от компании Lapis Semiconductor. Ультрафиолетовый датчик ML8511 лучше обнаруживает свет с длиной волны 280–390 нм, эта длина волны классифицируется как часть спектра лучей, излучающих ультрафиолетовое излучение.


Измеряем интенсивность УФ-света с помощью Arduino и датчика ML8511

История микропроцессоров типа MCS-51

Автор: Mike(admin) от 17-12-2019, 08:15

Историю микропроцессоров можно начать с изобретения компанией Intel процессора серии MCS-4. Intel представила однокристальный процессор 4004 в 1971 году. Это был 4-битный микропроцессор с колоссальной на тот момент скоростью обработки 100 тысяч операций в секунду, предназначенный для электронного калькулятора. Позже Intel представила 8-битный 8008 и его старшего брата – знаменитый 8080 (который затем был усовершенствован бывшим сотрудником Intel и стал Zilog Z80, одним из лучших 8-битных микропроцессоров всех времен).


MCS-51

Как перейти от Arduino IDE к Atmel Studio

Автор: Mike(admin) от 15-12-2019, 23:55

Иногда платы Arduino недостаточно. Они часто скрывают большую часть функциональности микроконтроллера, а Arduino IDE не предоставляет готовый доступ к базовым модулям. Это может быть неприятно и непрактично, так как некоторые проекты не могут ограничиваться возможностями, предоставляемыми стандартной функцией, такой как digitalWrite. Здесь-то Atmel Studio вступает в игру. Это IDE, используемая профессионалами, которая позволяет вам писать программы на C, C++ и даже ассемблере почти для всех микроконтроллеров Atmel.


Как перейти от Arduino IDE к Atmel Studio

Atmel Studio также позволяет импортировать скетчи Arduino, но этого следует избегать, чтобы избежать продолжения вредных привычек. Поскольку она основана на Visual Studio, любой, кто использовал эту среду разработки, должен иметь возможность быстро научиться использовать Atmel Studio.

Используем STM32 для управления серводвигателем с помощью ШИМ

Автор: Mike(admin) от 13-12-2019, 08:35

Широтно-импульсная модуляция (ШИМ) используется для управления амплитудой цифровых сигналов с целью управления устройствами и приложениями. В этом уроке мы узнаем, как генерировать переменный сигнал ШИМ с помощью микроконтроллера серии STM32 (STM32F103C). Переменный сигнал ШИМ используется для управления скоростью двигателей или вентиляторов постоянного тока. Этот подход также используется в устройствах диммирования. Солнечные зарядные устройства также работают с переменным сигналом ШИМ. Угол и направление серводвигателей также контролируются с помощью сигнала ШИМ.


Используем STM32 для управления серводвигателем с помощью ШИМ

В данном примере мы разберем принцип работы ШИМ в STM32 с использованием серводвигателя. Мы также узнаем, как соединить сервопривод с платой STM32F103C8. В нашем случае будет использоваться потенциометр для изменения положения вала серводвигателя и ЖК-дисплей для отображения значения угла.

AVR8js – бесплатный симулятор Arduino на основе JavaScript

Автор: Mike(admin) от 11-12-2019, 21:35

Одна из вещей, которые многим нравятся в JavaScritpt, это то, что этот язык продолжает находить применение в разных областях. Одно из таких применений – в Arduino с Espruino (интерпретатор javascript с открытым исходным кодом для микроконтроллеров), и интересным новым инструментом является AVR8js. AVR8js – это бесплатный симулятор Arduino с открытым исходным кодом, основанный на javascript, который может работать в облаке или практически везде, где работает javascript.


AVR8js – бесплатный симулятор Arduino на основе javascript

MiniUno – миниатюрная плата Arduino, похожая на Arduino Uno

Автор: Mike(admin) от 11-12-2019, 18:35

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


MiniUno – миниатюрная плата Arduino, похожая на Arduino Uno

Однако был один «недостаток», который пользователи не могли игнорировать; размер Arduino Uno. Хотя это не было проблемой для профессионалов и полупрофессионалов, которые могли легко перенести свой проект на чип ATmega328p после прототипирования с Uno, это была проблема для начинающих, которые хотели бы использовать всю плату в своем проекте. Несколько проектов пытались изменить размер, но ни один из этих проектов, однако, не смог объединить все возможности Uno в небольшом форм-факторе. Но недавно Mellbell показала новую плату – miniUno, в которой удалось реализовать возможности Arduino Uno при соблюдении миниатюрности.