Обновить
256K+

Электроника для начинающих

Arduino, DYI и как собрать Электроника

119,72
Рейтинг
Сначала показывать
Порог рейтинга
Уровень сложности

Обзор SPI Flash памяти MX25L6433F

Уровень сложностиПростой
Время на прочтение8 мин
Охват и читатели5K

В этом тексте я произвел обзор микросхемы SPI-NOR FLASH памяти MX25L6433F.
Показан код, который позволит запустить на микросхеме файловую систему LittleFS.

Читать далее

Новости

Пуск SPI трансивера на STM32

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели5.3K

В тексте я написал про особенности настройки SPI трансивера в режиме DMA в случае использования микроконтроллеров STM32 и про способы модульного тестирования SPI трансивера.

SPI это цифровой, последовательный, относительно высокоскоростной, полнодуплексный, синхронный физический интерфейс передачи данных в пределах одной электронной платы PCB.

Этот интерфейс служит для обмена данными между микросхемами в пределах одной электронной платы.

Читать далее

Создаем I2C Master Controller на Verilog. Перенос на Zynq 7000 (bare‑metal)

Уровень сложностиСредний
Время на прочтение63 мин
Охват и читатели10K

После успешной отладки на плате с Cyclone IV пришла пора перенести наработки на плату Zynq Mini c XC7Z020. В этой статье я опишу, каким образом можно организовать вывод нужной нам информации из PS‑части Zynq на дисплей который подключен к EMIO на выводах PL. Сделаем обновленный модуль i2c_master_axi который добавляет сверху к уже разработанному ядру поддержку AXI4-Lite Slave, сделаем сборку проекта, подключим их к PS и проверим в bare‑metal сценарии. После того как это будет все работать — переходить к Linux уже будет гораздо проще.

Всем заинтересованным добро пожаловать под кат! 

Читать далее

Поднимаем Linux на плате Zynq RK-7020-F V1.1 c помощью Buildroot и U-Boot SPL

Уровень сложностиСредний
Время на прочтение23 мин
Охват и читатели9.4K

Не так давно у меня на руках появилась плата RK-ZYNQ7020-F REV 1.1.

В данной статье я хочу поделиться своим опытом, связанным с подготовкой buildroot для данной платы. Здесь мы разберем этапы от формирования xsa файла до запуска платы и первых логов, с объяснением что происходит в железе на каждом этапе.
Также в рамках этой статьи я не буду использовать FSBL, мы попробуем обойтись U-Boot SPL.

Итак, приступим к рассмотрению!

Описание отладочной платы

Базовый набор периферии на данной плате, заявленный в документации:

Читать далее

Как проект на лето растянулся на полгода: Делаем свою светодиодную вывеску с управлением по Wi-Fi (ч.1)

Уровень сложностиПростой
Время на прочтение11 мин
Охват и читатели9.8K

Привет! Кто не любит прикольные интерьерные штуки? Я, например, всегда любил вид неоновых вывесок. В какой-то момент мне пришла в голову мысль: а почему бы не сделать свою собственную? Правда, не неоновую, а светодиодную. Да ещё и с кучей эффектов и управлением со смартфона. Так появилась идея для очередного «проекта на лето», реализация которого у меня растянулась на полгода. С виду простая задумка таила в себе кучу технических сложностей и мелочей, которые нельзя было упускать из виду. Добро пожаловать в невероятно интересную историю создания, которую я вам сейчас поведаю…

Погрузиться в историю

Лампочка из гипермаркета и ваш GPU. Что у них общего?

Уровень сложностиПростой
Время на прочтение8 мин
Охват и читатели12K

Представьте синюю светодиодную лампочку из строительного магазина за 100 ₽, и NVIDIA H100 за три миллиона. Внутри у обоих работает один и тот же физический принцип: PN-переход.

Меня это в свое время сильно удивило. Так вот эта статья примерно про то, как лампочка и видеокарта оказались родственниками.

Читать далее

Интерфейс RS-485 и протокол MODBUS RTU под микроскопом или как обследовать оборудование не мешая ему

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели8.7K

Как обследовать шину MODBUS RTU к которой подключено промышленное оборудование не разрывая соединения и немного про диагностику MODBUS RTU

Читать далее

Внутри ALU-чипа 74181: фотографии кристалла и реверс-инжиниринг

Уровень сложностиСредний
Время на прочтение11 мин
Охват и читатели9.6K

По учебникам цифровой логики легко представить, что ALU — это аккуратная схема из понятных вентилей. Но внутри реального TTL-чипа всё интереснее: странные многоэмиттерные транзисторы, компактные XOR-каскады, упреждающий перенос и топология кристалла, где каждый резистор занимает драгоценное место.

В этой статье разбираем 74181 — культовый 4-битный ALU-чип 1970-х — по фотографиям кристалла и смотрим, как инженерные компромиссы превращаются в работающий процессорный блок.

Заглянуть внутрь

Проблемы печей оплавления припоя Pu*** и их превенция

Время на прочтение5 мин
Охват и читатели6.1K

ЛУТовый текстолит, паяльная паста Mechanic, настольная печь Puhui и, опционально, руки из плеч – базовый набор начинающего контрактного монтажника/производителя микросерий. Если быть точным, Puhui Electric Technology CO., LTD. Их модели, такие как T-960, T962, T-937 и разнообразные модификации – друзья радиолюбителей в России и по всему миру, где, благодаря интернет коммерции, с ними знакомы уже очень давно.

Читать далее

Стало жарко: изучаем элемент Пельтье и строим холодильник

Уровень сложностиПростой
Время на прочтение11 мин
Охват и читатели9.8K

Дело идёт к жаркому лету, и становятся актуальными различные способы охлаждения продуктов, приборов да и воздуха в комнате. Конечно, можно использовать обычные компрессионные холодильники и кондиционеры, работающие от сети. Но есть ли другие способы получить холод?

Оставим в стороне охлаждение бутылок в проточной воде, обёртывание их мокрым полотенцем с выставлением на ветер, а также заблуждение насчет охлаждения молока при помощи лягушек. Что если нужно охладить банку напитка прямо на рабочем столе? Или, наоборот, микрокомпьютер, мощный транзистор выходного каскада усилителя? Обычные компрессионные холодильники использовать можно, но из-за размеров на рабочий стол их не поставить.

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

Читать далее

Самодельный elgato-like макропад. Часть 2, софтовая

Уровень сложностиПростой
Время на прочтение7 мин
Охват и читатели8.5K

Так как в первой статье я сосредоточился на схемотехнике, в этой хотелось бы пройтись по разработке ПО и прошивки.

Напомню, я решил, что вместо прошивки мне подойдёт и нейрослоп - в конце концов это не серийное устройство, а поделка для себя. И тут, как обычно, в процессе работы пошли фейерверки.

ESP32-S3 имеет два USB выхода - обычный через микросхему CH340, которая конвертирует USB в UART, и второй USB OTG, который подключен к чипу напрямую. То есть чип может управлять тем, какое "устройство" он предоставит хостовой ОС! Более того, он может предоставлять несколько устройств одновременно. Это было как раз то, что надо: одним устройством будет USB HID клавиатура для "сырого" ввода в консоль, например, а вторым - USB RAW устройство, которое будет слушать софт бекенда - запускать приложения по ярлыкам, регулировать громкость, отправлять в устройство настройки. И всё это минуя тормознутый UART. Сказка. Но, как оказалось, для взрослых.

Казалось бы, полный интернет примеров того, как это настраивать. Даже в самом фреймворке esp-idf есть пример композитного устройства, значит, информация уж точно легкодоступная, бери да пользуйся. Я попросил ИИ добавить это в прошивку и... Оно не смогло. То есть вообще. Два дня и токенов примерно на 30 баксов - и я взял дело в свои руки, потому что ИИ выдумывал всё более и более изобретательные причины того, почему прошивка не компилируется, но вот выдумать компилирующуся прошивку не мог никак.

Читать далее

Программирование блока питания АКИП-1160/6 (или Drive-by-Wire)

Уровень сложностиПростой
Время на прочтение3 мин
Охват и читатели9.9K

Часто бывает такая ситуация, что вы разрабатываете прошивку для электронной платы у которой есть ADC порты.

Рано или поздно Вам придется как-то убедиться, что ADC в самом деле измеряют то напряжение, что приложено со стороны улицы.

И тут выясняется, что нужен прибор, который способен по команде выставлять на проводе разнообразные постоянные напряжения. Таким прибором, внезапно, является любой нормальный лабораторный блок питания.

Читать далее

Как мы осваивали производство гибко-жёстких печатных плат: от проб и ошибок к рабочей технологии

Время на прочтение5 мин
Охват и читатели6.8K

Производство типовых печатных плат — само по себе сложный высокотехнологичный процесс. Но когда заказчик приходит с нестандартной задачей, нам, как производителям, часто приходится этот процесс изобретать заново. Сложность усугубляется тем, что отрасль печатных плат в России — это узкий рынок производителей, к тому же несколько изолированных от зарубежной производственной базы. Если говорить откровенно: никто толком не знает, как это делать. А если и знает — держит технологию в секрете.

В этой статье мы расскажем, как на нашем заводе «ЭЛЕКТРОконнект» делали первые гибко-жёсткие платы, с какими трудностями столкнулись и как в итоге научились их выпускать на серийном уровне.

Читать далее

Ближайшие события

Самодельный elgato-like макропад. Часть 1, железная

Уровень сложностиСредний
Время на прочтение14 мин
Охват и читатели8.5K

Как я уже писал в своей прошлой статье, дурная голова рукам покоя не даёт. Так что не прошло и месяца после завершения работы над звонком, как руки уже начали чесаться. И занятие им нашлось достаточно быстро...

Я пользуюсь MAD CATZ S.T.R.I.K.E. 7, которая всем чудо как хороша, кроме того, что вышла больше 10 лет назад, её производитель обанкротился в 2014 и её софт на Win 11 уже надо ставить с бубном. Все мы смертны, клавиатуры - тем более, так что я стал задумываться над заменой. Но проблема в том, что я привык к россыпи макроклавиш, которые позволяют одним нажатием, не задействуя мозг, переключать ветки гита, исправлять криво введённые команды или вбивать пароли в окошки по 15 раз за день (о боги хаоса, как я "люблю" параноиков-безопасников). А современные клавы имеют в лучшем случае 4-5 макроклавиш (что вдвое меньше, чем нужно), а некоторые ещё и стоят как приватный остров. И тут в унынии я наткнулся на это...

Читать далее

VSCode как IDE для embedded разработки

Уровень сложностиПростой
Время на прочтение15 мин
Охват и читатели12K

В данной статье рассматривается процесс настройки vscode для разработки встроенного ПО на базе ядер cortex-M и процессе превращения редактора в полноценную IDE. При этом большинство представленных расширений являются универсальными и применимы в широком спектре задач программирования.

В отличии от проприетарных решений, таких как Keil, подход использования редактора vscode + компилятор gcc позволяет гибко настроить каждый пункт от начала разработки до релиза продукта. За время своей работы мною было опробованы разные решения: от классического keil до связки sublime и CodeSourcery. В последние годы я перешел на vscode + msys2: практически все ПО Open Source, не требует лицензий, не ограничено 32 Кб кода и может работать без сети интернет.

Читать далее

Разработка параметризируемого модуля CORDIC-алгоритма на System Verilog

Уровень сложностиСредний
Время на прочтение19 мин
Охват и читатели14K

В далеком 2011 году автором была опубликована статья «Реализация CORDIC‑алгоритма на ПЛИС» [1]. В той статье приводится сначала математическое описание алгоритма, его суть. Показан пример расчета поворота вектора на плоскости сначала «на бумажке» согласно алгоритму, а затем сравнение результатов с расчетом «по калькулятору». Затем, показано создание структурной схемы проекта с rtl‑описанием CORDIC‑алгоритма и приведены листинги каждого модуля. Помимо этого были приведены основы создания проекта в среде ModelSim.

Автор считает, что эта статья оказалась полезной для новичков в области программирования ПЛИС, так как на протяжении долгого периода времени, после публикации статьи приходили письма с вопросами и уточнениями на данную тему. Даже сейчас я часто встречаю на различных форумах на тему ПЛИС ссылки на данную работу. Но! Если математическая часть алгоритма однозначно является полезной, а также основы создания и структурированного ведения проекта для новичка, то использовать данное rtl‑описание в различных проектах, адаптируя модули проекта по свои нужды крайне неудобно и неуклюже. По крайней мере, автор, когда заглядывает в это свое создание в прошлом, морщится и чувствует себя неловко.

Поэтому появилось желание представить тот модуль CORDICа (для генерации гармонического сигнала в сфере радиолокации и связи), который автор использует в данный момент в различных проектах. Весь алгоритм реализован в одном sv‑модуле, а, значит, его намного легче переносить из проекта в проект. Также он более прост в восприятии.

Читать далее

Проектируем с нуля калькулятор на FPGA. Части 4 и 5: Фреймворк и оборудование

Время на прочтение11 мин
Охват и читатели8.9K

← Третья часть

Сколько себя помню, я любил играть в LEGO. Больше всего меня восхищало то, что из одного и того же набора типов блоков можно построить что угодно: главными были не блоки, а воображение или план, показывающий, в каком порядке их соединять. Мой проект работает аналогичным образом: один набор исходников, хороший план и множество различных способов собирать и тестировать его.

В этой части я расскажу об окружениях и их взаимосвязи.

Главный принцип этого фреймворка заключается в том, что единственный набор файлов исходников на Verilog можно без изменений использовать в различных средах сборки:

ModelSim для потактово точной симуляции HDL с волновым выводом

Verilator для быстрой симуляции на C++, с тестовой обвязкой (calctest) и другими инструментами

Десктопное приложение на Qt для интерактивной работы с интегрированным отладчиком на уровне исходников

Qt WebAssembly для запуска калькулятора в браузере с попиксельной точностью

Quartus для синтеза и записи на физическую плату FPGA

Каждое из окружений позволило выявлять свой класс багов. ModelSim отлавливает проблемы таймингов на уровне сигналов. Verilator обладает достаточной скоростью для проверки тысяч тестовых векторов. Симулятор на Qt позволяет удобно пользоваться интерактивной отладкой. WebAssembly доказывает работоспособность кода в совершенно иной среде исполнения, в которой видением приложения можно поделиться со всем миром. Целевая платформа FPGA, реальная плата — это то, что можно потрогать, окончательная реализация идеи.

Читать далее

Дальнейшая судьба SFP-Master

Время на прочтение2 мин
Охват и читатели11K

По следам моей публикации "Программируем SFP-модули на программаторе CH341A". Программа SFP-master была портирована c Qt5 на Qt6. Модуль "общения" с интерфейсом I2C был полностью переписан, стал значительно проще, короче и надежней. Сейчас доступна версия v1.1.1. Русскоязычное описание программы я выложил здесь. Поэтому повторять его здесь смысла нет.

Читать далее

Проектируем с нуля калькулятор на FPGA. Часть 3: Практические численные методы

Время на прочтение11 мин
Охват и читатели11K

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

Когда я начинал этот проект в 2021 году, мне нужен был код на C++, который бы реализовывал алгоритмы на основе примитивов BCD и проверял результаты. Этот код превратился в подпроект Methods. Он заработал, но в нём возникли небольшие баги с шириной мантиссы, из-за которых тестовые результаты оказались ненадёжными в пределах одного-двух последних разрядов. Вместо того, чтобы патчить его, я в 2025 году переписал всё с нуля в рамках подпроекта Proto: более чистой архитектуры, правильного эталона и генератора тестовых векторов оборудования, относительно которого можно валидировать микрокод FPGA.

Читать далее

Карманный брелок Doom на Arduino nano

Уровень сложностиСредний
Время на прочтение4 мин
Охват и читатели18K

Привет! Это карманный брелок-приставка с игрой Doom на Arduino nano! Из данного гайда вы узнаете как собрать карманную приставку с легендарной игрой Doom, с возможностью перепрошивки на что-нибудь другое! Также вы сможете получить опыт в 3D-печати, сборке и пайке электроники Arduino, и, разумеется, новые впечатления от создания таких компактных устройств.

Читать далее
1
23 ...