Как стать автором
Обновить
2
0

Пользователь

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

Допиливание MR3020, пересборка его ядра и конфигурирование инструментария разработчика

Время на прочтение18 мин
Количество просмотров245K
Добрый день, уважаемые хабровчане. Так как в последнее время в DIY-проектах стал набирать популярность китайский роутер фирмы TP-Link TL-MR3020 (или его аппаратный аналог для китайского рынка TL-WR703N), я решил написать статью по вариантам его допиливания и конфигурирования для своих проектов, тем более что по работе я развлекался с ним последние несколько месяцев. В статье я постараюсь рассмотреть аспекты, которые не охватывают в большинстве статей для начинающих – а именно – практические примеры по пересборке его прошивки и конфигурировании для себя удобного инструментария разработчика.
Читать дальше →
Всего голосов 39: ↑38 и ↓1+37
Комментарии38

Система наблюдения в автомобиле за ним же на Raspberry Pi. Часть 1

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

Введение


Добрый день.
Однажды я приобрёл Raspberry Pi без каких-то на то целей — как только начались упоминания о нём на хабре. Начал бесцельно запускать фтп-сервера, пробовать Node.js и прочие мелкие серверные дела, пока не приобрёл новый автомобиль. Конечно, заниматься тем, что можно найти на просторах интернета вроде дистанционного открытия гаража я не стал — в силу нормального не знания системы Linux и серверных языков программирования. Автомобиль стал мне дорог и возникла идея — поставить малинку в автомобиль с прикрученными к ней USB девайсами: GPS, Web-камера, 3G-модем — для чего и был куплен 2-ой Raspberry.
В этой статье я опишу подготовку: установку Node.JS, настройку OpenVPN и 3G.
Читать дальше →
Всего голосов 42: ↑39 и ↓3+36
Комментарии28

Как я сделал USB-МФУ беспроводным

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

Вступление

Говорят, ребенку в школе понадобится цветной принтер и сканер. Да и самому хотелось уже на что-то поменять разваливающийся черно-белый лазерник 1996 года выпуска. Критериями выбора стали: цветность, лазерная технология (перерывы между печатью могут достигать месяцев), автоподатчик оригиналов для сканера и копира, автоматическая двусторонняя печать и Wi-Fi, чтобы поставить этот ящик в дальнем углу. По этим характеристикам подобралась какая-то громадина за 25+ килорублей, что показалось неразумным. И вдруг на работе выдали пару подарочных карт одного известного розового магазина, и пришло ощущение, что надо покупать. К сожалению, в его ассортименте было всего три лазерных МФУ с цветной печатью, ни один из которых не отвечал последним двум требованиям. Спустя два месяца аccортимент ничем не пополнился, а наоборот, сократился до двух позиций на всю Москву, и я решил взять то, что было в наличии и не на витрине.

Счастливчиком оказался HP Laserjet Pro 100 Color MFP M175a, без автоповорота страниц и с подключением только по USB. Кстати, он оказался не таким большим, как я ожидал, и не таким шумным, как пишут в отзывах.

Задача

Если автоматическую двустороннюю печать добавить к принтеру почти невозможно, то отвязать его от компьютера вполне реально.
Читать дальше →
Всего голосов 33: ↑32 и ↓1+31
Комментарии29

Интерфейс JTAG? — Это очень просто

Время на прочтение6 мин
Количество просмотров251K
Многие знакомы со словом «JTAG», но знакомство это скорее всего поверхностное. В этой статье я хочу перевести Вас на новый уровень, так сказать «во френдзону». Возможно, для многих я не открою ничего нового, но надеюсь тем, кто давно хотел ознакомиться, будет интересно почитать. Итак, от винта.
image

Запустить JTAG тестирование
Всего голосов 90: ↑86 и ↓4+82
Комментарии17

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

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

Господа! Я рад сообщить, что наконец-то все желающие могут загрузить бесплатный учебник на более чем 1600 страниц, над переводом которого работало более полусотни человек из ведущих университетов, институтов и компаний России, Украины, США и Великобритании. Это был реально народный проект и пример международной кооперации.

Учебник Дэвида Харриса и Сары Харрис «Цифровая схемотехника и архитектура компьютера», второе издание, 2012, сводит вместе миры программного обеспечения и аппаратуры, являясь одновременно введением и в разработку микросхем, и в низкоуровневое программирование для студентов младших курсов. Этот учебник превосходит более ранний вводный учебник «Архитектура компьютера и проектирование компьютерных систем» от Дэвида Паттерсона и Джона Хеннесси, причем соавтор предыдущего учебника Дэвид Паттерсон сам рекомендовал учебник от Харрисов как более продвинутый. Следуя новому учебнику, студенты строят реализацию подмножества архитектуры MIPS, используя платы с ПЛИС / FPGA, после чего сравнивают эту реализацию с индустриальными микроконтроллерами Microchip PIC32. Таким образом вводится вместе схемотехника, языки описания аппаратуры Verilog и VHDL, архитектура компьютера, микроархитектура (организация процессорного конвейера) и программирование на ассемблере — в общем все, что находится между физикой и высокоуровневым программированием.

Как загрузить? К сожалению, не одним кликом. Сначало надо зарегистрироваться в пользовательском коммьюнити Imagination Technologies, потом зарегистрироваться в образовательных программах на том же сайте, после чего наконец скачать:
Читать дальше →
Всего голосов 117: ↑114 и ↓3+111
Комментарии66

Как надо дружиться с STM32

Время на прочтение3 мин
Количество просмотров354K
Не, не, не, все не так!

Давайте дружиться с STM32 правильно!

Самая главная ошибка, сделанная автором — это неправильно выбранный инструментарий.
Читать дальше →
Всего голосов 38: ↑35 и ↓3+32
Комментарии79

Программирование микроконтроллеров PIC16/PIC18 на языке C. Статья вторая. Базовые сведения о платформе. Первая программа

Время на прочтение4 мин
Количество просмотров127K
Если в первой статье все получилось хорошо — мы получили базовую программную обстановку для продолжения обучения.

Едем дальше.

Как я говорил ранее, пока что объяснять буду на базе МК PIC16F628A.
Обязательно качаем документацию на него. Рекомендую для поиска — alldatasheet.com
DataSheet — главный документ при разработке на базе МК.
Рекомендую распечатывать основные таблицы и разделы для удобства пользования.

Открываем ДШ.

Наиболее важные сведения о кристалле:
— максимальная рабочая частота — 20МГц;
— 2048х14 бит флеш-ПЗУ;
— 224 байта статической ОЗУ;
— 128 байт энергонезависимой ПЗУ;
— 16 доступных выводов;
— модуль приемо-передатчика;
— 3 таймера.

Данный кристалл — представитель так называемого среднего (Mid-range) семейства МК PIC.

Вкратце расскажу о том, что обязательно нужно понимать.

Читать дальше →
Всего голосов 54: ↑48 и ↓6+42
Комментарии16

Программирование микроконтроллеров PIC16/PIC18 на языке C. Статья вводная

Время на прочтение3 мин
Количество просмотров83K
Доброго тебе времени суток, хороший человек.

Это вводная статья из небольшого цикла о программировании МК PIC16/18 на языке C.

Необходимый минимум:
ПО:
— MPLAB;
— собственно компилятор C;
— Proteus ISIS;
Железо:
— отладочная плата;
— программатор.

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

Компилятор C.
Здесь уже немного сложнее с выбором.
Список того, на что я советую обратить внимание:
— CCS PICC;
— Micro-C;
— IAR C;
— HT-PICC;
— Microchip C18;

Читать дальше →
Всего голосов 67: ↑60 и ↓7+53
Комментарии32

Референсный код

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

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


Мой активный корреспондент Чарльз Мэннинг отправил мне ссылку на вопрос с сайта Nordic Semiconductor. Вот этот вопрос, дословно: «Какой BLE профиль будет удовлетворять ЭКГ сигналам наилучшим образом и есть ли пример кода для АЦП из этого профиля? Искал какое-то время и не могу найти его ».

Чарльз, и я вместе с ним, были ошеломлены. Кто-то создает критическую часть медицинского оборудование с, как нам представляется, ограниченным знанием протокола связи, который он будет использовать Он также планирует построить эту часть на референсном (если кто предложит хороший перевод этого термина буду благодарен — «образцовый и эталонный» не очень подходят — в русском языке эти два термина содержат несколько иной смысл, а «примерный» не звучит -примечание переводчика) ( мне подсказали в комментариях демонстрационный код -пп) коде от поставщика.
И что нам с ним делать, с этим кем-то?
Всего голосов 24: ↑20 и ↓4+16
Комментарии30

Первые шаги со Stellaris LM4F120 launchpad evaluation board

Время на прочтение9 мин
Количество просмотров28K
Завалялась у меня в столе плата Stellaris LM4F120, с которой я решил, наконец, разобраться. Писать будем программу, которая включает-выключает светодиоды, установленные на плату в ответ на нажатия имеющихся на плате кнопок.
Читать дальше →
Всего голосов 22: ↑22 и ↓0+22
Комментарии18

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

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

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

3D MC3 Мастер v1.1 или как я собрал свой первый 3D принтер

Время на прочтение3 мин
Количество просмотров60K
Так случилось, что свободное время совпало с большим желанием что-то сделать своими руками с нуля. Некоторое знакомство с контроллерами Arduino, автоматизацией процессов и окончание ремонта в доме натолкнули на мысль о создании робота-пылесоса. Все могло закончиться покупкой какого-нибудь готового изделия, но хотелось сделать все самому и с самого начала. Более того, даже спроектировать и изготовить все детали для него захотелось самостоятельно.

3D принтеры, для большинства, являются хобби или игрушкой, и лишь для небольшого процента людей — инструментом в достижении конечной цели. В моем случае такой принтер станет инструментом реализации вполне конкретной задачи: сделать всю механику, крепеж и корпус конечного устройства. Ну а чтобы не было скучно — принтер было решено собрать почти с нуля, то есть из KIT-комплекта. Выбор пал на новый принтер компании «Мастер Кит» 3D MC3 Мастер v1.1. Заехав к производителю, я получил на руки синий чемоданчик и отправился домой, для выполнения первого шага на пути к цели.


Читать дальше →
Всего голосов 22: ↑17 и ↓5+12
Комментарии32

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

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

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

Читать дальше →
Всего голосов 36: ↑29 и ↓7+22
Комментарии96

Делаем ИК-пульт ДУ для фотоаппарата

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


Как-то недавно мне понадобилось дистанционно управлять затвором зеркалки. Проводной вариант был отброшен, неудобно. Поискав по магазинам, нашел пульт ML-L3. Но отдавать за него тысячу рублей не хотелось, тем более что выполняемая функция на первый взгляд элементарная. Решил сделать сам. А тут, кстати, подоспели выходные и работа закипела…
Читать дальше →
Всего голосов 32: ↑32 и ↓0+32
Комментарии23

Простое управление вашим Arduino через web

Время на прочтение6 мин
Количество просмотров106K
Эта статья предназначена для новичков. Здесь будет описано как из web приложения при помощи ajax запросов посылать команды phyton скрипту, который будет передавать их через serial port непосредственно на наш arduino.
Вы приобрели себе Arduino, попробовали несколько примеров, поигрались со скетчами. Но вам этого мало, вы хотите управлять, управлять всем этим добром через интернет. Самый простой способ — это приобрести шилдик с Ethernet-портом и подключить его к Arduino (или приобрести платку с уже встроенным Ethernet ). Но она и стоит дороже и в управлении надо поднатаскаться.

Если интересно, тогда читаем дальше.
Всего голосов 16: ↑11 и ↓5+6
Комментарии4

Bubot — очень легкий фреймворк на Python 3 для программирования роботов и домашней автоматизации

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

Предыстория


Хотелось создать своего робота, а так же автоматизировать управление светом и климатом дома. С этой целью начал изучать имеющиеся возможности. Для себя я разделил все решения на две группы: системы в которых код на контроллере выполняется в одном главном цикле (arduino, lego и т.п.) и системы состоящие из параллельно работающих процессов обменивающихся между собой сообщениями.
Интуитивно выбрал вторую группу, так как хотелось найти максимально простое решение с дружественным пользовательским интерфейсом. Из наиболее популярных представителей этого «семейства» очень понравились Microsoft Robotics Studio и ROS. Но к сожалению, на текущий момент, привязать их к конкретному железу весьма не просто, да и разобраться в них с нуля так же весьма не тривиальная задача. В итоге принял решение писать сам, но «кодить» на C очень не хотелось, Душа просила чего-нибудь попроще и полегче. В итоге выбрал Python. А учитывая, что по мимо робота и «умного дома» в голову начало лезть куча других идей, то решил сразу сделать небольшой фреймворк, в котором основной упор был бы сделан на простоту разработки.

Концепция


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

Bubot - Схема

Сеть процессов строится на базе стандартного Python модуля multiprocessing. Система обмена сообщениями и разделяемая память реализованы при помощи Redis.

Каждый Bubot имеет встроенный веб-сервер веб-сервер Tornado, который позволяет контролировать состояние, управлять роботом, на ходу менять параметры (калибровать) робота, а также закладывается возможность обмена данными между роботами.
Bubot не является системой реального времени, хотя Bubot возможно интегрировать с кодом реального времени.
Читать дальше →
Всего голосов 18: ↑18 и ↓0+18
Комментарии10

Простая игровая тв-приставка на Arduino

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

Вступление


При свете дня, а затем и во сне, возникла у меня идея создания собственной регламентированной тв-приставки. Собственно, тут-то открылся передо мной богатый и насыщенный мир радиотехники. Так как ранее я не имел дела с серьезной разработкой электроники, мой выбор пал на более простой вариант — Arduino и ее самая распространенная модель — Uno.




План работы

1. Разобраться с библиотекой
2. Спаять плату видео вывода
3. Написать код
4. Вырезать корпус


Финальная внешняя составляющая не особо важна в случае с подобными проектами.

Шаг 1. Разбираемся, что к чему


После нескольких десятков минут отчаянного гугления пришел к выводу, что создать приставку даже типа Денди у меня не получится. Ну, что тут делать, раз взялся, буду доводить дело до конца.
Читать дальше →
Всего голосов 27: ↑26 и ↓1+25
Комментарии30

Командно-ориентированная навигация в xaml-приложениях

Время на прочтение5 мин
Количество просмотров4.6K
Недавно мы уже узнали о принципе прямых инжекции и эффективном связывании вью-моделей с представлениями, а также о том, каким образом создавать расширения привязки. Продолжим исследование библиотеки Aero Framework и рассмотрим ещё один архитектурный вопрос.

Навигация между представлениями (экранами) в xaml-ориентированных приложениях довольно важная и интересная задача. Особенно это касается её реализации в рамках паттерна MVVM. В идеале вью-модели не должны содержать никаких прямых ссылок на представления, чтобы быть кросс-платформенными и сохранялась возможность повторного их использования в нескольких проектах. Сегодня мы узнаем, как этого достичь.

Читать дальше →
Всего голосов 13: ↑12 и ↓1+11
Комментарии0

Превращение Android телефона в сетевую SQL базу данных (MyMobileSQLServer — Utesov)

Время на прочтение5 мин
Количество просмотров26K
Недавно я начал делать очередной проект для мобильных устройств. Его побочным продуктом стало приложение, с помощью которого можно развернуть сетевую базу данных на любимом Android телефоне, планшете и т.п… Предлагаемое решение является сетевым провайдером SQLite базы данных.

Приложение многопользовательское, каждый пользователь имеет свою БД, которая недоступна другим пользователям. Код открытый, лицензия Apache 2.0.

Для демонстрации заявленных возможностей написано простое приложение которое позволяет делать SQL запросы на сервер и получать результаты их выполнения, его код рассмотрим здесь. Время освоения — 10 минут. Для тестирования достаточно одного устройства (если используется два и более, то необходимо WiFi подключение). Поехали!

image
Кадр из к\ф «Весёлые ребята» (доработанный)
Читать дальше →
Всего голосов 16: ↑11 и ↓5+6
Комментарии13

В Android обнаружена опасная уязвимость

Время на прочтение1 мин
Количество просмотров19K
Компания Palo Alto Networks сообщила об обнаружении опасной уязвимости в компоненте установщика приложений (PackageInstaller) Android версий <5. Эта уязвимость схожа с уязвимостью Masque для iOS, о которой мы писали здесь, и позволяет устанавливать одно приложение поверх другого, причем это новое приложение получит доступ ко всем данным предыдущего. Речь идет об установке приложений из стороннего магазина приложений, а не из Google Play, поскольку, только при таком сценарии злоумышленники могут воспользоваться уязвимостью.



По подсчетам Palo Alto Networks, уязвимость охватывает 49,5% всех устройств, которые работают под управлением Android. Сам эксплойт был успешно протестирован на следующих версиях Android: 2.3, 4.0.3-4.0.4, 4.1.X, и 4.2.x. Уязвимыми являются некоторые прошивки с версиями Android 4.3. Для Android 4.4 эта уязвимость уже была устранена.

Читать дальше →
Всего голосов 19: ↑15 и ↓4+11
Комментарии4
1
23 ...

Информация

В рейтинге
Не участвует
Откуда
Санкт-Петербург, Санкт-Петербург и область, Россия
Зарегистрирован
Активность