Обжимные клещи для ответных частей (BLS) штырьевых контактов (PLS)

Один из самых ходовых разъемов это PLS пара BLS
 


 

Их я пихаю везде где только можно. Они дешевые, удобные, надежные. Одно только парило — оконцовка BLS делается с помощью спец клещей, а я их нигде найти не мог. Гугление клещей под такой разъем ничего вразумительного не давало, а то что продавалось не подходило. Решал вопрос обжима этих контактов простой пайкой. Не очень быстро, зато надежно.
 

И вот таки мне удалось найти подходящие клещи:
 

Зовутся они YAC 12 (JST)/YAC 13(MOLEX).
 


 
Читать далее

Рубрика: Инструмент | Метки: , , | Комментарии (48)

Установка и конфигурация FreeRTOS

На самом деле это скорей интеграция ее в проект. С технической точки зрения выглядит как подключение библиотек. Как той же CMSIS или SPL. Добавляем инклюдники, добавляем файлы в проект и все. Можно взять готовый пример и переколхозить, но в этом случае есть шанс прозевать какие-нибудь детали и получить странные эффекты. Поэтому начну с нуля, в качестве основы будет модуль Pinboard STM32F103C8T6 и Keil uVision. Под него все мы и соберем.
 

▌Качаем ОС
Тащим архив с freertos.org. Это довольно толстая солянка где 99% занимают примеры под разные архитектуры. Вот его примерная структура:

 

Вся ОС по большей части прячется вот в этих нескольких файлах:

  • queue.c — функции очередей и мутексов
  • tasks.c — функции работы с задачами
  • timers.c — функции работы с таймерами
  • croutine.c — функции работы с сопрограммами
  • event_groups.c — функции работы с флагами
  • list.c — тут все для отладки
  • port.c — платформозависимые параметры. У каждого МК этот файл свой
  • portmacro.h — настройки платформы. Тоже индивидуальный для каждого типа МК
  • FreeRTOSConfig.h — настройки ОС. Платформозависимо, а еще зависит от целей и проекта

 
Читать далее

Рубрика: ARM. Учебный курс | Метки: , , , , , , | Комментарии (42)

FreeRTOS для чайников. Краткое описание.


Бытует мнение, что RTOS это некий хардкор для избранных. Что там все сложно, замудрено и новичкам туда соваться бестолку. Отчасти тут есть доля истины, такие системы крайне сложны в отладке, но и то лишь тогда, когда вы забиваете контроллер под завязку и работаете на пределе оперативной памяти и быстродействия. Тогда да, словить какой-нибудь dead lock или пробой стека можно на раз. И попробуй найти где это случилось в этой асинхронной системе. Но простые задачи на RTOS реализуются еще проще и с меньшим количеством мозга.
 

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

▌FreeRTOS?
Почему именно она? Она популярна, она Free и она портирована на огромное количество архитектур, под нее существуют плагины для Keil и IAR и всякие примочки для PC. При этом она довольно легкая и функциональная.
 

Я не буду вам сейчас тут расписывать все эти прототипы функций, порядок записи, технические тонкости и прочее. Это все есть в технической документации и в замечательном цикле статей Андрей Курница, что был в журнале Компоненты и Технологии в 2011 году. PDF статьи вы найдете в конце.
 

Я лишь на пальцах и псевдокоде быстро распишу те инструменты которыми владеет FreeRTOS, чтобы когда вы будете читать более подробную документацию за деревьями не потеряли лес :)
 

Ну и все сказанное тут справедливо и для большинства других RTOS. Т.к. механизмы в целом все одни и те же и никто ничего нового еще не придумал.
 
Читать далее

Рубрика: ARM. Учебный курс, Начинающим | Метки: , | Комментарии (39)

Производственное

Итак, у нас монтажники, наконец то, пользуясь весенне-летним затишьем намолотили продукции и теперь есть складские запасы. И теперь можно заняться сборкой тех модулей которые закончились и были убраны из магазина. В частности уже вернулся модуль под Altera MAX2. Который пропадал со складов.
 

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

Хотя, в целом, Почта России последнее время радует. По крайней мере сроками и надежностью доставки внутри страны. Редкая посылка едет больше двух недель.
 

▌Дилерская сеть и дружественные магазины
А еще у нас с некоторых пор есть свой дилер на Дальнем Востоке. Это магазин Далькон, что присутствует во Владивостоке.
 

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

Если будут желающие, то можно на базе chipster.ru организовать то же самое и в Москве. Сейчас как раз есть излишки, которые я могу Диме сгрузить.
 

Рубрика: Новости | Метки: | Комментарии (8)

Управление большим количеством светодиодов через Binary Angle Modulation

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

▌А что не так с ШИМ?
Да все с ним хорошо, только аппаратных каналов обычно всего несколько штук. А программный ШИМ имеет ряд недостатков. Да, можно взять и на базе алгоритма управления кучей сервомашинок, используя всего один таймер собрать многоканальный ШИМ, но сколько у нас будет вызовов прерываний?
 


 

Каждый отдельный фронт потребует своего прерывания на смену уровня. А представьте, что у нас этих каналов будет не 4, а 40? Или 400? Да контроллер из прерываний вылезать не будет. Прерывания будут налезать друг на друга, порождая джиттер. Не говоря уже о том, что все эти каналы надо будет при любом изменении скважности заново сортировать по длительности. В общем, тупилово будет еще то.
 

▌Нас спасет BAM
Но решение есть. Зовется этот метод BAM. Суть его в том, что мы включаем нагрузку импульсами, поразрядно, с длительностью равной весу разряда.

 

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

 

Интегрируется все аналогично обычному ШИМу. Но есть ряд нюансов:

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

 
Читать далее

Рубрика: AVR. Учебный курс | Метки: , , , , , | Комментарии (24)

Двойная кнопка как на фотоаппарате

Вертел тут в руке две кнопочки от нефиг делать и случайно образовалась идея.

 

Если их поставить друг на дружку, например вот так:
 


 

То получится двухстадийная кнопка, как на фотоаппарате, где полунажатие фокус, а дожатие — кадр. Конечно кнопки стоящие друг на друге включаются хаотично, то одна то другая, но вот сам переход одна кнопка/две кнопки тактильно чувствуется очень хорошо, пожалуй даже четче чем на фотоаппарате. Прям так явно, один щелчок, второй щелчок. Попробуйте сами!
Дальше остается программно разделить состояние 11 от 01/10 и готово.
 

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

Рубрика: Радиолюбительские Технологии | Метки: | Комментарии (36)

Шо? Не работает?

Конечно не работает. Это ведь картинка :))) Весь вечер сидел и клеил скриншоты в одну длинную морду сайта :)))) С 1 апреля всех :)

Рубрика: Новости | Комментарии (26)

Модернизация модуля для Pinboard II AVR Happy Jtag ICE до JTAG ICE I


Архив с необходимым софтом

Рубрика: Готовые устройства | Метки: , , , , , , | Комментарии (44)

BOSCH GluePen


Хорошая вещь соплемет, особенно когда надо что-то по быстрому прихватить или закрепить. Провод там к плате, магнитик на стенку, чтобы какой-нибудь инструмент подвесить. В общем, вещь очень хорошая, но есть у него ряд недостатков, как по мне. Это:
 

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

 

И я задался найти себе такой говномет, чтобы он был лишен этих недостатков. И нашел таки.
Читать далее

Рубрика: Инструмент | Метки: , | Комментарии (43)

ARM. Учебный курс. Внешние прерывания

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

У STM32 за внешние прерывания отвечает EXTI контроллер. Его основные возможности:
 

До 20 линий прерываний (в реальности несколько меньше, зависит от контроллера)
Независимая работа со всеми линиями. Каждой линии присвоен собственный статусный бит в спец регистре
Улавливает импульсы длительность которых ниже меньше периода частоты APB2
 

EXTI Может генерировать:

  • Прерывания — это когда происходит переход на обработчик
  • События — когда обработчик не вызывается, просто поднимается флажок. Может разбудить проц или пнуть какую периферию, АЦП, например.
  • Софтверные прерывания — то же самое, что и обычные прерывания, но мы их вызываем вручную, записью бита в регистр.

 
Читать далее

Рубрика: ARM. Учебный курс | Метки: , | Комментарии (16)

Видео лекции по электронике

Набросили мне тут в комментах отличный канал на ютубе с записями лекций по электронике из СПбГЭТУ ЛЭТИ настоятельно рекомендую их посмотреть всем. Там много, только курс по источникам питания содержит 105 записей. А есть еще по аналоговой схемотехнике и по радиоприему. Плюс постоянно добавляют новые.
 


 

Если знаете аналогичные сборники от других вузов — набрасывайте в комменты или кидайте мне в почту dihalt@dihalt.ru
 

Так, а вот еще один похожий:
РФПГУ им. Т.Г.Шевченко

Рубрика: Начинающим | Метки: , | Комментарии (38)

Паяльная станция Hakko FX-888. Обзор и доработка

 

Вообще этот обзор я должен был написать еще в 2011 году, но мне все было лень переделать станцию, а без переделки отчет писать моветон :). А обещанного, как известно, три года ждут. Вот и дождались…
 

Итак… Все началось с того, что мне внезапно захотелось прекрасного. Не, ну вот в самом деле. Сколько можно паять подделками под Hakko, когда можно купить Hakko самый настоящий и сравнить стоило ли оно того?
Взор мой пал на станцию FX-888 как шедшую на замену Hakko-936. Т.е. это простая аналоговая станция, с крутилкой на морде, а внутре у нее неонка. Помимо прекрасного захотелось мне еще и простоты :) Что в ней хорошего? А вы разве сами не видите какая она няшная?
 

 

Так как toolboom с Hakko не дружит (фу таким быть!) пришлось искать другого поставщика. Поставщика я нашел, но имя его я вам не скажу, т.к. они редиски и меня вероломно обманули! На вопрос какую именно паяльную станцию мне нужно я сказал КРАСНЕНЬКУЮ! А приехало то, что приехало. Еще и ждал месяц, хотя это и было оговорено в сроках поставки.
 

Что же мне приехало? Вот об этом ща я и распишусь на пол десятка экранов.
 
Читать далее

Рубрика: Инструмент | Метки: , , , , | Комментарии (57)

Сверлильный станок PROXXON TBM 220


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

Выход тут есть — твердосплавные сверла. Это вообще адовая вещь. Предназначенное для сверления плат в промышленных масштабах. Тупится в порядок дольше. Но у них есть одна большая проблема — невероятная хрупкость. Такое ощущение, что они стеклянные. Я на ручной сверлилке героически просверлил ими целых три отверстия! У некоторых и одно не получается :) Так что тут однозначно нужен станок. Да не абы какой, а без люфтов, чтобы сверло шло строго вертикально, не болталось, не било. Иначе все тлен.
 

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

Итак, пошел я и купил себе сверлильный станок. Самый маленький оказался Proxxon TBM 220. Технику эту я люблю, у меня от них тисочки няшные есть, до сих пор не нарадуюсь. Штука дорогая, мне обошлась тут, в Челябинске, в 9250 рублей. Были и еще варианты, о них ниже, но я решил не экономить и не колхозить. Иначе будет либо непонятный шлак, либо, зная себя, все это затянется на неопределенный срок.
 
Читать далее

Рубрика: Инструмент | Комментарии (104)

Инструментальная мелочевка. Часть 3

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

Мне тут с год назад довелось корячить одно устройство, которое мы с боями пускали в малую серию. Это был маленький блочек, особенность конструкции была в том, что она была ущербной чуть более чем полностью. Но иначе в такие габариты не впишешься. Плюс была жесткая завязка на конструктив. Минимальный размер компонентов — 1206, удобство ручного монтажа. Возможность делать на коленке.
В общем куда не кинь получался монстр. Это была стопка из плат, прошитых перемычками. Как слоеный пирог. Ремонтопригодность нулевая, но при конечной стоимости проще было эту плюху из блока управления извлечь и выбросить, поставив новую. А вот процессе доводки-наладки его неоднократно приходилось спаивать и распаивать, чтобы добраться до внутренних плат. В процессе я извел этой оплетки несколько мотков и теперь являюсь по ней экспертом :)
 
Читать далее

Рубрика: Инструмент | Комментарии (42)

ARM Учебный курс. USART

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


 

Вот и у STM32 он есть. Да не один, а целых дофига. В том контроллере, что стоит на Pinboard II в модуле STM32 — STM32F103C8T6 — их три. Обычно хватает и одного. Но три это же лучше! :)
 

Вообще у STM32 сей девайс навороченный и умеет не только байтики в терминалку слать в классических режимах (асинхронном, синхронном, мультипроцессорном), но и кое чего еще. В частности он может работать в
 

  • Однопроводном полудуплексном режиме
  • В режиме SmartCard — т.е. на том же языке на котором общаются с телефоном SIM карты. Вообще там вроде бы протокол отличается только таймингами немного
  • В режиме IrDA — помните на старых телефонах была такая фиговина? Вот это оно. Отличается от обычного протокола тем, что тут данные передаются краткими импульсами. Этакими вспышками. А 0 и 1 ловятся по паузам между ними. Так себя фотоприемники видать лучше чувствуют.
  • Также есть LIN режим. LIN это автомобильная сеть, этакий CAN для бедных. Вон во всяких приорах стекла и сигналки на LIN шине сидят.

 

В общем, полный фарш. Расписывать все не буду. Только самое основное. Иначе это книгу написать можно.
 
Читать далее

Рубрика: ARM. Учебный курс | Метки: , , , | Комментарии (23)

ARM. Учебный Курс. SysTick — Системный таймер

Продолжаем потрошить кортексы М3. Есть у них у всех, вне зависимости от производителя, такая штука как системный таймер — SysTick. Это часть ядра. Тупейший и примитивный таймер. Он ничего не умеет кроме как генерировать прерывание в заданном промежутке времени. Используется обычно во всяких RTOS для проворачивания диспетчера. К тому же его прерывание имеет высокий приоритет.
 

Краткое описание
Сам таймер 24 разрядный. И тикает вниз от предзагруженного значения до нуля, после чего перезагружается вновь и генерирует прерывание. Управляется он четырьмя регистрами:

 
Таблица из ARM Cortex M3 Reference Manual
 
Читать далее

Рубрика: ARM. Учебный курс | Метки: , | Комментарии (6)

Вести с полей. Новый урожай.

Наконец то все собрано и платы модуля FTDI, о котором я писал не так давно, есть в наличии в большом количестве.

 
Отдельные плашки для него тоже есть и продаются отдельно. Хоть их и нет в магазине, но скоро будут выложены (надо сфоткать и офомрить все) пока же о них можно договориться при заказе в переписке.
 
 

Есть в наличии следующие насадки:

  • AVR JTAG ICE без контроллера, т.е. как те, что идут на PBII в виде AVR модуля — 150р
  • AVR JTAG ICE с контроллером, т.е. полностью собранный — … пока не знаю во сколько мне обойдется партия меги16 в TQFP. Меги еще не закуплены.
  • CoLink JTAG (только JTAG! без SWD) -150р
  • Переходник на модуль Altera (просто планка с разъемом и выводами, для удобства) — 15р.

 
 

Также, после долгого отсутствия у нас снова появился JTAG/SWD отладчик CoLinkEX Clone

 
 

Ну и после небольшого перерыва вновь в наличии появился модуль на STM8.

Рубрика: Новости | Метки: | Комментарии (14)

Конкурс на применение беспилотника

Меня тут мой хороший приятель попросил намекнуть, что КРОК проводит конкурс на применение беспилотника. Обещают призы и бабки. Так что все любители всякой летающе-жужжащей шушеры обратите внимание :)

Ну, а остальные запасаются попкорном и ловят лулзы :)

Рубрика: Новости | Метки: | Комментарии (15)

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


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

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

Рубрика: Готовые устройства | Метки: , , , | Комментарии (31)

Двигатели переменного тока. Принцип работы, характеристики и управление

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

▌Вращающееся поле
Вращающееся поле это краеугольный камень всех машин переменного тока. Без него ничего не было бы и все было бы уныло и пресно. Делается оно посредством хитрой обмотки и хитрого напряжения. Сейчас подробно покажу как.
 

Начнем с упрощенной одновитковой обмотки. Вот такой:

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

Берем три обмотки и ставим их так, чтобы магнитное поле, ими генерируемое, было направленно под 120 градусов относительно катушек.
 

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

Оставим от него только направления векторов, чтобы посмотреть на это в разрезе. И загоняем в эту обмотку трехфазное напряжение. Три синуса, сдвинутые под 120 градусов.
 
Читать далее

Рубрика: Начинающим | Метки: , | Комментарии (39)