Category Archives: Готовые устройства

Пошаговые инструкции по сборке устройств.

Модуль ПЛИС Altera MAX II EPM240T100C5 для Pinboard II


Линейка процессорных модулей для PB2 неспешно пополняется новыми персонажами. После STM8 и PICа с езернетом к ней добавился модуль с ПЛИС.
 

Для тех, кто эти четыре буквы видит впервые — ПЛИС это программируемая микросхема, поведение которой можно задавать на уровне отдельных логических элементов (И, ИЛИ…). Как если бы мы рисовали схему на логике. Внутри она состоит из однотипных блоков (logic blocks), соединенных между собой. Функцию каждого блока и соединения между ними можно программировать, задавая ту логику работы, которая тебе нужна. В итоге мы имеем устройство, которое делает именно то что необходимо, не совершая никаких лишних действий. И делает это очень быстро. Во первых за счет того, что даже простые ПЛИС (как наша) могут работать с высокими тактовыми частотами (на модуле установлен генератор на 100Мгц, например). Во-вторых, в ПЛИС (в отличие от МК) нету ядра, конвеера, памяти с командами. Алгоритм работы, который мы описываем на специальном языке HDL — Hardware definition language, синтезируется в готовую логическую схему, а не последовательность команд.
 
(далее…)

Read More »

Универсальная плата FT2232

Вот уже два года я юзаю маленькую платку с FT2232 в качестве программатора и отладчика. Я выкладывал ее проект еще давно. Как видно, это интерфейсная часть выдернутая из Pinboard II. И вот я решил запилить себе его фабричный образец и, чуток подредактировав, сунул в общий заказ с модулями. Теперь у меня их под 300 штук.
 


 
Комплектуха уже в пути, монтажники уже нервно потирают рукоятки паяльников. Так что скоро оно появится в моем магазинчике.
 
(далее…)

Read More »

Модуль PIC18F67J60 для Pinboard II


 
Коллекция модулей для Pinboard II пополнилась еще одним необычным девайсом. На этот раз это PIC, но не общего назначения, а специализированный, со встроенным 10Base-T Ethernet контроллера с интегрированным MAC и PHY.
 

  • Семейство: PIC18
  • Разрядность: 8 бит
  • Частота: до 40MHz
  • Флеша: 128KB
  • ОЗУ: 3.84KB
  • Периферия: ADC, Comparator, PWM, Timer
  • Интерфейсы: Ethernet, EUSART, I2C, SPI
  • Тактовый генератор: внешний и внутренний.
  • Питающее напряжение: 2…3.6V
  • Корпус: TQFP 64

 

Причем физический уровень реализован внутри МК, т.е. развязывающий трансформатор вешается прям на контроллер. Фактически, на одном только разъеме, кварце и микроконтроллере да мизерной обвязке можно сделать самодостаточный вебсервер. Под него Microchip написал неплохую библиотечку реализующую TCP-IP стек.
 
(далее…)

Read More »

Pinboard II REV 2

Тихой сапой я обновил базовую плату Pinboard II выпустив вторую ревизию.
 

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

Read More »

Модуль STM8L для Pinboard II


 

Автор статьи и разработчик модуля dcoder
 
Контроллеры от STM плодятся с ядерной скоростью и почти заполонили всю планету. Для STM32 у нас модуль уже есть, а теперь пришла пора STM8. Контроллер линейки L я взял потому, что они выглядят более вкусными по сравнению с S серией — более продвинутая периферия более низкое потребление. Правда у них нету CAN, вот. И хоть сверхнизкое потребление для нашей платы погоду не делает, серию S я использовать не захотел. Кроме того, устройство периферии у S и L практически одинаковое, так что изучив L можно смело садиться и писать код под S.
 

Описание
На модуле установлен МК STM8L152K6T6.
 

Не самый продвинутый МК из линейки STM8, но точно выше среднего. Практически весь набор периферии, которой есть у топовых МК есть и у него. Разница лишь в объеме памяти, количестве выводов и некоторых фичах вроде второго канала DAC. Характеристики у нашего МК такие:
 

  • 32 Кб flash памяти, 2 Кб RAM, 1 Кб EEPROM
  • 28 линий GPIO
  • АЦП ПП 12 бит, 21 канал (!), до 1MSPS на быстром канале и до 760 кГц на всех остальных. А еще у него встроенный градусник.
  • ЦАП 12 бит, 1 канал
  • Интерфейсы: USART (IrDA, синхронный режим), SPI, I2C, SWIM
  • Контроллер ЖК дисплея: 4 разряда по 17 сегментов
  • Максимальная частота: 16 Мгц
  • Диапазон напряжений питания 1.8 – 3.6 Вольт
  • Часы реального времени (RTC). Кварц 32.768кГц установлен на плате.

 
(далее…)

Read More »

Pinboard II. Концепция краевого модуля

На Pinboard II есть боковой разъем расширения, вот его распиновка:

Туда можно выткать какую-либо периферию. Например сейчас разрабатывается и скоро пойдет в производство модуль двухканального RS232/RS432 с гальванической развязкой (опционально) каналов. Но речь не о нем, а о общей концепции при создании таких модулей.

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

  • Полная: Процессорный блок — главная плата — краевой модуль. Допускающая удобную и быструю перешивку проца, связь с компом по интерфейсам, отладку и прочие блага наличия FTDI и всяких примочек демоплаты.
  • Удаленная: Процессорный блок — краевой модуль + внешнее питание с адаптера. Что удобно когда надо закинуть, например, наш блок куда-нибудь в автономное плавание. И дать ему там побыть одному, половить глюки и баги. Причем не занятый краевой разьем модуля расширения может дополняться чем либо еще. Например какими нибудь доп интерфейсами (плата расширения на плату расширения :) ), или как под доп входы-выходы под управление использоваться. Этот режим чем то напоминает концепцию Arduino + Shield где в роли арудины наш процессорный модуль, а в роли шилда краевой модуль расширения. Конечно можно в таком режиме его и на постоянное дежурство куда-либо повесить, но это нерационально.

(далее…)

Read More »

Отладочная плата Pinboard II

Собрав многолетний экспериментаторский опыт, а также два года непрерывной эксплуатации платы Pinboard 1.1, я разработал новую демоплату, куда более совершенную и функциональную — Pinboard II.

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

(далее…)

Read More »

FT2232D и AVR. Прошивка и отладка по JTAG

AVRdude Bitbang
Поскольку я привык к связке avrdude+sinaprog то менять ее на что либо совершенно не хотелось. Поэтому в первую очередь я решил проверить, а можно ли юзать FT2232 в том же режиме, что и FT232RL. И пнул дудку в адрес включенной FTDI. Она мне отозвалась, что мол устройство ft0 найдено и работает, но вот контроллер не подключен. Ожидаемо. Осталось только выяснить соответствие выводов у FT2232 и написать конфиг для avrdude.

Все оказалось проще чем я думал. С точки зрения avrdude микруха FT2232 представляет собой всего лишь две FT232R которые она видит как ft0 и ft1 (ну либо другие ft в зависимости от числа FTDI микросхем воткнутых в систему). А дальше все оказалось совсем элементарно — выводы шины ADBUS принадлежали интерфейсу ft0, а BDBUS устройству ft1. Логично, чо.
(далее…)

Read More »

Интерфейсный модуль на FT2232D

Есть одна замечательная микросхемка — FT2232D. Это конвертер USB-UARTx2. Удобно когда надо получить два UART хвоста из одного USB провода. Но это семечки по сравнению с тем, что в эту микруху FTDI внедрили мощную аппаратную поддержку MPSSE (Multi-Protocol Synchronous Serial Engine), что позволяет на одной только этой микрухе реализовать кучу разных интерфейсов вроде SPI или JTAG.
Что дает просто широчайший простор под построение разнокалиберных программаторов под все что угодно. На данный момент я видел схемы для прошивки AVR, ARM, Altera и бог еще весть чего.

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

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


(далее…)

Read More »

Сопроцессор ввода — вывода

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

Реклама есть, да вот саму микросхему найти не удалось. А ведь до чего хорошая идея — иметь внешнее устройство, которое показывает само по себе — налицо экономия ножек основного процессора, упрощение разводки платы, экономия места во флешке, в памяти, экономия вычислительной мощности. Да и проще и лаконичнее выглядит такое решение. Уговорили, будем делать.

Из тини 2313. Кроме самого экранчика и тиньки нужны будут диоды, по количеству строк в матричной клавиатуре, чтобы поддерживать множественные нажатия, транзистор, чтобы управлять подсветкой экрана, несколько резисторов и конденсаторов. Кварц, конечно же кварц! Если общение с основным процессором будет идти через последовательный порт с высокими скоростями, нужен кварц, потому что изменения частоты встроенного генератора на 5-10% в зависимости от температуры, я видел своими глазами.
(далее…)

Read More »

Ключ от всех дверей 2

В последнее время часто приходится таскать с собой несколько домофонных ключей (aka iButton).

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

Эмулятор
К счастью альтернатива оказалась, в буквальном смысле, под рукой.
Маленький эмулятор ключей на базе ATTiny13V-10SSU. Сделан он был в начале лета, эксперимента ради.
После пары испытаний, валялся без дела у меня в ящике, как инопланетное оружие в зоне 51. Главное его достоинство заключается в том, что ему не нужно внешнее питание. При работе эмулятор питается от домофона, что избавляет от возни с батарейками.
(далее…)

Read More »

Повышающий DC-DC преобразователь. Принцип работы.

Иногда надо получить высокое напряжение из низкого. Например, для высоковольтного программатора, питающегося от 5ти вольтового USB, надыбать где то 12 вольт.

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

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

Чтобы было предельно понятно покажу вначале пример для сантехников.

Фаза 1

Заслонка открывается и мощный поток жидкости начинает сливаться в никуда. Смысл лишь в том, чтобы этим потоком как следует разогнать турбину. Накачать ее энергией, передав энергию источника в кинетическую энергию турбины.
(далее…)

Read More »

Проектирование печатной платы и изготовление устройства в Eagle Cad на примере PICKit2

Предыстория
На днях возникла необходимость собрать программатор PicKit2, да и сам программатор хотелось сделать маленьким, дабы можно было удобно с собой таскать. Как раз на форуме видел несколько тем про двухсторонние платы по методу ЛУТ или ЛЛТ, в частности про изготовление двухсторонних плат, в которых основная засада это совмещение двух сторон идеально точно. Постараюсь на конкретном примере именно этого программатора рассказать, как это делаю я. Разумеется, в своем повествовании буду использовать программу Eagle Cad.

Недавно DI HALT на своем сайте публиковал ряд статей по Eagle Cad (Часть 1, Часть 2 и часть 3)

Программа сама по себе довольна интересна, хотя и заточена на автоматическое производство и сравнивать ее с Sprint Layout не имеет смысла, т.к это две абсолютно разные программы. Каждая из которых хороша для своих масштабов.

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

Но я немного отвлекся… Итак, скачали Eagle Cad, установили ту версию какая нравится (Demo или порыскали и нашли ключик), прочитали прошлые статьи и получили примерное представление о том что же представляет из себя Eagle Cad.

Последняя версия на данный момент Eagle Cad 5.10.0, вот в ней и будем рисовать, трассировать, печатать и потом делать наш программатор PicKit2.

(далее…)

Read More »

ИК дистанционное управление

Завязка или «Как начинался девайс»

…Когда я пришёл, Виктория сидела на диване, уставившись в телевизор. День выдался тяжёлый, поэтому ей не хотелось ничего делать. Несколько минут мы смотрели какой-то попсовый сериал, потом он закончился, и Вика выключила телевизор. В комнате стало темно. На улице шумел дождь, и от этого казалось, что дома тоже холодно.
Вика поднялась с дивана и принялась, на ощупь, искать выключатель от светильника. Настенный светильник висел, почему-то, не у дивана, а на другой стене и приходилось топать через всю комнату, чтобы зажечь свет. Когда она, наконец, включила его, комната наполнилась тёплым светом лампочки накаливания.
Около меня, на помятой простыне, лежал пульт от телевизора. Нижние кнопки без опознавательных знаков и, скорее всего, не использовались. И тут у меня возникла интересная мысль…
— Вик, а хочешь, я сделаю так, что твой светильник можно будет пультом от ящика включить? Там даже кнопки лишние есть…

Концепция
Наше устройство должно уметь принимать сигнал с ИК-пульта, отличать «свою» кнопку от других, и управлять нагрузкой. Первый и последний пункты простые, как топор. А вот со вторым немного интереснее. Я решил не ограничиваться каким-то конкретным пультом (Почему? – «Не интересно так!»), а сделать систему, которая может работать с разными моделями пультов от разной техники. Лишь бы ИК-приёмник не спасовал, и уверенно ловил сигнал.

Ловить сигнал будем с помощью фотоприёмника TSOP. Причем не каждый приёмник подойдёт – несущая частота должна совпадать с частотой пульта. Несущая частота приёмника указана в его маркировке: TSOP17xx – 17 это модель приёмника, а хх – частота в килогерцах. А несущую частоту пульта можно найти в документации или в инете. В принципе, сигнал будет приниматься, даже если частоты не совпадают, но чувствительность будет фиговой – придётся тыкать пультом прямо в приёмник.
(далее…)

Read More »

Детектор звуков

Привет! Сегодня мы будем собирать акустический датчик.

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

Преобразовать звук в электрический сигнал можно двумя способами: с помощью пьезодинамика или микрофона. На выходе у них напряжение. У пьезодинамика, в состоянии покоя выход = 0В, а у микрофона, обычно, около 2В, в зависимости от подтягивающего резистора.

Пьезодинамик подойдёт не всякий. Простая «пластинка с двумя проводками» имеет маленькую чувствительность, хотя если её запихнуть в резонатор, то, наверное, станет лучше. Идеально подходят пьезодинамики марки 3П-22. Это такая кругляшка 3 см в диаметре, с отверстием в центре. Выглядит так:

Такие стоят в совковых часах с будильником, и ещё много где.
(далее…)

Read More »

Пульт дистанционного управления для фотоаппаратов Canon и Nikon

Сильмаллирион
Случилось так, что примерно в одно и то же время у одних знакомых появился фотоаппарат Nikon, у другой знакомой — Canon, а в интернете я наткнулся на замечательную статью про пульт ДУ к ним.

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

Братство Кольца
Немного теории, найденной на просторах интернета:
для фотоаппаратов марки Canon собирается пульт RC-1 (RC-5 это такой же пульт, только без «моментального спуска»)

-Несущая частота 33 кГц:
-команда «Спуск»: посылка 480 мкс, пауза 7324 мкс, посылка 480 мкс
-команда «Спуск с 2 сек. задержкой»: посылка 480 мкс, пауза 5371 мкс, посылка 480 мкс

Важно!
Не у всех фотоаппаратов Canon есть ИК приёмник (обычно расположен на ручке, под спусковой кнопкой). Смотрите инструкцию к своему фотоаппарату!

Nikon выбрал себе алгоритм похитрее, но всё равно мы и его скопируем:

-Несущая частота 40 кГц:
-команда «Спуск»: посылка 2250 мкс, пауза 27600 мкс, посылка 650 мкс, пауза 1375 мкс, посылка 575 мкс, пауза 3350 мкс, посылка 650 мкс. Потом пауза в 63 мс (милли- не микро-!!!) и повтор всей последовательности еще один раз

(далее…)

Read More »

3D LED глобус

12 years ago….
Давным давно… в далёкой галактике….. ))) Ну… в общем не так уж и давно, всего-то лет 12 назад, жил был мальчик, в небольшом БАМовском посёлке :) Все нормальные мальчишки в его возрасте, интересовались девченками и сигаретами :) но он напротив — целыми днями просиживал дома, за куренем журнала ЮТ или «Техника Молодежи»…. Рос не особым батаном, но и разгильдяем уж таким тоже не был.. в общем так… нормальный, поселковый сорванец :)

И его всегда интересовали всякие там игрушки (механические, с электроприводом естественно ), руки так и чесались у него что-нить раскурочить — авось что-нить вкусненького найду? Так вот…. Попалось ему на глаза, в одной передаче (по моему «спокойной ночи малыши») одна интересная весч…Там был показан концепт типа — «планета с бегущей строкой вокруг неё»

Мальчик был потрясён до глубины души! Ещё бы! Это же почти голограмма!!! Живое воплощение любимых фантастических фильмов в стиле Звёздных войн!

Итак, была поставлена цель — сотворить такую же штуку любыми, доступными уму и телу, способами :) И вот что в итоге вышло (далее…)

Read More »