Pull to refresh
2
0

Программист

Подключаем дисплей к любому одноплатнику с SPI: большой мануал о поиске экранчиков для ваших проектов

Level of difficulty Medium
Reading time 14 min
Views 11K
Tutorial
image

Сейчас появилось достаточно много различных дешевых одноплатников с очень достойными характеристиками, которые вполне можно назвать экономичными и портативными. Однако очень часто встает вопрос вывода изображения на дисплей: к сожалению, в подобные устройства обычно ставят урезанные версии чипсетов без видеовыхода на обычные матрицы. Конечно в них практически всегда есть HDMI, но это совершенно не выход для портативного устройства: прожорливый чип скалера будет очень негативно влиять на время работы от АКБ. Да и сами подобные дисплеи очень дорогие: почти 2.000 рублей за матрицу со скалером — это действительно бьет по карману. Сегодня я расскажу Вам о существующих протоколах для дисплеев, подскажу, как применить экранчики от старых навигаторов/мобильников и мы подключим с вами SPI-дисплей к одноплатнику без видеовыхода. Причем мы реализуем как просто библиотеку, которая позволяет выводить произвольную графику из ваших программ, так
и службу, которая будет напрямую копировать данные из фреймбуфера и преобразовывать в формат для нашего дисплея. Интересно? Тогда жду вас в статье!
Читать дальше →
Total votes 69: ↑69 and ↓0 +69
Comments 36

Семантическая сегментация на основе архитектуры U-Net и определение расстояния между объектами

Level of difficulty Medium
Reading time 7 min
Views 5K

Всем привет!

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

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

Модель на базе U-Net архитектуры сегментирует различные объекты (кот, стул, стол, тарелка с котлетами итд) и при сближении двух объектов сегментации (кот - тарелка) модель сигнализирует об этом с помощью телеграмм бота.

Отлично, задача поставлена, теперь реализация!

Читать далее
Total votes 28: ↑28 and ↓0 +28
Comments 10

Припой припою рознь, или Несколько слов о флюсах

Reading time 7 min
Views 32K
Tutorial

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

Спектр задач по пайке при этом у связистов простирается от антенно-фидерного хозяйства (кабели, разъёмы), через аксессуары (зарядки, гарнитуры) и до ремонта собственно радиоаппаратуры (SMD-компоненты).

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

Итак: какие бывают флюсы в припоях, что лучше — ORL0 или ROM1 (я проверил гуглем, обе аббревиатуры на Хабре встречались 0 раз), где искать эту информацию и зачем вообще это надо.

Читать далее
Total votes 141: ↑133 and ↓8 +125
Comments 92

Полная история создания легенды компьютерных игр. Elite (1984). Часть 1

Reading time 22 min
Views 18K
Retrospective

За основу я взял оригинальный текст книги «The Backroom Boys: The Secret Return of the British Boffin» (автор Francis Spufford), о которой узнал случайно. «Backroom Boys» – в Британии индустриальной эпохи так называли гениальных инженеров, которые трудились в «продуваемых насквозь зданиях на задворках фабрик», и изобрели технологии будущего.

Одна из глав посвящена созданию Elite по воспоминаниям авторов – Дэвида Брабена и Йена Белла.

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

С моей стороны получился несколько вольный перевод, заранее прошу прощения за неточности. Буду благодарен за комментарии и правки. Для поклонников «Элиты» я размещу ссылку на сайт Йена Белла, где есть авторские материалы, исходники, порты для разных ПК, новелла «Тёмное колесо» Холдстока, и даже рок-опера по мотивам «Элиты», созданная братом Йена.

Погнали!
Total votes 60: ↑59 and ↓1 +58
Comments 30

Linux за 2$/100 рублей: Какой UMPC можно получить, покопавшись на барахолках?

Reading time 6 min
Views 18K

Всем привет! Вот и подошла следующая часть из моего цикла статей очень дешевых девайсов, которым я всегда стараюсь найти применение. И на этот раз, я хочу вам показать еще одну классную сторону онлайн-барахолок(дабы не было рекламой - названия не упоминаю, но вы и сами догадались). Китайцы многое делают, чтобы сделать рынок UMPC как можно более дешевым и доступным - Lctech выпустили свою высокоинтегрированную плату Pi Zero на бутербродном AllWinner F1C100S - в который уже встроено 32/64мб ОЗУ, и цена которого - около 900руб на AliExpress. Я же предлагаю собрать UMPC за 100-500 рублей, и без единого кликбейта, на гораздо более мощном железе и с встроенным Wi-Fi, иногда 3G, полным USB стеком и встроенной NAND памятью 4-8гб. Интересно? Добро пожаловать под кат!

Окунуться в мир UMPC
Total votes 44: ↑43 and ↓1 +42
Comments 32

Выбор графического движка (GUI) для встраиваемой электроники

Reading time 15 min
Views 22K

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

В нашем полифункциональном заряднике есть небольшой графический дисплей. Разберём что тут можно подобрать. 

Читать далее
Total votes 46: ↑46 and ↓0 +46
Comments 39

Измеритель CO2 без датчика CO2?

Reading time 5 min
Views 24K

Года три назад самый дешевый домашний прибор по измерению уровня CO2 стоил $80. И это была неплохая цена, так как до этого столько стоил один лишь инфракрасный датчик. Сейчас на Ali появилась пара устройств с ценником от 800 рублей. Их заказывают буквально сотнями в разных магазинах, и есть подозрение, что датчика CO2 в них, на самом деле, нет. В общем, у меня тут возникла пара вопросов к самым дешевым приборам.

Читать далее
Total votes 99: ↑98 and ↓1 +97
Comments 35

4k @ 144Hz: DP, HDMI, USB-C Alt-Mode & cables…

Reading time 11 min
Views 50K

Я недавно сделал себе небольшой апгрейд и у меня появился монитор 4k@144Hz. Разумеется, на 144Hz он не заработал. Потому что нюансы. Мне пришлось в это нырнуть глубже, чем хотелось бы...

Спойлеры: DP, USB-C Alt-mode, Thunderbolt, USB4 3x2, 40Gbps, HDMI.
Оглавление: кабели, протоколы, режимы.

Лыдыбр: Моя старая видеокарта на компьютере сумела завести его на 4k @ 60Hz с помощью Display Port. (Либо 2k @ 144Hz). Это её техническое ограничение, больше она не может. Дальше я попытался воткнуть в монитор ноутбук (все 5 шт, какие нашлись у меня и знакомых) и обнаружил, что всё настолько сложно, что мне потребовалось несколько заходов чтения спецификации, пока я "это завёл". Выписываю свои наблюдения и эксперименты. Актуальность - первая половина 2022 года. Монитор under study - Gigabyte M32U, хотя, в принципе, это не существенно для обсуждаемого вопроса. У монитора разъёмы HDMI, DP, USB-C.

Разбирать проблему я буду слоями. Начём с физики.

Читать далее
Total votes 143: ↑143 and ↓0 +143
Comments 135

Список ноотропов, покупка которых не окажется пустой тратой денег

Reading time 5 min
Views 266K

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

Читать далее
Total votes 121: ↑85 and ↓36 +49
Comments 238

TorrServer: как смотреть торренты онлайн

Reading time 3 min
Views 246K

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

Что нужно при домашнем просмотре фильмов и как это происходит у меня...

Читать далее
Total votes 18: ↑17 and ↓1 +16
Comments 51

Про Володю и озонатор

Reading time 16 min
Views 86K
Tutorial
Писал я недавно в свой канал заметку насчет комнатных растений, по мнению NASA очищающих воздух от формальдегида/аммиака/паров растворителей (бензола, трихлорэтилена, ксилола и толуола). И сразу от подписчиков получил вопрос по поводу озона в воздухе. Набросал черновик ответа, но за пару дней он внезапно «растолстел» и попросился на хабр. Тем более антропогенный озон — это в определенной степени и лазерные принтеры и копиры, коих в офисах и компаниях тысячи…

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

От автора: надеюсь, статью прочитают те, кто среди зимы занимается «кронированием» городских деревьев, срезая две трети ствола и, хоть о чем-то задумается…


Проозонироваться!
Total votes 64: ↑64 and ↓0 +64
Comments 206

Артикли в английском: безжалостная война правил и исключений

Reading time 21 min
Views 59K


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

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

Нет смысла писать ещё одну статью о базовых правилах употребления артиклей в английском. Сегодня я расскажу о правилах и о способах их нарушить.
Читать дальше →
Total votes 42: ↑40 and ↓2 +38
Comments 68

Сравнительный анализ некоторых Java-декомпиляторов

Reading time 17 min
Views 13K


В этой статье будут рассмотрены четыре декомпилятора — Fernflower, CFR, Procyon и jadx — и произведено их сравнение по нескольким параметрам.


Дисклеймер: сравнение неформальное и не претендует на научность. Скорее, это просто обзор всех актуальных (на осень 2019) декомпиляторов Java-байткода.


Автор — Анна Явейн (brontozyablik), разработчица Solar appScreener

Читать дальше →
Total votes 27: ↑26 and ↓1 +25
Comments 18

Про фразовые глаголы-3 (on/off)

Reading time 4 min
Views 22K
Перед этой статьёй рекомендуется прочитать две предыдущие части:
1. habr.com/ru/post/495794
2. habr.com/ru/post/496190
On и Off обычно имеют противоположный смысл, поэтому мне показалось хорошей идеей совместить обзоры этих частиц.

И предлог, и частица on соответствуют русскому «на». Тут логика вполне очевидная: «на» – это и предлог (говорим о поверхностях: «на стене/столе»), и приставка – НА-сыпать (сыпать на поверхность).

Put – класть, put on – «на-кладывать». Например, put on makeup – «на-кладывать» грим. Любой предмет одежды, обуви, головной убор носители английского языка тоже накладывают, а не надевают, как у нас: put on a hat – надеть шляпу. У них даже вес тела накладывают: put on weight по-английски «набрать вес».

Часто ON соответствует русской приставке «про-». «Про-» обычно означает «двигаться вперёд»: про-двигаться, про-лезать, про-двигать. Возьмём фразовый глагол (ФГ) get on. Get означает «двигаться, перемещаться», get on буквально «про-двигаться». Или в пространстве, или, метафорически, в жизни или карьере: Young people try to get on in life – Молодые люди стараются продвигаться в жизни.
Читать дальше →
Total votes 47: ↑44 and ↓3 +41
Comments 23

Популярно об артиклях в английском языке

Reading time 8 min
Views 49K
Артикли — это самые распространенные слова в английском языке. Эти невзрачные a, an и the занимают около 8,5% объема любого текста. Если немного утрировать, то из каждого часа работы с текстом вы пять минут тратите только на прочтение артиклей.

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

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


Читать дальше →
Total votes 59: ↑59 and ↓0 +59
Comments 94

Способы создания гистограмм с помощью Python

Reading time 2 min
Views 152K
За последний год я сталкивалась с необходимостью рисования гистограмм и столбчатых диаграмм достаточно часто для того, чтобы появилось желание и возможность об этом написать. Кроме того, мне самой довольно сильно не хватало подобной информации. В этой статье приведен обзор 3 методов создания таких графиков на языке Python.

Начнем с того, чего я сама по своей неопытности не знала очень долго: столбчатые диаграммы и гистограммы — разные вещи. Основное отличие состоит в том, что гистограмма показывает частотное распределение — мы задаем набор значений оси Ox, а по Oy всегда откладывается частота. В столбчатой диаграмме (которую в англоязычной литературе уместно было бы назвать barplot) мы задаем и значения оси абсцисс, и значения оси ординат.

Для демонстрации я буду использовать избитый набор данных библиотеки scikit learn Iris. Начнем c импортов:

import pandas as pd
import numpy as np
import matplotlib
import matplotlib.pyplot as plt
from sklearn import datasets
iris = datasets.load_iris()

Преобразуем набор данных iris в dataframe — так нам удобнее будет с ним работать в будущем.

data = pd.DataFrame(data= np.c_[iris['data'], iris['target']], columns= iris['feature_names'] + ['target'])

Из интересующих нас параметров data содержит информацию о длине чашелистиков и лепестков и ширине чашелистиков и лепестков.

Используем Matplotlib
Построение гистограммы
Cтроим обычную гистограмму, показывающую частотное распределение длин лепестков и чашелистиков:

fig, axs = plt.subplots(1, 2)
n_bins = len(data)
axs[0].hist(data['sepal length (cm)'], bins=n_bins)
axs[0].set_title('sepal length')
axs[1].hist(data['petal length (cm)'], bins=n_bins)
axs[1].set_title('petal length')

image
Читать дальше →
Total votes 17: ↑16 and ↓1 +15
Comments 4

Star Wars: Рыцари старой Республики

Reading time 26 min
Views 29K
Ave!

Дело в том, что я довольно долгое время провела в больнице, и во время лечения начала играть в Star Wars: Knights of the Old Republic на планшете, чтобы хоть как-то отвлечься.

Немного позже наткнулась на статью с несколькими идеями Криса Авеллона о сюжете 3-й части (перевод полной версии статьи). Идеи мне понравились (особенно на фоне того, что сделали в SWTOR), и захотелось узнать ещё что-нибудь про планы Obsidian, и почему 2-ую часть KotOR многие считают провалом, а 3-ю и вовсе отменили.

Это лонгрид про геймдизайн, трудности разработки, и мои субъективные мысли о Звёздных Войнах и играх в целом, но если это вас не смущает, то добро пожаловать под кат.


Total votes 53: ↑53 and ↓0 +53
Comments 66

Как происходит превращение в школьника (и при чем здесь настольные игры)

Reading time 14 min
Views 13K
Когда описывают периодизацию детского развития, обычно это выглядит так, что с трех до семи лет у ребенка дошкольное детство и ролевая игра — ведущая деятельность, а в семь лет ребенок превращается в школьника, у которого ведущая деятельность — учебная. Может складываться ощущение, что в районе семи лет происходит какое-то качественное изменение в сознании ребенка, и он переходит из одного дискретного состояния (дошкольник) в другое (ученик).

На самом деле это плавный процесс, растянутый на несколько лет, и те изменения, которые происходят, происходят постепенно. Образовательная программа детского сада построена таким образом, чтобы занятия, которые посещает ребенок, с каждым годом становились все больше и больше похожи на школьные уроки. В подготовительной группе ребенок на занятиях получает опыт, уже максимально приближенный к школьному: есть и класс, и парты, и русский язык с математикой, и надо поднимать руку, и задания выполняются в тетрадках. Это один вектор.
Читать дальше →
Total votes 31: ↑27 and ↓4 +23
Comments 27

Как развивается умение общаться (с самого-самого начала) и что с ним делают игры на сторителлинг

Reading time 37 min
Views 23K
Одна из самых распространенных тем запросов, с которыми приходят к детским специалистам, это речь. Самая очевидная проблема — это когда ребенок не говорит. Вот ему год, а он молчит. Вот ему уже три, а он все равно молчит. А вот уже пять… Тут понятно, что что-то пошло не так. Есть менее очевидные проблемы, которые на самом деле тоже про речь. Например, ребенок плохо учится. Почему плохо учится? Оказывается, когда ему учительница задает вопрос, он в ответ двух слов связать не может. Или у ребенка почему-то нет друзей. И оказывается, что он просто не представляет, как со сверстниками вообще разговаривать. Ну и не разговаривает. И так далее.

Самый нужный человек здесь, как понятно, логопед (и очень важно дойти до логопеда, если есть подозрение, что развитие речи пошло как-то не так). Игротерапевты с этим тоже работают, потому что умение разговаривать и договариваться развивается вместе с развитием игры. Чтобы понять, как это происходит, начнем с самого начала.
Читать дальше →
Total votes 39: ↑36 and ↓3 +33
Comments 51

Глючный код на Python: 10 самых распространенных ошибок, которые допускают разработчики

Reading time 11 min
Views 84K
Translation

О Python


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

О данной статье


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

Имея это в виду, в этой статье представлен «топ-10» тонких, трудных для обнаружения ошибок, которые могут допустить даже продвинутые разработчики Python.
Читать дальше →
Total votes 44: ↑39 and ↓5 +34
Comments 78
1

Information

Rating
Does not participate
Registered
Activity