Опубликовано вт, 10/17/2017 - 20:52 пользователем trol
USBTiny-MkII slim - компактный и быстрый USB-программатор для микроконтроллеров AVR, совместимый с фирменным программатором AVRISP-MKII от Atmel.
Немалая стоимость оригинала поспособствовала появлению его многочисленных клонов, и самым удачным из них, пожалуй, является именно USBTiny-MkII SLIM.
Устройство может программировать все 8-разрядные AVR-микроконтроллеры, обладающие возможностью внутрисхемного программирования (поддерживаются
интерфейсы ISP, TPI и PDI).
Это быстрый программатор. 128 Кб флеша ATMega128 полностью считываются за 35 секунд (для сравнения, usbasp делает это за 70 секунд), и пишутся чуть
медленнее (скорость записи ~15 Кб/сек). Второе важное достоинство устройства в том, что оно без проблем работает не только с avrdude, но и с
AtmelStudio, которая видит программатор как родную железку.
Высокая скорость работы обеспечивается использованием микроконтроллеры AT90USB162 с аппаратной поддержкой USB (этот контроллер содержит встроенный
bootloader и для его прошивки не нужен программатор). Кроме микроконтроллера на плате программатора имеется двунаправленный преобразователь уровня
напряжения GTL2003, LDO-стабилизатор (MCP1825S-3302ED) на 3.3В, джампер для выбора напряжения питания программируемого МК (3.3В/5В) и пара
светодиодов-индикаторов режима работы.
Для программатора была спроектирована модель корпуса для печати на 3d-принтере. Корпус состоит из двух половинок, которые склеиваются между собой. Под
джамперы, светодиоды и разъёмы программатора (и подписи к ним) сделаны окошки. Также есть ниша для установки 10-пинового ISP-разъема (в дополнении к
6-пиновому ISP на печатной плате).
Опубликовано пн, 10/02/2017 - 20:37 пользователем trol
Энкодер - штука, внешне похожая на переменный резистор, но, в отличие от последнего, не имеет ограничителей и может вращаться в любую сторону
бесконечно. С помощью энкодера очень удобно организовывать всякие экранные меню, вообще, один “нажимабельный” энкодер (т.е., если он умеет работать
ещё и как кнопка) идеально подходит для для организации одномерных циклических меню.
Энкодеры бывают двух типов: абсолютные - сразу выдающие код угла поворота и инкрементальные - выдающие импульсы при вращении.
Для последних подсчётом импульсов и их преобразованием их в угол поворота должен заниматься микроконтроллер.
С точки зрения конструкции энкодеры бывают механические и оптические, в первых импульсы при вращении генерируются на паре контактов при их
замыкании скользящим контактом вала, во вторых же роль контактов выполняют фотодиоды, а роль замыкателя - светодиод, светящий через диск с прорезями
(привет шариковой мышке).
Хотя информации по программированию энкодеров в сети навалом, как и готовых библиотек для этого, но все они какие-то излишне громозкие (имхо)
- опрос состояния, как правило, реализуется в виде конечного автомата в виде блока switch с вложенными if-ами, что выглядит несколько сложно
(особенно, будучи написанным на ассмеблере). Хотя, реализация может быть проще.
Опубликовано пн, 09/25/2017 - 21:48 пользователем trol
Программа avrdude поддерживает все актуальные программаторы микроконтроллеров AVR и является кроссплатформенной (Linux, Windows, MacOS). Это
консольная утилита и её удобно вызывать из shell/bat-скриптов. Единожды написав такой файлик и положив его в директорию с проектом, получаем
возможность быстро прошить и проверить фьюзы, flash и eeprom микроконтроллера. Проблема только в том, чтобы написать этот скрипт. И тут основную
головную боль вызывают fuse-биты, т.к. надо правильно сформировать их значения нигде не ошибившись. Иначе, устройство, в лучшем случае,
может не заработать совсем или работать неправильно. Ну а в худшем случае можно "окипрпичить" микроконтроллер.
Для avrdue написано много разных графических оболочек под Windows, но среди всего этого многообразия не так просто найти удобный и не сильно глючный
софт. Основное требование к оболочке - возможность работать с fuse-битами не как с числами или набором непонятных чекбоксов, а в нормальном
человекочитаемом формате. Под MacOS вариантов оболочек совсем не много, но, к счастью, есть open-source проект AVRFuses и с фьюзами там всё
относительно неплохо. Плюс открытый исходный код даёт возможность неограниченно затачивать этот инструмент под себя.
Существенный недостаток подобных оболочек в том, что при одновременной работе с несколькими проектами и частым переключением между ними, приходится
каждый раз заново вбивать пути к файлам, и настраивать по памяти значения фьюзов, что скучно и отнимает время. Поэтому в оболочку была добавлена
работа с проектами. Выбрав путь к прошивке и настроив фьюзы, можно сохранить эту конфигурацию чтобы в будущем можно было быстро загрузить её из меню.
Опубликовано чт, 09/21/2017 - 21:32 пользователем trol
У различных компьютерных акустических систем среднего ценового сегмента (в частности Microlab PRO2 и Thonet & Vander Dass)
был замечен один общий и сильно неприятный недостаток - при включении чего-то в соседнюю розетку в колонках слышится громкие раздражающие щелчки.
Что особенно не радует в ночное время. Ручку громкости у компьютерных колонок удобно выкрутить до значения, близкого к максимальному,
чтобы в будущем регулировать её в полном диапазоне с компьютера. Что не лучшим образом влияет на громкость тресков. Особенно громко щёлкали колонки
при выключении очистителя воздуха для пайки, но и на всяческие мелкие импульсные блокои
питания/зарядные устройства, включаемые и выключаемые из соседней (и не только) розетки реакция колонок тоже была неприятной.
Обозначенная проблема - следствие тотальной экономии китайцами на всём при проектировании и производстве. Решение проблемы - добавить в схему то,
на чём было сэкономлено.
При осмотре внутренностей акустики было замечено отсутствие какого-либо фильтра помех сетевого напряжения. Сами усилители в подобных устройствах
традиционно делаются на микросхемах со встроенным стабилизатором, т.е., весь блок питания у них состоит из трансформатора, диодного моста и пары
электролитических конденсаторов (в моих усилителях их ёмкость - 4700 мкФ на каждое плечо).
Для начала, решено было установить сетевой фильтр. Проблему щелчков при включении/выключении вентилятора в соседней розетке он не решит
(в этом можно убедиться, подключив колонки к качественному внешнему сетевому фильтру - полностью щелчки не исчезают), но лишним точно не будет,
учитывая обилие импульсных помех в розетке.
Следующий простой и очевидный способ улучшить качество питания - увеличить ёмкости "электролитов" хотя бы до 10 000 - 15 000 мкФ. При этом стоит
учитывать то, что пусковые токи при зарядке таких емкостей так же увеличатся, и диодный мост должен иметь хороший запас по току, чтобы при включении
ему не поплохело. Так же, для лучшей фильтрации, добавил по дросселю в каждое плечо (получив Т-образный LC-фильтр).
Опубликовано вт, 09/05/2017 - 15:45 пользователем trol
Устройство предназначено для тестирования логических микросхем, операционных усилителей, оптопар, и некоторых других элементов.
Из логических микросхем поддерживаются отечественные (серии 155, 555, 1531, 1533, 176, 561, 1561, 1564, 580, 589 и др.) и импортные
(74ххх, 40ххx, 45xxx) ИМС ТТЛ и КМОП. Меню и результаты проверки отображаются на цветном дисплее.
Так же тестер умеет проверять микросхемы DRAM, SRAM, считывать EPROM и показывать, есть ли в них записанные данные.
Кроме того, прибор можно использовать при отладке различных цифровых устройств как интерфейс с 40 каналами ввода-вывода управляемыми по USB.
Тестер питается через miniUSB-порт, также через этот порт его можно подключить к компьютеру. Программное обеспечение позволяет разрабатывать,
запускать и пошагово отлаживать тесты, считывать содержимое ПЗУ и обновлять прошивку устройства.
Программное обеспечение написано на Java и является кроссплатформенным (Windows, Linux, MacOS X).
Опубликовано вс, 08/27/2017 - 13:50 пользователем trol
3D-принтеры бывают разные, но электроника подавляющего большинства любительских аппаратов делается на основе связки плат Arduino + RAMPS,
либо одной платы MKS Gen. В качестве блока питания обычно служит БП для светодиодных лент. Он служит источником для питания электроники, шаговых
двигателей, нагревателя(лей) экструдеров и термостола. И тут возникает ряд проблем, связанных с тем, что импульсные помехи от БП + помехи, создаваемые
ШИМ-контроллером нагревателя экструдера прилетают на управляющий микроконтроллер. В результате возможны сбои и перезагрузка программы, появление
мусора на экране, а также большие ошибки при измерении температуры экструдера (что может приводить к тому, что управляющая программа
не может стабилизировать температуру нагревателя экструдера).
Для решения этой проблемы схема питания принтера была доработана: питание цифровой части отделено от питания нагревателей и подаётся через
двойные LC-фильтры, эфективно снижающие уровень шума ИБП. Для питания нагревателей была добавлена плата управления на мощных полевых транзисторах.
Доработка позволила полностью избавится от проблем с питанием - после исправлений температура экструдера стала нормально устанавливаться, исчезли
перезагрузки и мусор с экрана.
Опубликовано ср, 06/28/2017 - 19:25 пользователем trol
Как известно, очистить ПЗУ с УФ-стиранием можно лампой ДРЛ с разбитой внешней колбой. Лампу надо подключать через дроссель, который можно заменить
обычной лампой накаливания той же мощности, что и ДРЛ (или вязанкой из параллельно соединённых ламп). Без дросселя ДРЛ быстро сгорит. С лампами
накаливания, как показывает опыт, ДРЛ всё равно сгорит, но гораздо медленнее - на несколько десятков стирок хватит. Колба постепенно чернеет,
а сама лампа начинает светить всё хуже и хуже.. А ещё внутренняя колба ДРЛ активно генерирует озон при свечении, а озон имеет свойство убивать
всё живое.
Появление мощных ультрафиолетовых светодиодов дало возможность сделать практически "вечную" стиралку для ретро-ПЗУ-шек. Светодиодом с длиной волны
365нм мощностью от 3Вт можно стереть память за ~5-60 минут в зависимости от микросхемы и её ёмкости (да, это не очень быстро, но куда торопиться?).
Мощному светодиоду требуется охлаждение, для чего он был установлен на небольшой радиатор с вентилятором. Питается эта конструкция от 12В БП, светодиод
подключен через регулируемый DC/DC-преобразователь с ограничением тока. В завершении конструкция помещается в корпус, распечатанный на 3D-принтере.
Корпус состоит из двух частей - блок питания и блок светодиода с кулером.
Опубликовано вс, 06/11/2017 - 23:03 пользователем trol
Тестер микросхем в полной комплектации состоит из трёх плат - сам тестер + дисплей +
плата ключей.
Для того, чтобы культурно упаковать их в единое целое, была спроектирована моделька корпуса для печати на 3d-принтере. Корпус рассчитан под модуль
цветного дисплея 128x128 и плату тестера v2.3 (у плат более ранних версий отличается раположение одного крепёжного отверстия, но в принципе,
корпус можно использовать и с ними). Корпус состоит из двух половинок - верхней и нижней. Половинки достаточно плотно вставляются друг в друга.
К нижней части корпуса крепится плата ключей, она привинчивается винтами к распечатанным стойкам.
Стойка высоты 2.5мм имеет углубление под гайку М2. Гайки плотно вставляются вниз стоек, после чего стойки приклеивается к корпусу на свои места.
К верхней части крепятся платы тестера и дисплея. Они привинчиваются к стойкам, состоящим из двух частей - внешней и внутренней, между которыми
вставляется гайка М2, после чего внутренний вкладыш фиксируется на клей.
Все детали корпуса (кроме гаек и винтов М2) можно распечатать на 3D-принтере, файлы моделей прилагаются.
Опубликовано чт, 06/01/2017 - 18:53 пользователем trol
Онлайн "калькулятор" для выбора цвета под дисплей 1.44" 128х128 и другие аналогичные.
При работе с такими экранами приходится иметь дело с 16-битными цветами, закодированными в формате RGB565 или
rrrrrggg:gggbbbbb
- 5 бит красного (в старшем байте), 6 бит зелёного и 5 бит синего (в младшем байте). Таким образом,
красная и синяя компонента имеют 32 возможных значения, а зелёная - 64.
Для упрощения жизни можно воспользоваться этим онлайн-калькулятором RGB888 <-> RGB565.
Опубликовано пт, 05/05/2017 - 22:40 пользователем trol
Плата XT-IDE даёт возможность подключать (относительно) современные жёсткие диски IDE или CF-карты памяти к старым компьютерам IBM PC XT и совместимым.
Она устанавливается в 8-битный ISA-сокет и не требует установки каких-либо драйверов для работы, т.к. имеет на борту свой собственный BIOS,
который можно настроить под конкретное железо (от режима максимальной совместимости с XT-системами до максимальной скорости работы на более
современном железе). Также на плате есть последовательный порт (опциональный), предназначенный для загрузки системы с файла-образа диска,
расположенном на другом компьютере. Последнее крайне полезно, когда надо установить систему, а под рукой нет ни дисковода с системной дискетой, ни
системного HDD.
Страницы