Pull to refresh
0
0
Ярослав @YarikYar

Инженер-эмбеддер

Send message

Разработка сложных процессорных систем на примере модуля SMARC. Продолжение

Level of difficultyHard
Reading time7 min
Views4.3K
Приветствую, Хабр!



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

  • выбор стека платы,
  • документация от производителя процессора,
  • трассировка полигонов питания,
  • расчет волнового сопротивления.

Все, что хотел, снова не уместилось в статье, а комкать информацию не хочется, чтобы еще больше не запутать. В материале много картинок, но это позволит проще воспринимать и запоминать информацию.
Читать дальше →
Total votes 54: ↑53 and ↓1+70
Comments24

Подборка игр с низкоуровневым программированием

Level of difficultyEasy
Reading time5 min
Views31K

TL;DR

Игры от Zachtronics:

TIS-100, EXAPUNKS, SHENZHEN I/O

Про создание процессора от логических элементов и до написания кода на ассемблере: браузерная бесплатная nandgame.com, более продвинутая Turing complete.

Если Вам нравится какая-то игра из перечисленных - наверно, и остальные тоже подойдут. В каждую из них я наиграл по 30+ часов, получил кучу удовольствия и научился чему-то новому.

Подробности
Total votes 65: ↑64 and ↓1+77
Comments26

DIY клавиатура из фанеры

Level of difficultyEasy
Reading time8 min
Views14K

Давно хотел клавиатуру под себя, но даже в кастомных механиках мне не хватало кастомности. Смены цвета кнопок или звука переключателей было недостаточно. Поэтому я собрал клавиатуру с нуля.

Читать далее
Total votes 60: ↑59 and ↓1+70
Comments34

SimulIDE: открытый симулятор цифровых схем и микроконтроллеров

Reading time3 min
Views24K

В этой заметке я решил рассказать о SimulIDE. Это относительно новое программное средство с открытым исходном кодом, предназначенное для моделирования 8-битных микроконтроллеров семейств AVR и PIC, а также прочих электронных схем. По интерфейсу SimulIDE напоминает Proteus. SimulIDE кроссплатформенный и работает под Linux, Windows и Mac. Далее будут рассмотрены основные возможности этого симулятора и рассказано о моих личных впечатлениях от работы с данной программой.

Читать далее
Total votes 57: ↑57 and ↓0+57
Comments36

Учим Ладу Весту петь пионерским голосом

Level of difficultyMedium
Reading time11 min
Views9.2K

В 2020 году я решил перенести электронный темброблок из Pioneer DEH-P4500R в кнопочную мультимедийную систему Лады Весты. Цель - заставить второе звучать как первое - достигнута за один месяц. Не обошлось без пайки микросхем и реверс-инжиниринга.

Слушать далее
Total votes 61: ↑61 and ↓0+61
Comments15

STM32. Подготавливаем среду разработки в Linux

Level of difficultyEasy
Reading time21 min
Views23K
В недавнем времени получилось так, что у меня появилась пара интересных проектов, где одна из составных частей — микроконтроллер STM32. И каждый раз при смене ноутбука или ОС на домашнем компе приходится настраивать окружение для разработки как в первый раз. Плюсом, последние проекты, которые я делал для STM32 — выполнял в Windows, в демо-версии Keil uVision. Но поскольку я давно переехал в Linux — возникла необходимость основательно разобраться и изложить процесс настройки окружения для будущих применений.

Всем, кому интересно — добро пожаловать под кат.

Читать дальше →
Total votes 53: ↑52 and ↓1+61
Comments35

Сборка прошивки из исходников для Orange PI i96(Orange PI 2g-iot)

Level of difficultyEasy
Reading time18 min
Views9K

Здраствуйте меня завут Дмитрий. Как-то я купил OpangePI i96, но к сожалению производитель давно забыл об этой плате, прошивки для неё построены на ядре 3.10.62(актуальная версия на момент написаня статьи 6.5.1). Поэтому я решил собрать собственную прошивку на актуальной версии ядра. Сборка будет проходить полностью из исходников.

Читать далее
Total votes 32: ↑32 and ↓0+32
Comments17

Безопасное программирование на Си. Часть 1

Level of difficultyEasy
Reading time9 min
Views13K

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

Читать далее
Total votes 18: ↑12 and ↓6+14
Comments26

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

Reading time33 min
Views17K


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


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

Читать дальше →
Total votes 17: ↑16 and ↓1+21
Comments8

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

Reading time25 min
Views16K

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

Читать далее
Total votes 59: ↑59 and ↓0+59
Comments8

Как написать своего бота, если устал от голосовых

Reading time7 min
Views18K

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

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

Читать далее
Total votes 13: ↑13 and ↓0+13
Comments34

Ещё раз про умный дом

Reading time11 min
Views11K

Представляю программно-аппаратный проект: локальную сеть умный дом с акцентом на режим охраны. В качестве управляющего устройства используется сотовый телефон с ОС Android версией не ниже 5.0. Через кабель USB телефон подключен к устройству USB/RS485. Для питания всей системы используется блок бесперебойного питания . Узлы управления сбором информации от датчиков и управления исполнительными устройствами реализованы на микросхемах ESP 32. Обмен информацией и питание внешних устройств производится через сетевой кабель. Управляющее устройство (телефон) периодически опрашивает узлы сети и если есть информация от датчиков, в зависимости от настроек, передает сообщения либо в виде SMS, либо в TELEGRAM. А если получена SMS – команда она передается для исполнения на ВУ. Также возможна автономная работа по заложенным сценариям.

Читать далее
Total votes 13: ↑12 and ↓1+12
Comments14

Учимся создавать пакеты Python

Reading time8 min
Views44K
imageПочему важно уметь создавать пакеты Python?
• Пакеты легко устанавливаются (pip install demo).
• Пакеты упрощают разработку (Команда pip install -e устанавливает ваш пакет и следит за тем, чтобы он сам обновлялся в ходе всего процесса разработки).
• Пакеты легко запускать и тестировать (from demo.main import say_hello, а затем тестируем функцию).
• Пакеты легко версионировать, при этом вы не рискуете нарушить работу кода, зависящего от этого пакета (pip install demo==1.0.3).
Читать дальше →
Total votes 20: ↑18 and ↓2+24
Comments14

Модульное Тестирование в Embedded (или код без модульных тестов — Филькина грамота)

Level of difficultyEasy
Reading time7 min
Views7.3K

Часто в РФ приходится слышать мнение, что в Embedded разработке якобы в принципе не может быть никакого модульного тестирования. Инженеры за 40 в (7 случаях из 10) даже никогда не слышали термина unit testing. В России бытует даже расхожее мнение

Не нужны никакие тесты. Если программист хороший, то и код он пишет без ошибок.

Попробуем разобраться какие есть плюсы и минусы в модульном тестировании и понять надо это или нет.

Читать далее
Total votes 14: ↑7 and ↓70
Comments62

Raspbery Pi Pico для управления адресуемыми светодиодами

Reading time9 min
Views9.1K


Если вам нужно сделать гирлянду, где переливается десяток-сотня светодиодов, то эта статья будет вам мало полезна. А вот если у вас несколько десятков тысяч светодиодов и вы еще собираетесь показывать кино с их помощью — тогда вам эта информация определенно сгодится. Тем более, что других источников вы, скорее всего, просто не найдете.
Читать дальше →
Total votes 20: ↑19 and ↓1+25
Comments17

Китайский айфон на чистом Android — совсем бесполезен в 2022?

Reading time5 min
Views21K

Когда-то давно, техника Apple имела культовый статус в России и была признаком престижа и достатка его владельца. Когда доллар был по 30, за первые партии iPhone 4, 4s и 5 могли заламывать ценник в десятки тысяч рублей, однако даже на вторичке купить iPhone было не каждому по карману. Айфонами владели несколько типов людей: люди с достатком, люди, которые брали его в кредит, и особо ухищрённые люди, которые покупали себе подделки. О таковой сегодня и пойдет речь - подделки на iPhone 5s на чистом Android, которую можно использовать и в 2022. Как и для чего? Подробнее в статье :)

Читать далее
Total votes 35: ↑30 and ↓5+31
Comments37

Портирование DOS игр. Tutorial

Level of difficultyMedium
Reading time12 min
Views8.7K

Мотивация к написанию статьи

Уважаемые коллеги, доброго времени суток!

Этой статьей я хочу показать приёмы портирования программ между аппаратно-программными платформами, и привлечь внимание к книге «Секреты программирования игр» Андрэ Ламота, 1995, которую вспомнят добрым словом многие разработчики компьютерных игр, и другим не менее полезным книгам этого автора.

Нам интересны приёмы портации, но мы так же проведём ревью, проверим насколько долговечен код 25-тилетней давности, и насколько сложно его портировать на любые современные платформы.

Я обосную и некоторые случаи примененного «ненормального программирования», а изложенный план, как и полученный микро-движок, вы можете использовать при создании своих портов.

Читать далее
Total votes 40: ↑40 and ↓0+40
Comments9

Создание собственных драйверов под Linux

Reading time24 min
Views206K


Многие мои друзья и знакомые крутят пальцем у виска или задаются вопросом: не жмёт ли мне череп, когда узнают, что я пишу драйвера под Linux. Слово “драйвер” окутано каким-то почти мистическим смыслом, и постичь Дао его написания способны лишь избранные гуру.
К счастью это не так. Не знаю, как обстоят дела с написанием драйверов под другие операционные системы, в т.ч. и наиболее популярные, но под linux, вне зависимости от аппаратной архитектуры драйвера пишутся очень просто. Для написания драйвера необходимы базовые знания языка си, представление о работе ОС линукс (базовые), понимание того, что мы хотим получить, желание чтения документации и исходных кодов, ну и усидчивость. Всё.
Вы хотите посмотреть как написать драйвер для своего устройства? Тогда ныряйте под кат!
Читать дальше →
Total votes 323: ↑318 and ↓5+313
Comments107

Выбираем: новое или альтернативное яблоко

Reading time6 min
Views11K

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

Вот и на этот раз в сети уже пылится дюжина «сливов» новых устройств от Apple. Причем, можно предположить, что значительная их часть вполне правдива. 

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

Читать далее
Total votes 38: ↑31 and ↓7+29
Comments18
1
23 ...

Information

Rating
Does not participate
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Date of birth
Registered
Activity