Search
Write a publication
Pull to refresh
287
0.2
Владимир @32bit_me

Программист

Send message

Майним Bitcoin с помощью бумаги и ручки

Reading time7 min
Views328K
В один прекрасный момент мне захотелось прикинуть, насколько быстро можно майнить биткойны вручную. Оказалось, что для майнинга используется хеширование SHA-256, а оно достаточно простое и может быть вычислено даже без компьютера. Само собой, процесс очень небыстрый и совершенно непрактичный. Но, пройдя все шаги на бумажке, можно хорошо разобраться в деталях работы алгоритма.


Один криптографический раунд
Читать дальше →

Wiren Board 4 — контроллер для автоматизации

Reading time4 min
Views60K
image

Год назад мы выпустили контроллер Wiren Board Smart Home. Благодаря невысокой цене и широким возможностям он имел успех среди энтузиастов.

Поэтому мы решили не останавливаться и выпустили новую версию — контроллер для автоматизации Wiren Board 4, к которому написали и новый софт.

Несмотря на название, покупатели часто использовали Wiren Board Smart Home и для совсем не “домашних” задач: сбора климатических параметров, опроса счётчиков и датчиков, удалённого контроля оборудования — то есть в качестве универсального логического контроллера.

Wiren Board 4 (как в железе, так и в ПО) лучше приспособлен для таких задач. Домашних пользователей это тоже коснулось — контроллер стал надёжнее.
Читать дальше →

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

Reading time7 min
Views101K


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

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

UDOO: система, где встречаются Raspberry Pi и Arduino, Wi-Fi, Bluetooth и сенсоры

Reading time2 min
Views32K


Два года назад группа разработчиков создала гибридное устройство UDOO, в которое интегрированы Raspberry Pi и Arduino. Сейчас компания, которая создала этот девайс, планирует построить еще более функциональную систему, получившую название UDOO Neo. Здесь, кроме Arduino и «малинки», есть модули беспроводной связи и ряд встроенных сенсоров.

Сейчас разработчики собирают средства на свой проект при помощи Kickstarter. Собственно, нужная сумма уже собрана (всего за пару дней), причем собрано почти в 10 раз больше, чем планировалось изначально (130+ тысяч долларов США против 15 тысяч запланированных). При этом до завершения кампании еще 32 дня. Возможно, этот проект будет одним из наиболее удачных из всех, что собирали средства на Kickstarter.
Читать дальше →

Простое управление arduino через интернет

Reading time5 min
Views208K


Всем добрый день.

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

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

Интернет вещей на ESP8266

Reading time3 min
Views45K
Мы разработали интересное устройство – WI-FI реле МР3500 на 2 канала. Сердцем данного устройства является самый популярный на данный момент чип ESP8266. Первое, о чем вы подумали, это же «Интернет вещей!», да, вы совершенно правы.



Чем же так интересен чип ESP8266 или, как его называют, «народный wi-fi»? На фото вы можете его видеть, он синего цвета. Дело в том, что ESP8266 является одним из самых высокоинтегрированных и недорогих решений для работы с Wi-Fi и его можно легко использовать в качестве «мозга» будущего изделия. Основных применений в составе готовых устройств два – это обеспечение Wi-Fi связи и организация логики управления домашними приборами с помощью свободных ресурсов встроенного микроконтроллера.
Читать дальше →

Микроконтроллеры семейства Kinetis от NXP-Freescale для встраиваемой электроники. Открываем для себя

Reading time7 min
Views43K

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

Intel Edison. Первый запуск

Reading time9 min
Views111K
Intel Edison

В прошлом году на выставке CES 2014 Intel представила Linux мини-компьютер Edison для интернета вещей. Кратко почитать об анонсе Intel Edison можно тут. Интернет вещей — безусловный тренд этого года. Теперь не только домашний компьютер, планшет, или смартфон могут подключаться к сети Интернет. Но и привычные бытовые вещи, которыми мы пользуемся каждый день. Intel Edison, не ответ компании на Raspberry Pi, а новая ниша миниатюрных энергоэффективных компьютеров, в форм-факторе модуля. Любой разработчик может взять такой модуль, добавить к нему различные датчики, механику, и средство интерактивного взаимодействия, и получить новое устройство.

Intel Edison – мини-компьютер с Linux на борту, базис для построения нового мира вещей основанного на сетевом взаимодействии друг с другом.
Читать дальше →

Использование драйвера ключей нижнего и верхнего уровней IR2110 — объяснение и примеры схем

Reading time7 min
Views289K


Быть может, после прочтения этой статьи вам не придётся ставить такие же по размерам радиаторы на транзисторы.
Перевод этой статьи.
Заинтересовал? Тогда поехали!

Компоненты для измерения тока

Reading time6 min
Views47K
Измерение тока используется для контроля над разными параметрами, один из которых — мощность на нагрузке. Существует немало считывающих элементов для измерения тока через нагрузку. Их выбор диктуется потребностями каждого конкретного устройства, а также величиной измеряемого тока. Мы обсудим в этой статье три разных типа считывающих компонентов для измерения тока.

1. Шунтовые резисторы
Шунты и шунтовые резисторы — про­стейший вариант токочувствительных элементов. Необходимо лишь помнить о температурном коэффициенте сопро­тивления (ТКС) резистора и избегать его нагрева. Напомним эмпирическое правило выбора токочувствительного резистора: его максимально допусти­мая мощность должна не менее чем в два раза превышать рабочую мощность рассеивания.
Читать дальше →

Пилю, строгаю, собираю 3d принтер из хлама и палок

Reading time5 min
Views53K
Мне давно хотелось иметь 3d принтер. Года полтора — точно, может, даже больше. Я даже слегка научился моделировать в DesignSpark Mechanical и изредка рисовал в нем всякие полезные и не очень штуки, например, переделал кнопки на своем руле Logitech G27, чтобы было удобнее нажимать в перчатках: G27 Button Plates. Полет фантазии в изготовлении всякого разного ограничивало только отсутствие своего принтера, ведь печать где-то еще — это долго, неудобно и не слишком дешево. Останавливало только одно — на свой принтер нужны были деньги, а их почему то всегда хронически не хватает. После долгих раздумий я решил собрать принтер сам, причем, учитывая озвученное выше обстоятельство, по максимуму использовать всякий валяющийся на работе хлам.
Итак, процесс пошел...

Сахарные инжекции в C#

Reading time5 min
Views42K
C# — продуманный и развитый язык программирования, в котором предусмотрено немало синтаксического сахара, упрощающего написание рутинного кода. Но всё-таки существует ряд сценариев, где нужно проявить некоторую смекалку и изобретательность, чтобы сохранить стройность и красоту.

В статье мы рассмотрим некоторые такие случаи, как широкоизвестные, так и не очень.

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

LLILC — транслятор MSIL в байткод LLVM от Microsoft

Reading time1 min
Views13K
Сегодня сотрудник Microsoft анонсировал проект LLILC — новый проект для трансляции MSIL в байткод LLVM, предназначенный пока главным образом для инфраструктуры CoreCLR. В ближайшее время он может быть использован для JIT-компиляции, а в дальнейшем и для формирования прекомпилированных сборок (Ahead-of-Time) средствами .NET Native.

Несмотря на то, что в CoreCLR уже есть свой JIT, планируется расширить поддержку различных платформ за счёт LLVM. Новый JIT использует тот же набор внутренних API, что и RyuJIT и бесшовно его заменяет. Таким образом новый JIT позволит .NET-коду выполняться на всех поддерживаемых LLVM-платформах, на которые можно портировать CoreCLR.
Читать дальше →

Mini-Desktop своими руками. 2.0

Reading time7 min
Views60K
Для тех, кто не читал предыдущий материал, расскажу вкратце, что речь шла о разработке корпуса со встроенным блоком питания для самостоятельной сборки настольного компьютера на базе материнских плат стандарта Thin Mini-ITX.

image

Как и ранее, основная концепция не изменилась. Под выражением «настольный компьютер» я подразумеваю (как минимум) возможность установки любого процессора из линейки Intel Core i Desktop Processors, встроенный блок питания и возможность установки не менее 2-х внутренних накопителей информации. Также, должна быть предусмотрена возможность подсоединения как внутренних, так и внешних беспроводных антенн.

В предыдущем дизайне обеспечивалась выборочная совместимость с материнскими платами Thin Mini-ITX. Мне показалось это несправедливым, и я переработал дизайн для совместимости со всеми существующими платами этого стандарта. Так же, кардинально была пересмотрена система охлаждения. Итак, обо всем подробнее…
Читать дальше →

Контроль версий для дизайнеров

Reading time3 min
Views29K


Давненько мы сюда ничего не писали. Наверное, пришло время восполнить этот досадный пробел. Тем более, что повод более чем достойный.

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

Собираем свой собственный смартфон

Reading time6 min
Views132K


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

Необходимые навыки:
— базовые навыки пайки;
— знакомство с Raspberry Pi.
Или:
— много свободного времени и терпения.
Читать дальше →

Atmel закапывать еще рано – она живее всех живых

Reading time3 min
Views47K
Atmel SMART SAM L21

Хочу поделиться новостью, которая чуть не прошла мимо, хотя заслуживает вашего внимания. Atmel решила вступить в гонку IoT. Архитектура AVR, разработанная Atmel в 1996 году (имеется в виду семейство восьмибитных микроконтроллеров) уже безнадежно устарела. Семейство 32-битных контроллеров AVR32 так и не обрело популярности. Вечно держаться за счет надежных и простых как камень ATtiny и ATmega не получится в виду их ограниченной функциональности. Я сам являюсь поклонником простоты и надежности AVR, но в свое время решил перейти с AVR на ARM от ST, как раз по причине «допотопности» первых и «нафаршированности» вторых. Казалось, что Atmel больше не развивает архитектуру AVR – тогда зачем тратить время на умирающего – в общем, я оказался прав.
Читать дальше →

IBM PC своими руками — это очень просто

Reading time34 min
Views201K
image

После того, как я воплотил свою давнишнюю мечту и все-таки (хотя и с опозданием почти на 30 лет) построил Радио 86РК, некоторое время мне казалось, что на этой части моей истории поставлена вполне достойная точка.

Тем не менее, обнаружилось, что болезнь до конца не вылечена, и она вернулась еще более острым рецидивом. Наверное, сказались как неожиданно успешный опыт постройки 86РК, так и то, что у меня в ходе данного процесса образовалось довольно большое количество весьма притягательно выглядящих инструментов, приборов и деталей, которым очень хотелось найти применение.
В конце концов ломка стала нестерпимой, и мне пришлось снова взяться за паяльник, а также вспомнить некоторые другие навыки из прошлого. Что из этого получилось, можно увидеть вместе с некоторым количеством картинок и очень (повторяю – ОЧЕНЬ) большим количеством букв (и даже не букв, а страниц) дальше…
Читать дальше →

Генерация кода во время исполнения или «Пишем свой JIT-компилятор»

Reading time18 min
Views29K

Современные компиляторы очень хорошо умеют оптимизировать код. Они удаляют никогда не выполняющиеся условные переходы, вычисляют константные выражения, избавляются от бессмысленных арифметических действий (умножение на 1, сложение с 0). Они оперируют данными, известными на момент компиляции.
В момент выполнения информации об обрабатываемых данных гораздо больше. На её основании можно выполнить дополнительные оптимизации и ускорить работу программы.
Оптимизированный для частного случая алгоритм всегда работает быстрее универсального (по крайней мере, не медленнее).
Что если для каждого набора входных данных генерировать оптимальный для обработки этих данных алгоритм?
Очевидно, часть времени выполнения уйдёт на оптимизацию, но если оптимизированный код выполняется часто, затраты окупятся с лихвой.
Как же технически это сделать? Довольно просто — в программу включается мини-компилятор, генерирующий необходимый код. Идея не нова, технология называется “компиляция времени исполнения” или JIT-компиляция. Ключевую роль JIT-компиляция играет в виртуальных машинах и интерпретаторах языков программирования. Часто используемые участки кода (или байт-кода) преобразуются в машинные команды, что позволяет сильно повысить производительность.
Java, Python, C#, JavaScript, Flash ActionScript — неполный (совсем неполный) список языков, в которых это используется. Я предлагаю решить конкретную задачу с использованием этой технологии и посмотреть, что получится.
Читать дальше →

Алгоритм Брезенхема в паяльной печи — теория

Reading time2 min
Views39K
Алгоритм Брезенхема является одним из старейших алгоритмов в машинной графике. Казалось бы, как можно применить алгоритм построения растровых прямых при создании домашней паяльной печи? Оказывается, можно, причем с очень достойным результатом. Забегая вперед, скажу, что данный алгоритм очень хорошо скармливается маломощному 8-битному микроконтроллеру. Но обо всем по порядку.
Читать дальше →

Information

Rating
5,172-nd
Date of birth
Registered
Activity