ARM. Учебный курс. IAR EWARM. Создание проекта — часть 3. Подключение Colink: танцы с бубном и без.

В далеком 2010 году товарищ rtxonair чирканул пару статей про ARM + IAR и в какую сторону вообще копать. Статьи получились толковыми, но их было раз-два и все, а информации по IAR как было негусто, так и осталось (даже сегодня, спустя добрых пять лет). А если такая информация и появляется, то чисто обрывочно, в форме «смотрите, я тут опять диодиком помигал». Впрочем, довольно нытья, мы здесь не за этим :)

▌Водная часть
Наглым образом пропустив вопрос «А-почему-IAR?» (ответ: потому-что-не-Keil), обращу сразу внимание, что в комплекте с платой Pinboard II идет отладочный Colink-адаптер на Кокосе:

Автор статьи (DySprozin) предполагает, что вы уже ознакомились хотя бы с первой частью вышеупомянутого курса, а также внимательно прочитали в мануале быстрого старта, как правильно подключать модуль STM32 (чтобы ничего не пожечь) и как правильно его прошить. В общем, если на данный момент вы умеете «помигать диодиком», а программа Flash Loader Demo работает исправно, то вам зеленый свет, движемся дальше!


(далее…)

Read More »

Паблик EasyElectronics


Я тут забацал себе пабличек ВКонтактике.

vk.com/easy_electronics

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

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

На свой основной сайт конечно тоже буду выкладывать, но уже во вторую очередь. И вообще в ВК и комментировать проще, не нужны все эти пляски с регистрациями. Народ один фиг там почти весь сидит, клиент есть для телефона удобный.

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

Read More »

Тест колесных шасси

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

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

Ну две так две. Тем более что различаются они минимально, только формой пластин и числом двигателей. Зато будет с чем сравнить.
(далее…)

Read More »

Своя мастерская, а может и Челябинский hackspace

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

А выделенная мастерская это и сразу рабочий настрой. Пришел и надо херачить. И можно проект бросить как есть и уйти домой, чтобы на следующий день доделать, никто ничего не порушит. И оперативный простор. Да и можно единомышленников подтянуть и сообща что-нибудь замутить. Чем то друг-другу помочь, что то сделать. А то иному хочется сделать свое, но дома совершенно негде, паяльного оборудования нет, осциллографа нет, разводить все это с нуля дорого хлопотно и сложно. А тут пришел и сделал. Опять же можно что-нибудь серьезное прикупить/собрать и сообща это отбить. Скажем 3Д принтер или ЧПУ фрезер. Этакий радиокружок :)

Посему я ищу в Челябинске помещение в аренду под мастерскую. Итак, что мне нужно:

  • Помещение метров 20, пока думаю хватит. При средней цене офисной недвиги в 400р за метр это потянет тысяч на 7-8, больше я пока не готов в одиночку потянуть. Но если будут желающие прибиться в нашу секту, то это совсем другое дело.
  • Крайне желательно не подвальное, светлое, с окнами. Чтобы можно было проветривать. Отделка лучше ближе к офису, чем к цеховой. Я конечно привык к производственным помещениям, но сидеть среди мрачных криво покрашеных стен мне как то не особо радует. Но без понтов, чем дешевле тем лучше. Покрашено, побелено, обоями или панелями пластиковыми зашито и зашибись.
  • Возможность шуметь. Ну как шуметь, не громче средней шумности дрели. Тот же фрезер, например.
  • Желательно не совсем в промзоне, чтобы можно было добраться и на транспорте. Не у всех есть машина.
  • Интернет желателен, но можно и 3G обойтись.
  • Адекватная парковка, чтобы можно было относительно свободно припарковаться на машине где-нибудь неподалеку от
  • Охрана, в идеале сигнализация.
  • Огромный плюс наличие какой-нибудь столовки поблизости или прям в самом здании
  • Не параноидальный пропускной режим в здание. Паспорт вахтеру показать или разовый пропуск оформить это нормально, а вот когда каждое посещение надо чуть ли не заранее заказывать это уже перебор.
  • Расширенное время работы. Т.е. режим с 8 до 18 это совсем грустно, я люблю и вечерами поработать. В идеале хотя бы до 22 чтобы был доступ.

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

Если кто может помочь с идеями и координатами куда стоит сьездить-позвонить чтобы пообщаться, может вы работаете/ходите мимо таких мест и можете поинтересоваться да скинуть мне телефончик человека который отвечает там за аренду. А также те кто терзается похожими мыслями и желающие вписаться в проект своим участием то велкам в комменты или почту dihalt@dihalt.ru

Read More »

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

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

Но так получается, что у меня есть бригада монтажников у которых тоже пинцет это продолжение руки, а еще они их периодически ломают, стачивают (вы видели когда-нибудь стертый smd резисторами пинцет? А я видел!), теряют или еще каким то образом проябывают. А работать то надо, в общем мои родимые, любовно выбранные для себя, пинцеты переходят к монтерам, а я перманетно нахожусь в процессе поиска себе очередного хватательного инструмента. Нет, гениальный GLEDE NO.1012 я никому не отдам, но его одного мало. И вот тут как то раз звонит мне Дима и говорит, что он нарыл в Китае неплохую фирму производящую всякий инструмент и предлагает затестить их, чтобы я своим наметанным глазом оценил стоит это вообще возить или это шлак голимый.

(далее…)

Read More »

Изолированный DC-DC преобразователь MeanWell NSD15-12S5

Люблю MeanWell, добротный китайский бренд делающий хорошие блоки питания. Цена правда довольно высокая. А недавно увидел у них одну интересную штуку — это изолированный DC-DC преобразователь с 12 в 5 вольт (есть и на другие напряжения) и током в 3А. Вот вам его даташитик: NSD15-12S5.pdf

▌Конструкция
Модуль довольно большой и толстый:

Несет на борту алюминиевый радиатор который на полной нагрузке весьма ощутимо греется. Мог бы быть и побольше. Сам модуль не из дешевых, порядка 850 рублей в рознице (на конец 2014 года).

Так зачем он такой нужен?

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

Т.е. исходные 12 вольт превращаются в переменку, прогонаются через трансформаторы, выпрямляются и догоняются до нужного значения напряжения. Зачем такие сложности, ведь у нас и там и тут низкое напряжение? Причин может быть много, одна из которых — защита от помех.
(далее…)

Read More »

Модульный DC-DC преобразователь YEC SD200

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

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

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

▌YEC SD200
Совершенно случайно нарвался на эту пепяку. Кто производитель неизвестно. По крайней мере я нагуглить не смог. Но эта сборка буквально наводнила Али и прочие китайские развалы. Цены смешные от 20 до 50р за штуку, в зависимости от тиража и типа доставки. И это при том, что микросхема на которой все собрано в рознице от 100р до 300р. А еще дроссель, плата и прочие радости.

Что характерно, они все продаются паяные. Т.е. видно следы монтажа, а также термические повреждения нижней пластины. У меня складывается впечатление, что где то в Китае в утиль пустили ОГРОМНУЮ партию неких железок где эта штука стояла. Ушлые китайцы разобрали их на запчасти и продают по цене лома практически. А еще на них нигде не найти официальную документацию. Только скриншоты оной на алиэкспрессе. Т.е. это что-то внутреннее или очень уж нестандартное. Так что гребите пока есть.

Продается как сама по себе, так и в виде готовых сборок, например таких:

(далее…)

Read More »

Дралоскоп

▌Идея
Иногда хочется передрать удачную схему или разводку с имеющегося девайса или его изображения. Как тут не накосячить и не налепить ошибок, которые потом можно долго и нудно отлаживать? Особенно если схема большая. Раньше я печатал схему/разводку на бумажке, клал перед собой и вычеркивал проведенные трассы. А некоторые программы, например Sprint Layout, позволяют подложить фоном изображение требуемой платы и просто его обвести. В Eagle же этой прикольной возможности нет. А встроенные скрипты конвертации точечного изображения в слой работают ОЧЕНЬ грубо.

И тут мне пришла одна дедовская идея. А чего бы не сделать электронный дралоскоп? Помните эту мега штуку. С лампой и стеклянным столиком. Сколько на нем было передрано студентами чертежей не передать. Так чего отказываться от опыта предков? Что мешает воткнуть любую картинку поверх всего изображения на мониторе, как оверлеем? Думаю ничего… с этой идеей я и обратился к знакомым программерам Denisio и dсoder. Дкодре посоветовал метод, а Дэн за пол часика накидал все остальное. Пока так, по быстрому, проверить идейку…

▌И вот что получилось
Сфоткал изображение одного забавного модулька:


(далее…)

Read More »

Краткий обзор осциллографа Siglent SDS 1072CML и сравнение его с Rigol DS1042CD

Прикупили мы тут для себя в Toolboom осциллограф Siglent SDS 1072CML. О своих впечатлениях от девайса я сейчас и поведаю.
 

Итак, Siglent SDS 1072CML — это малобюджетный осциллограф начального уровня. Про аналогово-измерительную часть тут особо говорить нечего. У всех подобных осциллографов она из одной бочки и отличается друг от друга чуть больше чем никак. В частности это практически полный клон младших моделей LeCroy и брат близнец ATTEN и АКИП. Многочисленные разборки разных осциллографов это подтверждают, у меня тут даже ролик публиковался про это.
 

Да и для ремонтника/радиолюбителя это не столь важно, т.к. в этом случае осциллограф в 99.9% используется как показометр, с целью посмотреть что вообще происходит и космическая точность там не требуется. А вот интерфейс, функции и удобство пользования стоит во главе угла. Поскольку мой основной осциллограф это старичок Rigol DS1042CD (все это также справедливо и к другим Rigol тысячной серии, например 1052E), то все буду сравнивать с ним.
 

Для общего впечатления, можно посмотрет обзор от Toolboom

 

(далее…)

Read More »

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

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


 

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

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

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


 
(далее…)

Read More »

Установка и конфигурация 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 — настройки ОС. Платформозависимо, а еще зависит от целей и проекта

 
(далее…)

Read More »

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


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

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

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

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

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

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

Read More »

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

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

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

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

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

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

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

Read More »

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

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

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


 

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

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

 

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

 

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

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

 
(далее…)

Read More »

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

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

 

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


 

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

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

Read More »

BOSCH GluePen


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

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

 

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

Read More »

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

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

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

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

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

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

 
(далее…)

Read More »

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

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


 

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

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

Read More »