Как стать автором
Обновить
303
0.3

Программист микроконтроллеров

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

Три поездки на таможню

Время на прочтение3 мин
Количество просмотров210K
Однажды один мой знакомый решил приобрести осциллограф. Ну, не долго думая мы нашли на ебэе один.


Читать дальше →
Всего голосов 130: ↑122 и ↓8+114
Комментарии133

STM32F4Discovery – подключаем камеру по интерфейсу DCMI

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

STM32F4Discovery – подключаем камеру по интерфейсу DCMI



Когда-то, подключая камеру от мобильного телефона к микроконтроллеру STM32F407VGT6 (который имеет место быть на плате STM32F4Discovery), я даже не думал о том, что данный контроллер имеет специальный аппаратный интерфейс для данного дела. Может быть, невнимательно читал даташит, но я всегда считал, что интерфейс DCMI имеется только у чипов в корпусах UFBGA176 и LQFP от 144 ног. Однако, не так давно, открыл для себя озвученную деталь: 100-ногий STM32F407 также имеет DCMI на борту.
Являясь большим любителем изучения и совместного запуска различного мобильного железа (в частности, LCD и камер) с МК, мимо такого открытия я просто так пройти не смог, и решил восполнить данный пробел в изучении периферии STM32. Собственно, данный материал и посвящен описанию осуществления возникшей затеи.
Читать дальше →
Всего голосов 51: ↑50 и ↓1+49
Комментарии22

Решение проблем, связанных с правилами наименования в Quartus II при использовании Schematic

Время на прочтение4 мин
Количество просмотров17K
Здравствуйте, Хабросообщество.

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

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

Проблема была в том, что я не мог использовать более 1 пина на одном IDC разъеме. Если на разъеме использовалось более 1 пина (2 и более) — то при проверке осциллографом разъем молчал.

Как выяснилось теперь — проблема заключалась в правилах наименования в Quartus II при использовании Schematic.

Всем тем, кому это будет полезно или интересно — прошу под кат.
Читать дальше →
Всего голосов 19: ↑17 и ↓2+15
Комментарии5

Уроки по электрическим цепям — линии передачи

Время на прочтение10 мин
Количество просмотров240K
Ещё не начав читать статью, попробуйте подумать над вопросом: побежит ли ток, если подключить к батарейке очень длинный провод(более чем 300 тысяч километров, сверхпроводник), если противоположные концы провода никуда не подключены? Сколько Ампер?

Прочитав эту статью, вы поймёте в чём смысл волнового сопротивления. Из лекций по теории волн я вынес только то, что волновое сопротивление — это сопротивление волнам. Большая часть студентов, кажется, поняла ровно то же самое. То есть ничего.

Эта статья — весьма вольный перевод этой книги: Lessons In Electric Circuits
Статьи по теме: На Хабре: Контакт есть, сигнала нет
Трэш в Википедии: Длинная линия

Читать дальше →
Всего голосов 99: ↑97 и ↓2+95
Комментарии62

Уроки по электрическим цепям — линии передачи, часть 2

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


Эта статья — перевод. Начало здесь.
Источник.

В программе:
1) Провода болтаются в воздухе, но источник тока/напряжения видит короткое замыкание.
2) На одном конце провода амплитуда равна 0 Вольт, а на другом — 1 Вольт. Как это возможно?
3) Согласование 75 Ом источника сигнала с 300 Ом нагрузкой при помощи правильно подобранного кабеля.

Стоячие волны и резонанс


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

На рисунке показано, как треугольная падающая волна зеркально отражается от открытого конца линии. Для простоты, линия передачи в этом примере показана как единая жирная линия, а не как пара проводов. Падающая волна идёт слева направо, а отражённая – справа налево.
Читать дальше →
Всего голосов 86: ↑86 и ↓0+86
Комментарии12

Little Computer People: прародитель Тамагочи и Sims

Время на прочтение1 мин
Количество просмотров15K
В 1985 году, за 10 лет до появления Тамагочи и за 15 – до Sims компанией Activison была выпущена игра о «маленьких компьютерных человечках». Создатели игры Байрон Нильсон и Ричард Голд.

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

Игра по сути, бесконечна, но мы не только наблюдаем за тем, как LCP занимаются повседневными делами – ездят в магазин или на работу, кормят собаку, говорят по телефону или смотрят телевизор. Можно вводить простые команды, которые персонаж волен выполнять или нет в зависимости от настроения (не дай бог вы ему предложите съесть его собаку, обидится смертельно и перестанет вас слушать). Сам LCP может предложить вам сыграть с ним в покер, написать письмо о своем состоянии и потребностях и многое другое.

Игра примечательна тем, что работала на компьютерах с небольшими мощностями, такими, как Amstrad и ZX Spectrum, и оставалось единственной в своем роде вплоть до появления The Sims в 2000 году.
Под катом видео игрового процесса с момента генерации персонажа до общения с игроком.
Всего голосов 48: ↑44 и ↓4+40
Комментарии13

Получение радиолюбительской категории

Время на прочтение3 мин
Количество просмотров71K
Тема любительской радиосвязи в формате «для начинающих» несколько раз уже поднималась на Хабре, но сама процедура получения радиолюбительской категории и позывного подробно не рассматривалась. Нужно заметить, что процедура эта довольно проста и, к тому же, бесплатна, но некоторое количество нюансов чисто бюрократическо-процедурного характера имеют место быть, поэтому инструкция может сэкономить кому-то немного времени.

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

Заинтересовавшихся прошу под кат.
Читать дальше →
Всего голосов 40: ↑38 и ↓2+36
Комментарии52

Blind Deconvolution — автоматическое восстановление смазанных изображений

Время на прочтение6 мин
Количество просмотров147K
Смазанные изображения — один из самых неприятных дефектов в фотографии, наравне с расфокусированными изображениями. Ранее я писал про алгоритмы деконволюции для восстановления смазанных и расфокусированных изображений. Эти, относительно простые, подходы позволяют восстановить исходное изображение, если известна точная траектория смаза (или форма пятна размытия).
В большинстве случаев траектория смаза предполагается прямой линией, параметры которой должен задавать сам пользователь — для этого требуется достаточно кропотливая работа по подбору ядра, кроме того, в реальных фотографиях траектория смаза далека от линии и представляет собой замысловатую кривую переменной плотности/яркости, форму которой крайне сложно подобрать вручную.


В последние несколько лет интенсивно развивается новое направлении в теории восстановления изображений — слепая обратная свертка (Blind Deconvolution). Появилось достаточно много работ по этой теме, и начинается активное коммерческое использование результатов.
Многие из вас помнят конференцию Adobe MAX 2011, на которой они как раз показали работу одного из алгоритмов Blind Deconvolution: Исправление смазанных фотографий в новой версии Photoshop
В этой статье я хочу подробнее рассказать — как же работает эта удивительная технология, а также показать практическую реализацию SmartDeblur, который теперь тоже имеет в своем распоряжении этот алгоритм.
Внимание, под катом много картинок!
Читать дальше →
Всего голосов 243: ↑239 и ↓4+235
Комментарии150

Мобильный телефон своими руками. Часть 2

Время на прочтение5 мин
Количество просмотров119K
В первой части мы рассмотрели «железную» часть проекта, в этой части мы приступим к экспериментам с устройством.


Модуль M10-TE-A, основа нашего телефонного аппарата.

Читать дальше →
Всего голосов 75: ↑74 и ↓1+73
Комментарии28

От программирования к железу или «Почему оно не работает?».Ликбез

Время на прочтение9 мин
Количество просмотров146K
image
Привет Хабр. В последнее время среди программистов все больше стала набирать популярность цифровая электроника, появляются все новые платформы, позволяющие без каких либо особых знаний в электронике собирать различные устройства. Сам я начинал заниматься аналоговой электроникой, позже — цифровой и программированием. Многие же — наоборот — сначала программированием, а потом пытаются заниматься железом, при этом знания по части электроники практически нулевые и люди не знают/не понимают элементарных для олдфажного электронщика вещей. В данной статье я постараюсь затронуть наиболее важные на мой взгляд моменты, как по части проектирования схем, так и по части разводки плат. Надеюсь мои советы помогут миновать некоторые грабли
Читать дальше →
Всего голосов 140: ↑138 и ↓2+136
Комментарии36

Фильтр Калмана

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


В интернете, в том числе и на хабре, можно найти много информации про фильтр Калмана. Но тяжело найти легкоперевариваемый вывод самих формул. Без вывода вся эта наука воспринимается как некое шаманство, формулы выглядят как безликий набор символов, а главное, многие простые утверждения, лежащие на поверхности теории, оказываются за пределами понимания. Целью этой статьи будет рассказать об этом фильтре на как можно более доступном языке.
Фильтр Калмана — это мощнейший инструмент фильтрации данных. Основной его принцип состоит в том, что при фильтрации используется информация о физике самого явления. Скажем, если вы фильтруете данные со спидометра машины, то инерционность машины дает вам право воспринимать слишком быстрые скачки скорости как ошибку измерения. Фильтр Калмана интересен тем, что в каком-то смысле, это самый лучший фильтр. Подробнее обсудим ниже, что конкретно означают слова «самый лучший». В конце статьи я покажу, что во многих случаях формулы можно до такой степени упростить, что от них почти ничего и не останется.
Читать дальше →
Всего голосов 178: ↑173 и ↓5+168
Комментарии84

LogicDiscovery — простой логический анализатор

Время на прочтение5 мин
Количество просмотров104K
Довольно часто в домашних электронных поделках возникает необходимость посмотреть тот или иной сигнал, причем достаточно его цифрового представления — что передает МК по I2C, правильно ли настроен ШИМ и т.п. Если на работе есть хороший осциллограф, то покупать его для дома — слишком дорогое удовольствие, особенно, когда необходимость возникает лишь от случая к случаю.
В последнее время появились недорогие (в пределах $50) логические анализаторы, однако меня от их покупки всегда останавливало одна мысль: штука то предельно простая, почему бы не сделать её своими руками из подручных материалов?
В данной статье я расскажу, как сделать простой логический анализатор с минимальными финансовыми затратами — все что нужно это отладочная плата Stm32F4Discovery.
Читать дальше →
Всего голосов 39: ↑36 и ↓3+33
Комментарии21

13 причин не быть управленцем

Время на прочтение12 мин
Количество просмотров464K
Так уж сложилось, что последние несколько лет я занимал самые разнообразные руководящие должности в полудюжине компаний, занимающихся разработкой программного обеспечения разного рода. Довелось побывать и тимлидом, и менеджером проекта, и группы проектов, руководителем отдела и руководителем технического направления; подопечных бывало от двух до ста пятидесяти человек, да и размеры компании варьировались от трёх до двухсот тысяч работников. Неизменным оставалось только одно: чисто управленческая работа, постепенный и окончательный отход от технических задач.

А сейчас, в период между Рождеством и Новым Годом, когда особенно обострена склонность к углублённой рефлексии, приходит понимание того, что, знай я некоторые «инсайдерские» подробности управленческой деятельности заранее – сделал бы совсем другой выбор лет эдак семь назад.

Вот поэтому и родился этот немного хаотичный и очень разнокалиберный список моментов, которые очень хотелось бы передать куда-то обратно, примерно в 2005 год – дайте знать, если кто-то вдруг уже научился это делать! А пока, может быть кто-то найдёт некоторые из перечисленных ниже пунктов не до конца очевидными, или даже полезными для себя; было бы приятно осознавать, что удалось помочь кому-то сделать более осознанный выбор профессии – или просто о чём-нибудь важном задуматься.
Итак, поехали
Всего голосов 441: ↑410 и ↓31+379
Комментарии340

WPF, WinForms: рисуем Bitmap c >15000 FPS. Хардкорные трюки ч.1

Время на прочтение4 мин
Количество просмотров43K
Сразу уточнение: Bitmap 200x100 на компе с быстрой памятью и i7 3930K на 1366. Но, это честный System.Drawing.Bitmap.
Вводная: приложение типа осциллографа. Ссылка на готовый проект с фронтэндом в конце статьи.
Как же быстро рисовать его на экран? WriteableBitmap хорош, быстр, и он лучшее решение для WP, WinRT, WPF. Но занудного старпёра-кодера также волнует WinForms, .Net 2.0, Win2K (да-да, в некоторых гос.органах до сих пор теплый ламповый Win2K).
Далее, я обратил внимание на DirectX, тем более у нас для WPF появился полезный контрол D3DImage. Я перепробовал много движков, но ни один из них не давал удобного изящного способа рисовать GDI+ Bitmap из памяти. Некоторые работали и вовсе только с DX10-11. Ближе всех к цели оказался SlimDX. В любом случае, фронтэнд для контрола оказывался некрасивым. Все эти движки… мягко говоря избыточны, для моей простой задачи.
Но решение есть
Всего голосов 48: ↑40 и ↓8+32
Комментарии39

О полетном контроллере MultiWii (коптеры, самолеты и вертолеты)

Время на прочтение7 мин
Количество просмотров49K
ВНИМАНИЕ, статья устарела, но её всё еще можно использовать в ознакомительных целях
Захотелось внезапно рассказать подробнее об открытом и свободном проекте для управления различными летательными аппаратами (ЛА). Вообще до недавнего времени он был рассчитан только на мультиротороные системы (коптеры), стабилизацию подвеса камеры и в бета версии была стабилизация для летающего крыла, но судя по dev прошивкам в скором времени будут официально добавлены самолеты и вертолеты, а стабилизация полета летающего крыла уже вышла из стадии бета тестирования.
Если вам всё еще интересно что это за зверь, прошу под кат
Всего голосов 37: ↑36 и ↓1+35
Комментарии46
12 ...
20

Информация

В рейтинге
2 294-й
Откуда
Москва и Московская обл., Россия
Зарегистрирован
Активность

Специализация

Embedded Software Engineer