Как настроить жучок c помощью осциллографа.
18-08-2015, 15:13
На просторах интернета описано множество способов как найти и настроить жучок. Да, да жучок сначала надо найти, вернее не сам жучок, а частоту на которой он работает, а уж потом настраивать. Также важно сразу разобраться на, что данный жук будет приниматься, если это первое устройство такого рода собранного своими руками, желательно чтобы его частота входила в диапазон от 87.5 до 108MHz, тогда...
Управление шаговым двигателем с помощью микроконтроллера.
Всё началось с того, что в одном из устройств надо было поворачивать вал электродвигателя на определённое количество оборотов, большая точность не требовалась плюс-минус четверть оборота, поэтому было принято решение реализовать это с помощью электродвигателя постоянного тока. В качестве управляющего элемента был выбран микроконтроллер — Atmega16, но так как выходное напряжение выводов Atmega16...
Прерывания STM32.
3-08-2015, 14:52
У STM32 прерываниями управляет контроллер прерываний NVIC — Nested vectored interrupt controller. Давайте рассмотрим его возможности: обслуживание до 81 прерывания, в зависимости от модели МК программируемый уровень приоритета от 0 до 15 для каждого прерывания, самым приоритетным считается прерывание с уровнем 0 динамическое изменение приоритета разделение прерываний на группы, а внутри группы...
Время  выполнения кода STM32.
28-07-2015, 16:32
Всё началось с того что, появилась необходимость хотя бы примерно оценить время выполнения участка кода. Оказалось у микроконтроллеров с ядром Cortex-M3 для этого предназначен специальный модуль, который называется Data Watchpoint and Trace Unit, сокращённо DWT. Чтобы настроить DWT на измерение длительности выполнения кода нам необходимо установить 2 бита. Бит TRCENA в регистре DEMCR, установка...
STM32 ШИМ.
21-07-2015, 17:11
Генерация ШИМ у STM32 осуществляется с помощью таймеров, про них в документации написано много, но ШИМ оказалось настроить достаточно просто. Генерировать ШИМ будем с помощью 4-го канала первого таймера. Первым делом надо найти какой вывод отвечает за 4-й канал первого таймера, для этого открываем Technical DataSheet на свой МК, у меня STM32F103VET6, и находим альтернативной функцией какого...
Внешние прерывания STM32.
15-07-2015, 14:41
Плюсом внешних прерываний является то, что они фиксируют переход от одного логического уровня к другому, а не сам уровень. Предположим нам надо зафиксировать когда изменится напряжение на какой-то ножке и экстренно выполнить определённый набор инструкций. Самый простой алгоритм выглядит следующим образом, через определённые интервалы времени опрашиваем вывод и анализируем изменилось ли его...
STM32 сохранение данных АЦП с помощью DMA.
8-07-2015, 17:27
DMA(Direct Memory Access – прямой доступ к памяти) – позволяет передавать данные без участия ядра. То есть, если использовать DMA, то по завершении преобразования АЦП, нам не надо забирать результат преобразования и сохранять его в памяти, за нас это сделает DMA. Для этого при конфигурации DMA достаточно указать адрес откуда брать данные и куда сохранять, а также ещё несколько простых настроек,...
Как запустить кварц на третьей гармонике.
6-07-2015, 18:24
На днях наткнулся на интересный способ запуска кварца на третьей гармонике. Заключается он в следующем, к кварцевому генератору собранному по схеме ёмкостной трёхточки в эмиттер подключается фильтр-пробка, настроенный на первую гармонику кварца, который блокирует запуск генератора на первой гармонике и кварц, а вместе с ним и генератор, запускаются на третьей гармонике....
Прошивка AVR через бутлоадер.
Так как USB программатор у меня появился не сразу, а шить через com порт было медленно и неудобно, пришлось искать выход из сложившейся ситуации и заключался он в использовании бутлоадера. В одной из прошлых статей описывалось как прошить STM32 с помощью бутлоадера, но у STM32 бутлоадер зашивают в чип ещё при его изготовлении на заводе, нам же предстоит зашить его самим. Вот как это выглядит в...
Как работает стабилитрон.
24-06-2015, 11:55
Стабилитрон, он же диод Зенера, назван в честь первооткрывателя туннельного пробоя Кларенса Зенера и на схемах обозначается следующим образом. Но в отличие от выпрямительного диода ток через него может течь в обоих направлениях. Для лучшего понимания его работы, можно представить его как два диода, включённых встречно-параллельно, но с разным падением напряжения. Для любого стабилитрона, падение...
Цифровой программируемый генератор, подключение ltc6903 к STM32.
18-06-2015, 23:12
В одной из конструкций понадобилось изменять тактовую частоту в большом диапазоне и из названия становится понятно, что выбор пал на LTC6903. LTC6903 и LTC6904 — цифровые программируемые генераторы с диапазоном частот от 1KHz до 68MHz, отличаются они лишь тем, что LTC6903 управляется по SPI, а LTC6904 по I2C. Они достаточно просты в подключении и требуют лишь блокировочные конденсаторы по питанию....
Весы на микроконтроллере, подключение HX711 к Atmega16.
Уже давно стоят без дела вот таки весы.В один из дней они просто перестали включаться, попытка ремонта успехом не увенчалась, поэтому было принято решение восстановить их и заодно разобраться с принципом работы. Для этого на али была заказана плата с HX711. Эта микросхема содержит в себе усилитель, с программируемым коэффициентом усиления и сигма-дельта АЦП, она была специально разработана для...
Рисуем свой символ на LCD дисплее 1602А.
5-06-2015, 16:40
В прошлых статьях мы рассмотрели как инициализировать и выводить символы на LCD дисплей, пользуясь таблицей знакогенератора(CGROM). Также в прошлых статьях упоминалось про такой вид памяти, как CGRAM, в которой можно хранить собственные символы. Надо сказать, что размер её ограничен и может вмещать до 8 символов. Один из символов, который может пригодиться и которого нет в стандартной таблице...
Вывод символов и строк на LCD дисплей 1602A, с управляющим контроллером KS0066U.
3-06-2015, 14:19
В прошлой статье мы рассмотрели как произвести инициализацию LCD дисплея по 4-битной шине, но вместо проверки флага занятости, мы использовали задержку. Давайте с его реализации и начнём....
Инициализация LCD дисплея 1602A, с управляющим контроллером  ks0066U.
27-05-2015, 11:40
Некоторое время лежал без дела вот такой дисплей. И вот появилось желание прикрутить его к одному из проектов на, можно, конечно, постараться найти библиотеку с готовыми функциями, но в таком случае картина, о том как работает дисплей, будет неполная, а нас это не устраивает. Один раз, разобравшись с принципом работы LCD дисплея, не составит большого труда написать свою библиотеку под нужный...
Как прошить и чем отлаживать микроконтроллеры AVR.
Первый вопрос, который встаёт перед начинающим эмбеддером — это как прошить микроконтроллер? Для того чтобы прошить микроконтроллер необходимы три составляющие: чип, который хотим прошить программатор специальная программа управляющая программатором, установленная на компьютере Любой микроконтроллер имеет режим программирования, в этом режиме некоторые выводы микроконтроллера изменяют свои...
Синхронные и асинхронные входы триггера.
15-05-2015, 18:20
Обычно входы триггера: D, S и R, или J и К называют синхронными, если они влияют на состояния выходов Q и не-Q, только при определённом значении тактового сигнала. Ниже изображён асинхронный RS триггер, у которого на выводе Q появляется единица если S = 1 и R = 0 и ноль если S = 0 и R = 1. (S – сокр. Set, R – сокр. Reset)...
Как подключить энкодер к STM32.
12-05-2015, 13:29
В одной из прошлых статей про энкодер описывался принцип его работы и способы обработки данных приходящих с него. Описанные способы можно реализовать на простых микроконтроллерах типа Atmega, у более продвинутых, типа STM32, для работы с энкодером предназначен специальный интерфейс, который сам обрабатывает данные, приходящие с энкодера и на основе этих данных увеличивает или уменьшает значение...
Как прошить miniSTM32F103V.
5-05-2015, 19:38
Самый простой и доступный способ прошивки STM32 – с помощью бутлоудера, в этой статье мы рассмотрим как это сделать на примере платы miniSTM32F103V. Для начала давайте разберёмся, что такое бутлоадер или как его ещё называют загрузчик. Загрузчик — это просто программа, которая хранится в определённой секции памяти и может перезаписывать флеш микроконтроллера. Она зашивается при производстве чипа...
STM32 АЦП.
29-04-2015, 14:45
Давайте рассмотрим какими особенностями обладает АЦП в STM32. Разрядность 12 бит Опорное напряжение от 2.4 до 3.6 Вольта Скорость оцифровки до 1MSPS 18 каналов(16 внешних и 2 внутренних – опорное напряжение и температурный датчик) Прерывание по окончании регулярных и инжектированных преобразований Прерывание от оконного компаратора(Analog watchdog) Отправка данных по DMA для...