Программный антидребезг с обратной связью

Дребезг контактов — явление, с которым знаком каждый электронщик. В этой статье речь пойдет об программном способе борьбы с данным явлением.

Читать далее

Проект SDP LogiC

Данная статья является анонсом моего нового проекта, цель которого заключается в разработке программного комплекса для построения программируемых логических контроллеров (ПЛК). Проект задумывался как альтернатива пакету CODESYS, который является крайне популярным в системах промышленной автоматизации, но с той разницей, что в качестве средства описания логики работы ПЛК будет использоваться почти полноценный язык программирования, который будет иметь СИ-подобный синтаксис и поддерживать все «стандартные» операторы, такие как if, for, switch, и т.д.

Читать далее

ЭМОС: Часть 2. Моделирование

Данная статья является продолжением работы, представленной тут: ЭМОС: Часть 1. Введение. Здесь мы поговорим о нюансах реализации системы ЭМОС по ускорению на примере модели, созданной в среде разработки Proteus 8.8 SP1, выполним исследование системы на предмет «жизнеспособности» и устойчивости работы. В конце статьи будет лежать небольшой бонус 🙂

Читать далее

ЭМОС: Часть 1. Введение

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

Читать далее

Анонс видоса на ютубе

Решил прорекламировать цикл видео на своем канале на ютубе, который посвящен разработке с нуля одного простенького девайса. Там будет Диптрейс, трассировка, и программизм в IAR-е. 1-я часть была без озвучки, только с музоном на фоне, во второй части уже добавил микрофон, и выглядеть это стало намного веселее)) Поэтому кидаю ссылку сразу на 2-ю часть. Видео несет скорее залипательный характер, нежели образовательный, но, возможно, подобный контент найдет своего зрителя)))

Заходите, зацените 🙂

На пути к Ultimate Data Exchange Framework. Часть 1 — Введение

Рано или поздно, начинающий программист микроконтроллеров сталкивается с задачей организовать управление девайсом через управляющую программу на ПК. Самым простым и надежным решением является использование интерфейса RS232: в любом микроконтроллере есть хотя бы один UART, добавьте к нему какой-нибудь MAX232 с щепоткой кондеров и вуаля, обмен готов! Либо, если нет в компе аппаратного RS232 интерфейса, на помощь приходит USB. Ставим какой-нибудь мост USB<->UART (например от FTDI FT232RL) и получаем все то же самое, только по USB. И девайс современней выглядит, и в системе отображается как старый добрый COM-порт, и готовые библиотеки в Visual Studio есть. Осталось только набросать какой-нибудь простенький протокол обмена, и вперед! Однако, с протоколом может быть не все так просто, как кажется на первый взгляд. В этой части мы составим небольшое ТЗ на устройство, рассмотрим его функционал, и рассмотрим один из вариантов протокола обмена данными, который я использую в своей практике.

Читать далее

Видеоурок: создаем проект в IAR ARM

«Что-то контентом сайт не заполняется…» подумал я, и решил попробовать сменить формат. В качестве пробы записал видеоурок по созданию пустого проекта в IAR ARM с небольшими объяснениями происходящего. Думал минут за 10 управлюсь, ан нет, полчаса вышло. Так что приглашаю всех на канал в Ютубе и приятного просмотра))))

Программирование STM32. Часть 17: Драйвер UART

В прошлой части мы познакомились с таким интересным блоком в STM32, как UART. В этой статье мы не будем разбираться с простыми примерами (но это пока), а стразу познакомимся с библиотекой, которая позволяет удобным способом взаимодействовать с любым UART-ом в микроконтроллерах STM32F103xx. Ссылка на проект в конце статьи.

Предыдущая статья здесь, все статьи цикла можно посмотреть тут: https://dimoon.ru/category/obuchalka/stm32f1.

Читать далее

Программирование STM32. Часть 16: USART

Многие из тех, кто имел какое-либо дело с микроконтроллерами, например, с PIC и AVR, знают про такую вещь, как UART. Universal asynchronous receiver transmitter — универсальный асинхронный приемопередатчик встроен как периферийное устройство в любой современный МК, причем в некоторых МК он представлен не в единственном экземпляре. Так же есть некоторая путаница в том, что есть UART, а что есть USART. Universal synchronous asynchronous receiver transmitter (USART) — универсальный синхронный/асинхронный приемопередатчик полностью повторяет функциональность UART, который работает в асинхронном режиме, и включает еще и синхронный режим. В этом случае связь между двумя устройствами USART немного напоминает интерфейс SPI: кроме сигналов RX и TX, добавляется еще один: CK, по которому идет тактовый сигнал от ведущего модуля USART, к ведомому. В данной статье мы рассмотрим самый простой и востребованный случай, а именно обычный асинхронный режим работы USART в микроконтроллере stm32f103c8. Предыдущая статья здесь, все статьи цикла можно посмотреть тут: https://dimoon.ru/category/obuchalka/stm32f1.

Читать далее