Положил дед Мороз под новогоднюю елочку мне тестер радиоэлектронных компонентов в виде китайского клона широко известного в узких кругах тестера Маркуса.

image

Здесь должна была быть картинка включенного тестера с радостно светящимся всеми цветами радуги экранчиком, но руки из одного места воткнули в него заряженный конденсатор, тестер радостно самовключился, сказал «ой!» и работать отказался.

Жалко, блин. Попробуем отремонтировать.

1. Идем на Яндекс-диск со схемами и прошивками на все известные сообществу клоны. К счастью, клон «ТС-1» там уже есть.

2. Изучаем схему и плату тестера, экспериментально выясняем, что имеется короткое замыкание (КЗ) по шине +5В.

image

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

Отпаиваем DZ2, сборка жива, КЗ на месте. Значит случилось самое ужасное, сгорел микроконтроллер.

3. Заказываем микроконтроллер Atmega644, корпус TQFP-44, 2 штуки, на случай, если что-нибудь пойдет не по плану.

4. Пока Атмега едет из Китая, готовим инструменты и ищем программатор.

Нам понадобится:

image

4.1. Паяльная станция, набор жал для паяльника, «третья рука» с лупой, тонкий-тонкий пинцет, хороший флюс (китайский, но жидкий, что лучше канифоли), чуть-чуть припоя.

Программаторы (спасибо Int_13h за безвозмездно отданную целую коробку всяких разных):

image

4.2. USBasp без корпуса для Atmega, с адаптером 10 pin to 6 pin ISP.

4.3. USB ISP в корпусе для Atmega (никогда не угадаешь, какой пригодится).

4.4. Преобразователь USB/UART 5V от какого-то мобильника для перепрошивки контроллера питания U4 (STC15L104W).

Т.к. контроллер любит 3.3В, на монтажке собираем стабилизатор 5->3.3В на базе LM1117:

image

Оказывается, стабилизатор без нагрузки не работает. Вешаем на выход резистор, например 2.2 кОм. Устанавливаем на выходе точно 3.3 В с помощью вольтметра и потенциометра.

5. Дождались, наконец, конверта с микроконтроллерами.

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

image

Для первого раза даже красивенько.

Заодно впаиваем разъем для внутрисхемного программирования. Убеждаемся в правильности разводки под адаптер 10to6, перепаиваем разъем на другую сторону платы.

image

И конечно предусмотрим разъем для аккумулятора. Итог:

image

7. Готовимся прошить контроллер питания U4. Припаиваем конвертер USB-UART со стабилизатором к плате:

image

3.3В к 3.3В, Gnd к Gnd, Tx к Р1, Rx к Р2.

8. Ищем софт stc-isp6.86.rar на сайте производителя.

9. Подключаем конвертер, ждем, что он обнаружится системой, запускаем софт, выбираем com-порт, выбираем прошивку из архива (п.1), задаем частоту 12 Мгц, подаем питание, процессор запускается, в режим загрузки не переходит, программатором не обнаруживается.

image

9.1. Экспериментируем с очередностью подачи питания на процессор и нажатием кнопок «Check MCU» & «Download/Program».

9.2. Изучаем даташит на U4, обнаруживаем, что кнопка Test тестера подключена к выводу Reset. Жмем «Check MCU», жмем кнопку Test, микроконтроллер резетится и обнаруживается. Таким же образом запускаем прошивку, и, наконец, прошиваем U4.

10. Изучаем обилие софта для прошивки Atmega.

10.1. Инсталлируем мощную и удобную Atmel Studio 6.2, обнаруживаем, что она не поддерживает программаторы USBasp и USB ISP. Сносим.

10.2. Ищем Avrdude и графическую оболочку к нему. Из всего обилия останавливаемся на интуитивно понятном Avrdude_prog 3.3, который понимает USBasp, понимает прошивки *.hex и *.eep, умеет наглядно показывать выбранные фьюзы. Подключаем, запускаем:

image

Облом-с, программатор имеет слишком старую прошивку.

10.3. Вот тут и пригодится USB ISP, софт которого не такой дружелюбный, но на прошивку программатора он способен. А может и тестер прошьет? Увы:

image

10.4. Ищем свежую прошивку на USBasp, соединяем USB ISP и USBasp шлейфом, замыкаем на USBasp джампер J1, вводя его в режим программирования. Заливаем прошивку. Успех!

10.5. Окрыленные успехом, пытаемся прошить и USB ISP в USBasp. Впаиваем по методике перемычку на плату, сначала бэкапим прошивку и фьюзы.

image

image

10.6. Шьем.

image

Выпаиваем перемычку. Подключаем бывший USB ISP и компьютеру и не обнаруживаем его софтом. Может с фьюзами путаница? Потом разберемся. Прости! Но ты выполнил свою цель и можешь пока упокоиться с миром.

10.7. Goto 10.2. Но теперь наш программатор уже шьет Atmega успешно.

11. Волнуемся насчет успеха проведенной операции.

12. Запуск тестера. Бинго!


Измерения идут, но не обошлось и без недостатков — тестер практически мгновенно отключается после процесса измерения, можно и не успеть снять показания.

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

Комментарии (16)


  1. pproger
    18.03.2019 16:30
    +1

    или можно купить новый за 150р :)


    1. Vanellope Автор
      18.03.2019 17:08

      DIY вообще и любое хобби в частности — это нецелевое расходование средств и времени.


      1. kzhyg
        18.03.2019 18:20

        Происходящее исключительно из-за использования метода тыка, 3/4 телодвижений можно было избежать, прочитав пару статей уровня «я купил ардуино, что теперь делать?».


        1. Vanellope Автор
          19.03.2019 13:12

          А как же познание через эксперимент?


          1. kzhyg
            19.03.2019 14:46
            -1

            Предпочитаю экспериментировать с менее общеизвестными вещами)


      1. batman12345
        18.03.2019 21:32
        +2

        Нецелевое расходование средств и времени это, например, — бухать.
        А diy — это отдушина среди рутины, так или иначе приносящий дивиденды.


    1. Ezhyg
      18.03.2019 22:14
      +1

      Прямо таки за 150 рэ?

      не подглядывать до предъявления пруфа!

  1. Sergey78
    18.03.2019 20:14

    Выглядит действительно сложно, очень много действий :) Я avr шью через ftdi232, очень универсальная платка. Под линуксом нужен только avrdude и avr-gcc, все ставится из репов и работает из коробки. Под виндой у ftdi возможно драйвер подменить надо.
    В исходниках с svn есть уже готовые make файлы, там только свой программатор указать, и можно шить, там все ключи для avrdude есть.
    По мне так попроще выглядит, сказать make и make flash и не тащить winavr и какие-то оболочки для avrdude.


    А что за микросхему вы ещё прошивали? И зачем?


    1. batman12345
      18.03.2019 21:51

      Устаревший программатор, очевидно


      1. Sergey78
        18.03.2019 22:00

        Я про STC15L104W спрашивал, что за управление питанием с микроконтроллером и зачем так сложно.


    1. Vanellope Автор
      19.03.2019 13:10

      U4, контроллер питания, контролирует питание, управляет DC/DС преобразователем на 35 В, подает сигналы на основной контроллер включиться или выключиться. Следит за единственной кнопкой, без него тестер на кнопку не отреагирует. Должен задавать интервалы отключения питания от 10 до 25 секунд в зависимости от перемычек, но этот функционал не работает.
      Оригинальная китайская прошивка не совместима с прошивкой Маркуса, поэтому добрые люди ее слили и доработали. Доработали не до конца, но у меня есть исходник, Кейл для 51 контроллеров, немного энтузиазма и немного свободного времени.


      1. Sergey78
        19.03.2019 13:15

        Я так понимаю в других версиях, вместо этого контроллера схема на трех транзисторах.
        Я думал этот контроллер для тестирования стабилитронов или чего-то такого, чего нет в более простых версиях.
        А что там не совместимо? Если это просто понижающий dc-dc управляющий питанием?


        1. Vanellope Автор
          19.03.2019 14:27

          Да, можно и здесь заменить микроконтроллер на некую схему, можно залить модифицированную прошивку. С родной прошивкой тестер точно не запускался. Весь функционал тестера, в том числе и по тестированию стабилитронов возложен на Атмегу. U4 просто дает сигнал запуска на DC/DС 5 В в 35 В, которые и используются для тестирования стабилитронов. Более подробно не изучала, первоочередная задача на данный момент — разобраться, почему тестер делает всего одно измерение, а не серию и после проведения измерения очень быстро отключается, сказав на прощание «Bye!».


  1. Fox_Alex
    19.03.2019 03:06
    +1

    Поздравляю с успешным ремонтом) Сам я когда-то в доалиэкспрессные времена себе такой собирал. Еще первую версию, на текстовом ЖКИ. В любительских делах незаменимый приборчик. Тоже однажды так его спалил, не разрядив кондер. Первой-же «модернизацией» после ремонта стала еще одна клеммная группа с резистором на 10 Ом для разрядки конденсаторов. Приборчик жив и работает до сих пор.


    1. Vanellope Автор
      19.03.2019 13:12

      Спасибо, надо провести такую же модернизацию, благо, функционал такой в программу заложен.


  1. Int_13h
    21.03.2019 07:46

    Если собираешься рыться в сырцах фирмвари, не торопись сносить АтмелСтудио. Наверное самая удачная IDE под AVR (это же вижуалстудио!), со встроенным симулятором для отладки.