Pull to refresh
2
0

Инженер-программист

Send message

Основная информация про опен сорс и полезные ссылки

Reading time8 min
Views11K

Написано довольно много хороших материалов о свободных лицензиях, в том числе тут, на Habr. Почему стоит прочитать еще и эту статью: 

Читать далее

Monotype ушел из России. Чем заменить популярные иностранные шрифты?

Reading time4 min
Views18K

На прошлой неделе компания Monotype — владелец прав на популярные шрифты Times New Roman, Verdana, Arial, Helvetica и Tahoma — объявила об ограничении доступа из России к своей библиотеке и сообщила о приостановке взаимодействия с российскими организациями. Новость стала еще одним поводом обратить внимание на специфику использования проприетарных шрифтов в бизнес-среде – проблему, которая выходит далеко за рамки ситуации с Monotype. Речь о возможных сложностях при отображении существующих документов и шаблонов, особенно при работе с различными таблицами, формами и автоматически формируемыми файлами из информационных систем.


Для минимизации подобных проблем мы в МойОфис еще шесть лет назад представили свои шрифты XO_Fonts. Они свободно распространяются и доступны бесплатно. Сегодня этот набор состоит из 11 шрифтов и 24 начертаний. Их особенностью является метрическая совместимость с распространенными проприетарными шрифтами, которая позволяет сохранить оригинальное форматирование и верстку документов, ранее созданных с использованием популярных иностранных шрифтов.

Некоторое время назад на D-Russia была опубликована история создания XO_Fonts. Теперь мы предлагаем ознакомиться с ней и читателям Хабра.

Читать далее

Часы на ПЛИС Lattice

Reading time19 min
Views35K
Некоторое время назад, хаброжитель DmitrySpb79 написал статьи о создании электронных часов. В них он рассмотрел источники точного времени, а так-же элементную базу для создания электронных часов. Были упомянуты Arduino, STM, Raspberry PI, ESP8266, но совсем забыли про ПЛИС.

Давайте заполним этот небольшой пробел. Узнаем, на сколько просто сделать часы на ПЛИС и какие аппаратные ресурсы для этого потребуются. К тому же, мне подарили микросхему ПЛИС очень малого объема — 64 макроячейки. Это ПЛИС LC4064v фирмы Lattice с которыми я до этого никогда не работал. Я думаю, будет интересно!

Цели:

  • попытаться уместить логику работы часов в ПЛИС малого размера (64 макроячейки);
  • освоить статическую либо динамическую светодиодную индикацию на ПЛИС для вывода времени;
  • собрать кучу граблей, связанных с самостоятельной разработкой схем и получить новый опыт;
  • освоить новую среду разработки и программирования для ПЛИС фирмы Lattice, оценить сложность перехода

Меня ожидает несколько очень приятных вечеров, посвященных разработке на ПЛИС!

Добро пожаловать под кат!

Электроника МС 1504 — первый советский ноутбук

Reading time8 min
Views46K

"Электроника МС 1504" - первый серийно производившийся советский ноутбук. Внутризаводское обозначение модели - "Электроника ПК 300". 

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

Читать далее

Проектируем плату в KiCad с помощью QEDA: от идеи до опытного образца

Reading time5 min
Views18K

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


Были сделаны полезные выводы, проведена дальнейшая работа, проект развивался. Появился интерфейс коммандной строки (CLI). На сегодняшний день можно говорить о некотором milestone: проект достиг версии 0.1.


В этот статье я рассмотрю типичный рабочий процесс по созданию платы в среде KiCad и использованием утилиты QEDA.


КДПВ


Предупреждение: будут картинки и, как следствие, трафик.

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

Отечественный микроконтроллер К1986ВК025 на базе процессорного ядра RISC-V для приборов учета электроэнергии

Reading time11 min
Views46K
Добро пожаловать в эпоху RISC-V!

Решения на базе открытого стандарта системы команд RISC-V всё чаще появляются на рынке. Уже в серийном производстве микроконтроллеры от китайских коллег, интересные решения предлагает Microchip с FPGA на борту. Растет экосистема ПО и средств разработки для данной архитектуры. Кажущиеся ранее непоколебимыми лидеры все чаще встречаются в объявлениях о перепродаже, а молодые стартапы привлекают многомиллионные инвестиции. Компания Миландр так же ввязалась в эту гонку и сегодня начала поставку заинтересованным предприятиям инженерных образцов своего нового микроконтроллера К1986ВК025 на базе процессорного ядра RISC-V для приборов учета электроэнергии. В общем картинки, характеристики и прочая информация, а так же немного хайпа под катом.


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

На что способен формат Mini PCI-e

Reading time2 min
Views184K


Мне очень нравится формат Mini PCI-e. Это крохотный форм-фактор, служащий базовым для mSATA и M.2, но в основном он используется для подключения карт WiFi и Bluetooth в ноутбуках или маленьких ПК. Но по сути это просто PCI-e, поэтому с его помощью можно сделать гораздо больше.

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

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

Решение Fizzbuzz при помощи теоремы Эйлера

Reading time4 min
Views13K
image

FizzBuzz — это известная задачка на программирование, которую обычно дают в технической части собеседований. Она формулируется примерно так:

Напишите функцию, выводящую список целых чисел от 1 до 100, но вместо каждого числа, кратного 3, она должна выводить «Fizz», а вместо каждого числа, кратного 5, выводить «Buzz». Вместо чисел, кратных и 3, 5, программа должна выводить «FizzBuzz»; все остальные числа должны выводиться без изменений.

Можно написать функцию, вообще не использующую условную логику и вместо этого разделяющую целые числа на 4 возможные категории (обычное решение оставим в качестве упражнения заинтересованному читателю):

  1. Имеющие делитель 3, но не 5
  2. Имеющие делитель 5, но не 3
  3. Имеющие делитель и 3, и 5
  4. Не имеющие делитель 3 и 5

Нам нужна функция, которая будет возвращать:

  • «Fizz», если $n \equiv 0 \pmod 3$ и $n$ является взаимно простым с 5
  • «Buzz», если $n \equiv 0 \pmod 5$ и $n$ является взаимно простым с 3
  • «FizzBuzz», если $n \equiv 0 \pmod 3$ и $n \equiv 0 \pmod 5$
  • $n$ во всех остальных случаях.

Рассмотрим реализацию такой функции на Python:

[(lambda n: { 1: n, 6: "Fizz", 10: "Buzz", 0: "FizzBuzz" }[n**4%15])(n+1) for n in range(100)]

Та же функция на Ruby:

(1..100).map{|n| {1 => n, 6 => "Fizz", 10 => "Buzz", 0 => "FizzBuzz"}[n**4%15] }

Как мы и ожидали, каждая из этих функций возвращает список целых чисел от 1 до 100 с подставленными в нужные места «Fizz», «Buzz» и «FizzBuzz».

Но почему? Откуда взялись постоянные значения 0, 6, 10 и 1? Почему $n^4 \mod 15$ возвращает 6 для чисел, кратных 3, но не 5, 10 для чисел, кратных 5, но не 3, 0 для чисел, кратных 5 и 3 и 1 во всех остальных случаях? И самое важное — справедливо ли это для любого $n$, которое мы выберем?
Читать дальше →

Gyrators

Reading time13 min
Views3.9K


Gyrators are impedance converters usually used to simulate inductance in circuits. Though they are rarely used in discrete electronics, they are interesting circuits looking like pole dancers in pictures. There are studies on gyrators, but still something is missing, so it is interesting to do another one.
Read more →

USB на регистрах: STM32L1 / STM32F1

Reading time18 min
Views24K


Еще более низкий уровень (avr-vusb)
USB на регистрах: bulk endpoint на примере Mass Storage
USB на регистрах: interrupt endpoint на примере HID
USB на регистрах: isochronous endpoint на примере Audio device

С программным USB на примере AVR мы уже познакомились, пришла пора взяться за более тяжелые камни — STM32. Подопытными у нас будут классический STM32F103C8T6 а также представитель малопотребляющей серии STM32L151RCT6. Как и раньше, пользоваться покупными отладочными платами и HAL'ом не будем, отдав предпочтение велосипеду.
Читать дальше →

Что скрывают протоны?

Reading time10 min
Views25K
Двадцать лет назад физики начали исследовать загадочную асимметрию внутреннего строения протона. Результаты их работы, опубликованные в конце февраля 2021 года, объясняют, как антивещество помогает стабилизировать ядро каждого атома.

Очень редко упоминается тот факт, что протоны — позитивно заряженные частицы в центре атома — являются отчасти антивеществом.

В школе нам говорили, что протон представляет собой группу из трех элементарных частиц под названием кварки — два u-кварка (верхних) и один d-кварк (нижний), чьи электрические заряды +2/3 и -1/3 соответственно в сумме дают протону заряд +1. Но за этой элементарной картиной скрывается гораздо более странная и еще неразгаданная история.
Читать дальше →

Мы так и не попали в аптечку МКС, зато начали продавать свой быстрый регенератор тканей

Reading time7 min
Views51K
image

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

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

Продажи были около нуля, но это ожидаемо. Мы были молоды, наивны и хотели показать лучший эффект, стабилизировав в формуле сразу много действующих веществ, которые дополняли друг друга по эффекту. Цена флакона 100 мл к моменту выхода альфа-тестирования на полке получалась около 2 929 рублей, позже за счёт каких-никаких серий удалось снизить до 1 947.

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

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

Делаем гибкую печатную плату

Reading time7 min
Views19K

Материал по мотивам методики создания магнитопланарных излучателей для наушников и колонок. Подход имеет широкий спектр применения, не только для создания электроакустических систем. Например, для гибких шлейфов взамен порванных, антенн и прочего, на что хватит воображения и терпения. Один из вариантов использования фоторезистивного метода вместо популярного ЛУТ.

Читать далее

Внешняя алгебра, которую мы заслужили. Часть 2 — полиформы и графы

Reading time15 min
Views3.7K

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

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

Читать далее

Хакаем CAN шину авто. Мобильное приложение вместо панели приборов

Reading time7 min
Views121K

Я продолжаю изучать CAN шину авто. В предыдущих статьях я голосом открывал окна в машине и собирал виртуальную панель приборов на RPi. Теперь я разрабатываю мобильное приложение VAG Virtual Cockpit, которое должно полностью заменить приборную панель любой модели VW/Audi/Skoda/Seat. Работает оно так: телефон подключается к ELM327 адаптеру по Wi-Fi или Bluetooth и отправляет диагностические запросы в CAN шину, в ответ получает информацию о датчиках.

По ходу разработки мобильного приложения пришлось узнать, что разные электронные блоки управления (двигателя, трансмиссии, приборной панели и др.) подключенные к CAN шине могут использовать разные протоколы для диагностики, а именно UDS и KWP2000 в обертке из VW Transport Protocol 2.0.

Как телефон взаимодействует с автомобилем

Внешняя алгебра, которую мы заслужили. Часть 1 — симплексы и границы

Reading time13 min
Views21K

В данной статье мы расскажем о том, что такое внешняя алгебра, и для чего она нужна. Удивительно, но на Хабре почти нет статей о внешней алгебре при том, что ее прикладная ценность ничуть не меньше, например, реляционной алгебры.

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

Читать далее

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

Reading time9 min
Views45K

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

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

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

Рецепт раствора для омеднения любых поверхностей

Reading time2 min
Views36K

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

Обзор бесплатных источников котировок фондового рынка

Reading time5 min
Views68K
Здравствуйте. Я работаю программистом, и у меня есть хобби — изучение фондового рынка. Фондовый рынок с точки зрения программиста — набор данных, которые надо сперва получить, а потом проанализировать. В этой статье я расскажу о первой части квеста — как данные получить. Статья не претендует на полноту исследования, а лишь описывает мой субъективный опыт, полученный за последние пару лет.

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

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

Интернет-магазин «на минималках»

Reading time12 min
Views16K

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

Работаем «вбелую»

Information

Rating
Does not participate
Registered
Activity