Обновить
-4
Эдуард Зиганшин @e-zigread⁠-⁠only

Разработка электроники

Отправить сообщение

NVRAM для микроконтроллеров

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

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

В этом тексте представлено текстовое описание возможной простой реализации компонента энергонезависимой key-value map(ки)

Читать далее

Коллекционирую лучшие C++ практики

Время на прочтение3 мин
Количество просмотров22K

Коллекционирую лучшие C++ практики


Что-то наши публикации всё больше о плохом, чем о хорошем. Здесь баг, тут код с запахом, это антипаттерн, вот так писать не надо. Помогите увидеть светлую сторону программирования на С++. Оставляйте комментарии.

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

8 бесплатных инструментов искусственного интеллекта, которые пригодятся

Время на прочтение4 мин
Количество просмотров212K

Всем привет! Меня зовут Маруся, я аналитик данных, веду блог в телеграме Аналитика и growth mind-set.

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

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

Читать далее

Декаплинг: качество питания микросхем

Время на прочтение13 мин
Количество просмотров34K

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

Читать далее

USB монитор из Futaba GP1160A02A

Уровень сложностиСложный
Время на прочтение11 мин
Количество просмотров27K

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

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

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

Про один из таких дисплеев, изготовленный по этой технологии и будет рассказано в этой статье, а именно про дисплейный модуль Futaba GP1160A02A.

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

Читать далее

ChatGPT ответил на тест по микробиологии лучше среднестатистического студента

Время на прочтение5 мин
Количество просмотров16K

Технический мир гудит из-за ChatGPT — чат-бота, который считается самым продвинутым из когда-либо созданных. Он может создавать стихи, песни и даже компьютерный код. Он убедительно построил отрывок текста о том, как вынуть бутерброд с арахисовым маслом из видеомагнитофона, в стиле Библии короля Иакова.

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

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

Читать далее

Настраиваем QtCreator для полноценного программирования и отладки микроконтроллеров STM32

Время на прочтение9 мин
Количество просмотров25K

Привет всем.

На данный момент я активно осваиваю разработку ПО для STM32 и хотел бы поделиться моим опытом.

Как известно, для STM32 имеется много сред для разработки, однако часть из них, несмотря на удобность, имеют ограничения по использованию в случае пробной версии. Так, для IAR размер прошивки ограничивается 32 кБ, что весьма немного.

В данной публикации будет рассмотрен способ настройки окружения для полноценной разработки и отладки ПО для микроконтроллеров STM32 в среде QtCreator.

Читать далее

Как самому за один вечер собрать минимальную ОС Linux из исходного кода

Уровень сложностиСредний
Время на прочтение11 мин
Количество просмотров113K
image

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

Ещё больше не даёт покоя мне тот факт, что все ядра операционной системы Linux, которые работают на различных устройствах и серверах, собраны из исходного кода, находящегося в репозитории на сайте kernel.org.

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

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

Пять способов вызвать функцию

Время на прочтение5 мин
Количество просмотров375K
Мне часто приходится сталкиваться с JavaScript-кодом, ошибки в котором вызваны неправильным понимаем того, как работают функции в JavaScript (кстати, значительная часть такого кода была написана мной самим). JavaScript — язык мультипарадигменный, и в нем имеются механизмы функционального программирования. Пора изучить эти возможности. В этой статье я расскажу вам о пяти способах вызова функций в JavaScript.
Читать дальше →

Полиморфные структуры данных и производительность

Время на прочтение5 мин
Количество просмотров7.2K

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

Читать далее

Git for Windows: работа с параметром core.autocrlf

Время на прочтение9 мин
Количество просмотров33K

Одна из настроек программы (системы управления версиями) «Git» называется «core.autocrlf». В этой статье я на практическом примере описываю, что происходит при каждом из трех возможных значений этой настройки. После этого я делаю выводы о том, для чего эта настройка нужна и в каких ситуациях какие ее значения можно использовать.

Всё описанное происходит в операционной системе «Windows 10». Работу с «Git» я показываю на примере работы из командной строки в программе «PowerShell» версии 7. Используемый дистрибутив «Git» называется «Git for Windows».

Читать далее

Travel hacking: Покупаем билеты выгодно

Время на прочтение7 мин
Количество просмотров11K

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

Ноябрь — время планирований путешествия на Новый год, как домой, так и на отдых. Покупать билеты можно по-разному. Можно потратить 250000 рублей на полет в Турцию, а можно за 7000 слетать в Таиланд. Так как новогодние перелеты часто «гибкие», можно перебирать разные варианты и системы бронирований, чтобы найти оптимальные даты и пункт назначения. И именно о последних интересностях, а также советах из моих поисков и других путешественников, кто помогал в создании этой статьи, эта статья.

Поехали!

Почему умножение матриц такое

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

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

Читать далее

SAST для самых маленьких. Обзор open-source инструментов поиска уязвимостей для C/C++

Время на прочтение33 мин
Количество просмотров28K


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


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

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

Пишем try-catch в C не привлекая внимания санитаров

Время на прочтение4 мин
Количество просмотров20K

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

Читать далее

Ternaus: Chrome Extension

Время на прочтение3 мин
Количество просмотров1.5K

Я добавил Chrome extension, которое позволяет по тексту и по картинкам в интернете искать похожие в базе данных на Ternaus.com.

* ссылка на Extension

* ссылка на GitHub

Читать далее

Пишем собственную тему для Visual Studio Code

Время на прочтение7 мин
Количество просмотров17K

Если зайти в магазин дополнений Visual Studio Code, то можно заметить огромное количество совершенно разных тем и оформлений. Во всем этом обилии наверняка найдётся что-то подходящее. Но если ничего не нашлось или просто хочется реализовать свою идею, то всегда можно сделать собственную тему. Готовый проект можно не только установить локально, но и опубликовать в магазине дополнений Visual Studio Code.

В этой статье пройдемся по полному циклу создания собственной темы для VS Code, познакомимся с полезными инструментами, которые упростят работу, и опубликуем готовую тему в Visual Studio Code.

Читать далее

Как переехать из Slack в Mattermost — личный опыт

Время на прочтение7 мин
Количество просмотров15K

Как переехать из Slack в Mattermost — личный опыт

Приветствую, уважаемые читатели Хабра. Меня зовут Иван, я руковожу направлением омниканальных решений в Лиге Цифровой Экономики. На старте одного из проектов около шести лет назад мы с заказчиком решили, что будем вести все проектные коммуникации в Slack. На тот момент для нашей небольшой команды стоил он не так дорого, да еще и был удобнее, чем альтернативные мессенджеры.

Summary: Из-за проблем со Slack нам нужно было искать альтернативу, а терять накопленные наработки не хотелось. Мы нашли способ переехать относительно безболезненно и с сохранением данных — рассказываем, как это сделали.

Читать далее

Создаём сложные интерфейсы и спецэффекты на базе Qt. Часть II

Время на прочтение25 мин
Количество просмотров21K

Привет, Хабр! Меня зовут Михаил Полукаров, я занимаюсь разработкой desktop-версии в команде VK Teams. В первой части я рассказывал о том, как использовать маски и создавать сложные многослойные окна. Под катом этой статьи мы продолжим исследовать возможности Qt Framework, рассмотрим полупрозрачность и управление буксировкой окна, а также реализуем интересный спецэффект. В конце статьи рассмотрим, как можно применить на практике весь, изложенный в этом цикле статей, материал для создания современного демонстрационного приложения.

Читать далее

Как работают this, call, apply и bind в Java Script: разбираемся на примерах

Время на прочтение3 мин
Количество просмотров39K

Привет, Хабр! Эту статью написал Тарас Голомозый, fullstack web-разработчик и преподаватель в школе программирования Эльбрус Буткемп. В своей практике он часто сталкивается с кейсами выпускников, которых на собеседовании просят рассказать о роли ключевого слова this в JavaScript. Простого определения про ссылку на контекст часто оказывается недостаточно, требуется более глубокое погружение в тему. В этой статье он на нескольких примерах разбирает, в каких ситуациях может пригодиться это ключевое слово и как используется call, apply и bind.

Читать далее

Информация

В рейтинге
Не участвует
Откуда
Мытищи, Москва и Московская обл., Россия
Дата рождения
Зарегистрирован
Активность

Специализация

Системный инженер, Инженер электронных устройств
Старший
От 225 000 ₽
C++
Qt
Verilog HDL
VHDL
C
Git
Linux