Search
Write a publication
Pull to refresh
0
0
Артем @lart

Пользователь

Send message

Опыт работы с советским газоразрядным дисплеем ГИП-10000 (ИМГ-1-02)

Level of difficultyHard
Reading time13 min
Views30K

Советская электронная промышленность выпускала множество разнообразных газоразрядных индикаторных приборов: точечные, линейные, шкальные, знаковые, но отдельным пунктом стоит отметить матричные индикаторы (панели). Очень разные по конструкции, по разрешению, по принципу управления – постоянного тока с внешней адресацией, с самосканированием, переменного тока; знакосинтезирующие, графические; монохромные, двух-, трех-, четырехцветные. Номенклатура насчитывала несколько десятков типов изделий. 

В статье пойдёт речь про ГИП-10000. Это газоразрядная матрица постоянного тока с внешней адресацией разрешением 100х100 точек. Применялась она в таких изделиях как Электроника МС6205 и ИМГ-1. Я расскажу про то, как запустил на ней Bad Apple!! и Doom.

Читать далее

Пишем терминальный сервер для микроконтроллера на С

Reading time13 min
Views14K

Всем привет! В процессе работы над гексаподом AIWM я все чаще задумывался о каком-нибудь удобном интерфейсе для общения с ним. В результате тесной работы с Linux через терминал я подумал, а почему бы не использовать такой же интерфейс и в гексаподе? Я был очень удивлен, что по запросу "STM32 terminal" я не нашел готовых реализаций. Ну раз нет готовых, то напишем свою реализацию терминального сервера, которую можно использовать в микроконтроллерах. Сделаем это без использования динамической памяти и прочих опасных радостей.

Читать далее

1 CPU 1 Гб – а я хочу мониторинг, как у больших дядей

Reading time14 min
Views58K


Я обожаю читать на хабре статьи про то, как устроены системы больших интернет-компаний. Кластеры SQL-серверов, монг и редисов. Тут у нас кластер ELK собирает трейсинг, там – сборка логов, здесь балансер выдает входящим запросам traceID и можно отслеживать, как запрос ходит по всем нашим микросервисам. Класс. Но, допустим, у вас совсем маленький проект и вы можете себе позволить лишь VPS минимальной конфигурации. Реально ли на ней сделать мониторинг не хуже, чем у больших проектов? Я решил – надо попробовать.
Читать дальше →

Как я добился обещанного гигабита, использовав Mikrotik + мозг

Reading time5 min
Views222K

100 мегабит в секунду от предыдущего провайдера начал сильно замедлять рабочий процесс, поэтому я начал искать провайдера с нормальной скоростью. В моем доме, из быстрых был только МГТС, на чем я и остановился. Провели интернет быстро, два дня между заявкой и кабелем в квартире, оставили большую бухту оптики, за что спасибо…
Читать дальше →

Как подключить содержимое любых файлов для использования в коде C / C++

Reading time5 min
Views25K

Задача состояла в подключении файлов: HTML, JS, CSS; без специальной подготовки. Так же неудобно подключать бинарные файлы (например картинки) конвертируя их в HEX. Так как не хотелось конвертировать в HEX или разделять на строки, искал способ подключения файла в адресное пространство программы.

Читать дальше →

Как немного облегчить себе жизнь при проектировании электроники?

Reading time9 min
Views45K

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

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

Итак, поехали!

Фитнес-трекер для скейта

Reading time18 min
Views20K

Привет, Хабр!

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

Компоненты, схема, плата, производство в Китае и результаты, обо всём этом –– под катом.

Читать далее

Bluetooth Low Energy: подробный гайд для начинающих

Reading time16 min
Views90K

Создание кастомного сервиса и тем более клиента Bluetooth Low Energy – прогулка по граблям с завязанными глазами. По крайне мере так было для меня 4 года назад, когда я только начинал работать с BLE-устройствами. Сейчас почти каждый мой проект предусматривает использование этого протокола, поэтому в свое время пришлось в нем долго и мучительно разбираться. 

Разложить все по полкам помогла книга Мохаммада Афане "Intro to Bluetooth Low Energy" и серия постов на Novel Bits. Лично для меня эта книга стала настоящим открытием. Изначально я делал ее перевод на русский для своих коллег, не имеющим опыт работы с BLE. С согласия автора (огромное ему спасибо) решил опубликовать свою работу здесь. Надеюсь, перевод окажется полезным.

Это первая часть перевода (всего их будет 5), которая рассказывает, что такое BLE, ее возможности и отличия от Bluetooth Classic и описывает архитектуру протокола.

Читать далее

Эволюция PHP — от 5.6 до 8.0 (Часть 1)

Reading time7 min
Views16K

После релиза PHP версии 7.3 я решил уделить больше внимания развитию PHP: что собственно развивается и в каком направлении искать понимание потенциала и оптимизации этого невероятно популярного языка программирования.

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

За основу мы возьмем PHP 5.6 и рассмотрим, что было добавлено и изменено. Я также добавил везде где смог ссылки на официальную документацию по каждой из упомянутых фич, поэтому, если вам вдруг понадобится получить более подробную информацию - пожалуйста.

Читать далее

Щелкаем реле правильно: коммутация мощных нагрузок

Reading time3 min
Views252K
Привет, Geektimes!

Управление мощными нагрузками — достаточно популярная тема среди людей, так или иначе касающихся автоматизации дома, причём в общем-то независимо от платформы: будь то Arduino, Rapsberry Pi, Unwired One или иная платформа, включать-выключать ей какой-нибудь обогреватель, котёл или канальный вентилятор рано или поздно приходится.

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

Вместо реле можно поставить симистор или твердотельное реле (по сути, тот же тиристор или полевик со схемой управления логическим сигналом и опторазвязкой в одном корпусе), но у них другой минус — они греются. Соответственно, нужен радиатор, что увеличивает габариты конструкции.



Я же хочу рассказать про простую и довольно очевидную, но при этом редко встречающуюся схему, умеющую вот такое:

  • Гальваническая развязка входа и нагрузки
  • Коммутация индуктивных нагрузок без выбросов тока и напряжения
  • Отсутствие значимого тепловыделения даже на максимальной мощности


Но сначала — чуть-чуть иллюстраций. Во всех случаях использовались реле TTI серий TRJ и TRIL, а в качестве нагрузки — пылесос мощностью 650 Вт.

Читать дальше →

Основы электробезопасности при проектировании электронных устройств

Reading time12 min
Views72K
Привет, Хабр!

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


Тема это большая и сложная, но я постараюсь выделить основные моменты — не в последнюю очередь на основании ошибок, которые я видел во всевозможных реальных устройствах и проектах, в том числе публиковавшихся на Хабре. Я не буду долго и нудно перечислять ГОСТы, но перечислю совсем базовые вещи, которые необходимо понимать и соблюдать, чтобы не убить хотя бы себя (если вы планируете не убивать также и окружающих, то после завершения этой статьи не поленитесь пролистать и релевантные ГОСТы).

Итак, вы собрались делать устройство, которое как минимум одним своим концом включается в розетку.
Читать дальше →

Операционные усилители: 10 схем на (почти) все случаи жизни

Reading time15 min
Views571K
Всем привет!

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


Читать дальше →

Что делать, если поймал HardFault?

Reading time6 min
Views39K
Что делать, если поймал HardFault? Как понять, каким событием он был вызван? Как определить строчку кода, которая привела к этому? Давайте разбираться.

Всем привет! Сложно найти программиста микроконтроллеров, который ни разу не сталкивался с тяжелым отказом. Очень часто он никак не обрабатывается, а просто остаётся висеть в бесконечном цикле обработчика, предусмотренном в startup файле производителя. В то же время программист пытается интуитивно найти причину отказа. На мой взгляд это не самый оптимальный путь решения проблемы.

В данной статье я хочу описать методику анализа тяжелых отказов популярных микроконтроллеров с ядром Cortex M3/M4. Хотя, пожалуй, «методика» — слишком громкое слово. Скорее, я просто разберу на примере то, как я анализирую возникновение тяжелых отказов, и покажу, что можно сделать в подобной ситуации. Я буду использовать программное обеспечение от IAR и отладочную плату STM32F4DISCOVERY, так как эти инструменты есть у многих начинающих программистов. Однако это совершенно не принципиально, данный пример можно адаптировать под любой процессор семейства и любую среду разработки.


Читать дальше →

Все полезные материалы по Wi-Fi в одном месте

Reading time7 min
Views53K

image


Никак не можете найти ту самую ссылку на цветовые профили для Wireshark? Забыли, на каком сайте видели удобную стойку для Site Survey? Какой адаптер подходит для Packet Capture на Windows? Закладка с таблицей модуляций осталась в другом браузере?


Мы тоже от этого устали.


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

Пусть всё будет в одном месте

Юнит-тесты в uVision Keil (и не только)

Reading time33 min
Views11K

КПДВ


Не утихают споры о том, нужны ли юнит-тесты вообще, а если нужны — то как именно их писать. Сначала писать код или сначала писать тесты? Допустимо ли нарушать инкапсуляцию при тестировании или же можно трогать только публичное API? Сколько процентов кода должно быть покрыто тестами?


Тестирование во встраиваемых системах тоже порождает немало споров. Точки зрения разнятся от "покрытие должно быть 100% + нужны испытательные стенды" до "какие еще тесты, я программу написал — значит все работает".


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

Читать дальше →

10 советов схемотехнику

Reading time20 min
Views129K
Недавно один мой знакомый, начавший интересоваться электроникой и схемотехникой, обратился ко мне с просьбой дать ему какие-то практические советы по разработке электронных устройств. Поначалу этот вопрос немного озадачил меня: как-то так получилось, что для себя я никогда не выделял какие-то перечни обязательных правил проектирования, всё это было у меня где-то на уровне подсознания. Но этот вопрос послужил хорошим толчком для того, чтобы сесть и сформулировать хотя бы небольшой список таких рекомендаций. Когда все было готово, я подумал, что, возможно, это будет интересно почитать кому-то еще, таким образом и получилась данная статья.


Читать дальше →

Очередные умные часы своими руками

Reading time18 min
Views93K


Вдохновившись некоторое время назад статьей «Умные часы своими руками за 1500р.», я тоже решил попробовать сделать подобный девайс.


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


Подбор компонентов, разводка платы, пайка в суровых условиях, 3D-печатный корпус и JavaScript на часах — под катом. Welcome!

Коротко о nRF51822: Энергосбережение и немного периферии

Reading time9 min
Views15K
image
Добрый день.

В прошлой статье мы достаточно бегло ознакомились с минимальным набором возможностей BLE стека и создали свой первый проект для соединения двух удаленных устройств. Теперь пришло время обратить внимание на аппаратную часть nRF51822, а именно на 32-битный микроконтроллер на базе архитектуры ARM с ядром Cortex M0 (256kB/128kB flash + 32kB/16kB RAM).

В данной статье хотелось бы уделить время наверное одной из основных особенностей устройств Bluetooth Low Energy — энергосбережению, а также рассмотреть наиболее часто используемую периферию, такую как АЦП, таймеры и интересный, как мне кажется блок PPI. Остальные часто используемые периферийные блоки такие, как SPI, I2C, UART рассмотрим в следующих статьях.
Читать дальше →

Information

Rating
Does not participate
Location
Украина
Registered
Activity