All streams
Search
Write a publication
Pull to refresh
47
0
Вадим Минкин @vadjuse

User

Send message

Использование Assembler'a. Фишка 1

Reading time3 min
Views9.7K

Решил по мере сил делиться примерами использования ассемблера в своих проектах. Я не буду рассуждать о том, надо это или не надо конкретно в вашем проекте. Просто показываю, а выводы делаете вы сами.

Читать далее

Почему аналоговая электроника такая сложная. Часть 2. R2R ЦАП

Level of difficultyEasy
Reading time5 min
Views14K

В этой статье мы рассмотрим одну широко известную аналоговую схему, которая полностью составлена из делителей напряжения. Да еще и с фиксированными номиналами напряжений и сопротивлений. Разве это может быть сложным? Еще как!

Схема эта называется R2R ЦАП и все знают, каков ее принцип работы, но при этом мало кто может ее рассчитать. Вот этим мы и займемся, рассчитаем R2R ЦАП.

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

Читать далее

Гид по блокирующему, неблокирующему и квази-блокирующему вводу-выводу

Level of difficultyEasy
Reading time19 min
Views5.9K

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

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

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

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

Читать далее

Ornament-8. Аналоговый функциональный генератор поведения. Часть 1

Level of difficultyEasy
Reading time10 min
Views3.1K

В 2019 году я ступил на путь разработки электроники. Моим первым устройством является Орнамент-8. Не судите строго.

- Орнамент-8 это устройство, способное реализовывать сложные конечные автоматы.
- Переход конечного автомата из одного состояния в другое определяется патчем, соединением входов и выходов ячеек Орнамента.
- Каждая из 8 ячеек Орнамента представляет собой моновибратор.
- Если моновибратор запустить, он будет удерживать высокое состояние в течение периода времени, задаваемого потенциометром TIME.
- В момент перехода моновибратора (далее ячейка) из высокого состояния в низкое происходит генерация триггера.
- Этот триггер способен запустить любую другую ячейку Орнамента, кроме самой себя. Для этого необходимо соединить тригерный выход с тригерным входом.
- Если триггер приходит на вход уже активной ячейки, он не поглощается, а поступает на тригерный выход PASS>. Этот выход реализует логику: если ячейка активна -> пусть триггер активирует другие ячейки.
- Помимо тригерных входов и выходов каждая ячейка имеет аналоговый выход, сигнал на котором пропорционален времени активации ячейки от 0 до 1 в зависимости от параметра TIME. Если моновибратор сравнить с наполняющимся сосудом, то аналоговый выход (CV>) показывает уровень жидкости в этом сосуде.
- Каждая ячейка имеет вход для управляющего напряжения (>CV). Приложенное к этому входу напряжение управляет коэффициентом, увеличивающим значение параметра TIME установленного потенциоментром. Приложение управляющего напряжения к >CV можно представить как растяжение времени в системе координат ячейки.

Кажется, что Орнамент-8 это какой-то странный артефакт, упавший из космоса. Зачем он нужен? Что с ним делать? Кто и почему придумал такую странную систему правил?

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

Читать далее

Обратная связь, творящая чудеса

Level of difficultyEasy
Reading time8 min
Views12K

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

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

Читать далее

Почему аналоговая электроника такая сложная

Level of difficultyEasy
Reading time5 min
Views46K

Компьютеры и цифровая техника заполонили всё неспроста. Сегодня даже самое простое аналоговое устройство вроде таймера разработчик предпочтёт сделать на микроконтроллере, вместо использования микросхемы 555.

На то есть причины.

Читать далее

Нюанс, из-за которого ваш I2S не работает…

Reading time3 min
Views16K

... и о котором почему‑то нигде не написано.

Некоторое время назад я сел осваивать интерфейс I2S для работы с аудио ЦАПом высокого качества. За спиной у меня уже был большой опыт работы с различными SPI микросхемами, I2C микросхемами, методы работы в блокирующем режиме, неблокирующем режиме через прерывания, неблокирующем режиме через DMA. В общем, мне казалось, что меня уже ничем не удивить. Но за это мы и любим мир электроники и компьютеров — он сможет удивить даже самого искушенного разработчика.

Читать далее

Information

Rating
Does not participate
Registered
Activity

Specialization

Embedded Software Engineer, Software Architect
Lead
STM32
Embedded system
Electronics Development
PCB design
Arm Architecture
Development of printed circuit board
Digital signal processor
Sound processing
Creating sound effects