воскресенье, 17 марта 2019 г.

Как паять микросхемы в SOP и SOIC корпусах

Не так давно я опубликовал материал о том, как без паяльной станции выпаять с платы микросхему в SOP корпусе. Теперь хочу дополнить материал и показать как можно одним лишь паяльником припаять микросхему на плату.
Для примера будем использовать всё ту же многострадальную микросхему FLASH-памяти mx25l3206e, которую выпаивали в статье "Как выпаять микросхему в SOP или SOIC корпусе паяльником".
Впаивать её мы будем в переходник SOP-DIP для дальнейшего использования с беспаечными макетными платами. Паять будем обычным "советским" 30-ти ваттным паяльником с плоским обгоревшим медным жалом. Почему такой хардкор? Да у многих начинающих электиронщиков-радиолюбителей другого попросту может и не быть. Конечно, тонким острым жалом с необгораемым наконечником такое паяется лекго, и уж тем более термовоздушной паяльной станцией. Я же хочу показать как с этой операцией можно справиться самым заурядным инструментом.

Итак, переходник. Перед пайкой на него микросхемы мы распаяем на нем гребенку для того, чтоб можно было ставить в макетку. SOP8-DIP8 переходника у меня не оказалось, но когда-то покупал несколько SOP14-DIP14, его и будем использовать. Выглядит он вот так.



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



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



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



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



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



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



Как видим. даже самым обычным паяльником можно спокойно паять SOP микросхемы. Так же само можно паять и TQFP корпуса, например. Основная сложность при пайке SMD микросхем паяльником заключается в том, чтоб не спаять все в одну кучу.



В итоге у нас получился самодельный модуль для Arduino или STM32 в виде флеш-памяти на 4 мегабайта.

пятница, 15 марта 2019 г.

Программатор CH341A MinProgrammer описание, драйвера, инструкция

Этот программатор почему-то все называют Mini Programmer, несмотря на то, что надпись на нем все таки иная. Этим грешат даже поисковики.
Даайте посмотрим, что это такое, как установить и как пользоваться.


Вот так выглядит сам программатор. Исполнение довольно качественное, всё пропаяно на совесть.

Описание
В основе программатора лежит микросхема CH341A. Эта микросхема позволяет использовать программатор в качестве обычного USB-UART преобразователя.
Помимо этого, программатор поддерживает SPI, что дает дополнительные возможности, например прошивку AVR-микроконтроллеров.
Так же есть два светодиода, один выступает в роли индикатора питания, второй - индикатор активности линии данных.
На плате установлен стабилизатор питания AM31117 на 3.3 v, что дает возможность питать подключаемые микросхемы этим напряжением. Основным же удобством я считаю наличие ZIF (Zero Insertion Force) разъема для DIP-8 микросхем.
Так же есть контактные площадки для микросхем в sop8 или sop16 корпусах, к которым можно подпаять микросхему или прижать.


Функционал
С помощью MinProgrammer можно считывать, стирать и записывать (прошивать) микросхемы Flash-памяти 25-той серии и EEPROM 24-той серии, 93-тей серии, используя стандартное программное обеспечение. И в вопросе какую память поддерживает программатор уместнее будет делать ставку на программное обеспечение к программатору, а не к железу. Сам программатор - это всего лишь конвертер шин данных.
Стоит помнить о том, что программатор предназначен для работы с микросхемами с питанием 3.3 вольта, если сунуть в него микросхему рассчитанную для работы от 1.8 вольт - она сгорит. Прошить микросхему 1.8 вольт можно с помощью специального адаптера, который покупается отдельно от программатора.

MinProgrammer умеет SPI, I2C и UART. С помощью SPI можно прошивать микроконтроллеры AVR, например, а с помощью UART подключаться к роутерам и прочим девайсам с линией UART на борту. То и другое выведено на гребенки по обеим сторонам ZIF панели. I2C при необходимости придется брать с панельки.
ZIF панелька рассчитана на работу с микросхемами в DIP корпусе, но используя переходник DIP-SOP можно работать с микросхемами в SOP корпусе. Контактные площадки, которые находятся на нижней части программатора, и предназначены для припаивания либо прижимания микросхем, я использовать не рекомендую. В случае прижимания есть риск плохого контакта, в результате которого память может быть прошита или считана неправильно. В случае пайки, если это единичный случай, то в принципе ничего страшного быть не должно кроме риска перегреть и сжечь микросхему, если же паять часто и много - площадки быстро износятся.

Давайте посмотрим зачем нужен джампер возле ZIF панели. Он служит для переключения режима работы программатора, в положении, когда замкнуты контакты 1-2, MinProgrammer работает в режиме программатора SPI и I2C, когда замкнуты контакты 2-3 - в режиме USB TTL UART переходника. Положения джампера можно посмотреть на фото ниже.


Программное обеспечение. Установка и настройка
Первым делом нужно скачать драйвер для CH341A, подключить программатор в USB порт и, дождавшись когда устройство определится системой, установить скачанный драйвер. В Windows сделать это можно через диспетчер устройств, найдя в нем "неизвестное устройство" после подключения программатора. Сам driver CH341A можно легко найти в интернете, но можно скачать и тут, помимо драйвера в архиве так же программа на русском языке.
Драйвер для CH341A и программа для программатора.
Программа для программатора работает без установки, в режиме Portable, может работать и с флешки. На этом установка и основная настройка будет закончена, можно приступать к прошивке.
В операционных системах Linux поддержка микросхемы заложена на уровне ядра, так что ничего устанавливать не надо. Проверял на Debian.



Прошивка микросхем памяти
Аппаратная часть
С микросхемами в дип корпусе все просто - вставляем микросхему в ZIF панельку, следим, чтоб вставили правильной стороной и в нужную часть, на программаторе все нарисовано. Но используются DIP8 микросхемы памяти довольно редко, в основном это планарные микросхемы в корпусах SOP8 или SOIC8. И с ними все не так просто, они есть разной ширины. Стандартные 150mil SOP8 и более широкие 200mil (если быть точным и брать информацию из даташитов - то 208mil).
Давайте разберемся какая разница между 150mil и 200mil. На фото ниже показаны оба вида размеров микросхем, можно наглядно увидеть разницу.



Если брать точные размеры SOP8 корпусов обеих типов в миллиметрах, для 150mil (это размер в дюймах) ширина корпуса без выводов составит 3.9 мм, с выводами - 6 мм. Для 200mil ширина корпуса будет 5.2 мм без выводов и 7.9 мм с выводами. В обоих случаях шаг между выводами 1.27 мм.

Как я уже и говорил, программатор предусматривает прошивку микросхем в корпусах SOP и SOIC, для этого есть площадки к которым можно припаять или прижать микросхему, такое пройдет и для 150 и для 200 mil, но лучше так не делать.

Для обеих типов есть переходники, или адаптеры, с помощью которых можно прошивать микросхемы в sop8 корпусах. Ниже на фото представлены два таких переходника, DIP8-SOP8 150mil и DIP8-SOP8 200mil.



Фото сбоку, видно что одна панелька не очень качественно выполнена и гребенка немного не до конца посажена. Тем не менее, на работоспособности это не сказывается.



Вот так выглядит программатор с переходником DIP8-SOP8 200mil и установленной в него микросхемой mx25l3206e. Джампер в этом случае должен быть установлен в первое положение и замыкать контакты 1-2 на гребенке.



Программная часть
Давайте теперь перейдем к программной части и посмотрим как прошить микросхему на примере вышеупомянутой mx25l3206e. В архиве с драйверами есть файл CH341A_130.exe, в установке он не нуждается, просто запускаем его. Слева вверху выбираем "Поиск Чипа", откроется вот такое окно.



В него пишем название нужной нам микросхемы, в данном случае 25l32, программа предложит нам несколько вариантов, из них выбираем наш mx25l3206e, после чего нажимаем "Выбрать". Слева вверху заполняться поля "Тип", "Имя", а так же объем памяти.
Сверху ищем кнопку "Читать", жмем. Содержимое памяти будет считано и показано в виде HEX-кода. Если память до этого была чистая, то будут только символы F. На считывание микросхемы потребуется некоторое время, около 30-ти секунд в моем случае. Я считывал микросхему с прошивкой роутера, так что память там была заполнена.



Для того, чтоб сохранить считанный дамп памяти, просто жмем кнопку "Сохранить" вверху. Программа предложит выбрать куда сохранить и как подписать файл
Для прошивки микросхемы нужен сам файл прошивки. Слева вверху жмем "Открыть", выбираем нужный файл. После чего либо жмем "Авто", либо сначала жмем "Стирание", ждем окончания процедуры стирания, после чего жмем "Записать чип". Это важно, перед записью прошивки микросхему памяти нужно сначала очистить от старой прошивки. И даже в случае, если она новая, только купленная, лучше перестраховаться и сначала очистить её память.

По такому же алгоритму можно прошивать и другие микросхемы. Например 93с46, только нужно использовать переходник DIP8-SOP8 150mil, я шил микросхему AT93с46 с маркировкой на корпусе atmel552. Стоит только обращать внимание на шину данных, которую использует память. Так же нужно следить за тем, чтоб не вставить микросхему в панельку не той стороной, всегда обращать внимание на ключ.
Полный список поддерживаемых программатором микросхем приводить не буду, так как он очень длинный. На этом с прошивкой микросхем пока закончим и перейдем к микроконтроллерам. Я хотел было описать, как с помощью MinProgrammer прошить Attiny13, но статья и так получилась немаленькая, потому решил вынести эту информацию в отдельную статью, а тут сделать на нее ссылку.
Статья пока пишется, как закончу - на этом месте размещу ссылку.

воскресенье, 10 марта 2019 г.

Как выпаять микросхему в SOP или SOIC корпусе паяльником

Выпайка SMD компонентов обычным паяльником возможна, я сейчас опишу демонтаж микросхемы в корпусе SOP8 при помощи обычного 30-ти ваттного паяльника. Более того, целью выпайки есть не просто убрать ненужный на плате компонент, а выпаять микросхему живой и невредимой.
В качестве донора - убитый грозой роутер Edimax br-6228nc, из него выпаяем Flash-память для дальнейшего использования.



Инструмент. Отдельного внимания заслуживает пинцет, которым мы будем пользоваться - он должен быть качественным. Я пользуюсь 150-ти миллиметровым анатомическим медицинским пинцетом, с поперечными насечками на рабочей части губок. Паяльник самый обычный 30-ти ваттный, температура жала - 340 градусов. Заточка жала плоская, острым жалом паять будет неудобно. Немаловажно так же наличие низкотемпературного припоя. Сплав Розе - это конечно будет уже слишком, но ПОС-40 с температурой плавления 240 градусов будет лучше, чем ПОС-10 с температурой 300 градусов.

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

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



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



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



За счет того, что припой с обратной стороны еще мягкий, микросхема должна легко подняться над платой.



Как видим, осталось только отпаять вторую сторону и микросхема выпаяна. Делается это одним легким касанием паяльника одновременно с оттяжкой микросхемы вверх.



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



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



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



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

Заключение. Мы узнали как выпаять микросхему без паяльной станции, обычным паяльником. Хоть выпаивали мы sop-8 - таким же методом можно выпаивать и микросхемы с большим количеством ног. Как видим, для того, чтоб выпаять, нам не понадобилась ни паяльная станция, ни термофен.

Полезные советы. Хочу подчеркнуть несколько нюансов. Когда выпаиваешь компонент, вокруг которого куча резисторов и конденсаторов в SMD исполнении - скорей всего зацепишь их паяльником. Я всегда стараюсь выпаивать нужные детали из того, что не жалко выбросить. Если дело обстоит наоборот и надо просто убрать сгоревшую микросхему - то демонтаж следует проводить немного по другому.
При отсутствии нормального пинцета можно воспользоваться отверткой, слегка подковыривая микросхему снизу. Недостаток такого способа в том, что отвертка не отводит от микросхемы лишнее тепло, как то делает пинцет.
Припой, как я и говорил, должен быть низкотемпературным. За счет этого мы уменьшаем время прогрева, что снижает риск сжечь микросхему перегревом при пайке.
И еще одно, для того чтоб выпаять smd-микросхему паяльником, жало паяльника должно прогревать одновременно все ноги на одной из сторон микросхемы.
Время прогрева не должно быть большим, в идеале это одна-две секунды на одну сторону микросхемы. Для этого жало паяльника должно быть плоским, чтоб греть всю нужную зону одновременно, и иметь достаточную температуру для быстрого плавления припоя.
Сама рабочая зона должна быть удобной и позволять быстро переложить паяльник из одной руки во вторую, а это значит, что кабель питания паяльника должен располагаться не справа, а спереди, дабы не мешался при пайке.

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