Важная информация
Страница 1 из 24 12345 ... ПоследняяПоследняя
Показано с 1 по 10 из 236

Тема: Тестер микросхем на ATMega16/32

  1. #1
    Member Аватар для Trol73
    Регистрация
    07.05.2015
    Адрес
    г. Ульяновск
    Сообщений
    194
    Благодарностей: 245
    Записей в дневнике
    1

    По умолчанию Тестер микросхем на ATMega16/32/128

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

    Требования к устройству такие:
    Микроконтроллер ATMega16 с возможностью последующей замены на ATMega32. В идеале, конечно, сюда просится ATMega128, но хотелось в DIP-корпусе, чтобы иметь возможность легкой замены.
    Возможность подключения к компьютеру по COM-порту. Чтобы использовать устройство, например, для исследования более сложных микросхем, в качестве программатора, интерфейса I2C и 1-wire, да и вообще - даже 32 кб памяти МК может быть недостаточно для полных тестов всего.
    Экран от Nokia 5110. В первую очередь потому, что им можно рулить по 4м проводам - экономия выводов МК по сравнению с 1602 и, тем более, семисегментными
    Возможность проверки микросхем в корпусе до DIP-28 включительно (по причине нехватки выводов МК при работе с МС в DIP-28 ее 14й вывод подключен на землю, при этом две кнопки управления и UART недоступны)
    Одна кнопка для запуска теста микросхем + пара дополнительных для навигации по экранному меню в будущем.


    Схема, плата (Eagle) и исходники тут: https://github.com/trol73/avr-ic-tester
    В схему добавил токоограничивающие резисторы на все выводы тестируемой микросхемы. При нажатии на кнопку девайс перебирает все тесты из базы и выводит название микросхемы, если получилось ее определить.
    Описание тестов микросхем - в файле scripts/data.ic (файл в кодировке win1251). Скрипт scripts/compiler.py компилирует этот файл в массив данных для прошивки.

    В данный момент в базе 105 номиналов микросхем. Возможно ручное тестирование - установка уровней на входах микросхем и наблюдение за выходными уровнями. Есть режим тестирования 565РУ5 и 565РУ7.

    Скрытый текст


    АП3,HC240
    АП4,HC241
    АП5,HC244
    АП6,HC245
    АП14,HC465
    АП15,HC466

    ИВ1,HC148

    ИД3,HC154
    ИД4,HC155
    ИД7,HC138
    ИД10,HC145
    ИД14,HC139

    ИЕ1
    ИЕ2,HC90
    ИЕ4,HC92
    ИЕ5,HC93
    ИЕ6,HC192
    ИЕ7,HC193 (К155 не все микросхемы определяются)
    ИЕ9,HC160
    ИЕ10,HC161
    ИЕ13,HC191
    ИЕ18,HC163
    ИЕ19,HC393
    ИЕ23,HC4520

    ИМ2,LS82
    ИМ3,LS83

    ИП2,HC180
    ИП7,HC243

    ИР8,HC164
    ИР9,HC165
    ИР10,HC166
    ИР15,HC173
    ИР16,HC295
    ИР22,HC373
    ИР23,HC374
    ИР24,HC299
    ИР26,HC670
    ИР27,HC377
    ИР32,HC170 (К155ИР32 и К155РП1 не определяются - потребляют слишком большой ток)
    ИР33,HC573
    ИР34,HC873
    ИР35,HC273
    ИР37,HC574
    ИР38,HC874

    КП2,HC153
    КП5,HC152
    КП7,HC15
    КП11,HC257
    КП12,HC253
    КП13,HC298
    КП14,HC258
    КП15,HC251
    КП16,HC157
    КП17,HC353
    КП19,HC352

    ЛА1,HC20
    ЛА2,HC030
    ЛА3,HC00 (также будут определяться как ЛА11, ЛА13)
    ЛА4,HC10
    ЛА6,HC40
    ЛА7,HC22
    ЛА8,HC01 (также определяется как ЛИ1)
    ЛА9,HC03
    ЛА10,HC12
    ЛА11,HC26
    ЛА12,HC37
    ЛА13,HC38
    ЛА16,HC140
    ЛА18,HC452
    ЛА21,HC1000
    ЛА22,HC1020
    ЛА23,HC1003
    ЛА24,HC1010

    ЛЕ1,HC02
    ЛЕ2,HC23
    ЛЕ3,HC25
    ЛЕ4,HC27
    ЛЕ5,HC28
    ЛЕ6,HC128
    ЛЕ10,HC1002
    ЛЕ11,HC33

    ЛИ1,HC08 (также определяется как ЛИ2)
    ЛИ2,HC09
    ЛИ3,HC11
    ЛИ4,HC15
    ЛИ6,HC21
    ЛИ8,HC1008 (также определяется как ЛИ2)
    ЛИ10,HC1011A

    ЛЛ1,HC32
    ЛЛ4,HC1032

    ЛН1,HC04
    ЛН2,HC05
    ЛН3,HC06
    ЛН5,HC05
    ЛН6,HC366
    ЛН7,HC368
    ЛН8,HC1004
    ЛН10,HC1005

    ЛП5,HC86
    ЛП7 (только цифровая часть)
    ЛП8,HC125
    ЛП9,HC07
    ЛП10,HC365
    ЛП11,HC367
    ЛП12,HC136
    ЛП16,HC1034 (также определяется как ЛП9)
    ЛП17,HC1035

    ЛР1,HC50
    ЛР3,HC53
    ЛР4,HC55
    ЛР11,HC51 (также определяется как ЛР1)
    ЛР13,HC54

    СП1,HC85

    ТВ1,HC72
    ТВ6,HC107
    ТВ9,HC112

    ТЛ1,HC13
    ТЛ2,HC14
    ТЛ3,HC132

    ТМ2,HC74
    ТМ5,HC77
    ТМ7,HC75
    ТМ8,HC175
    ТМ9,HC174

    ТР2,HC279

    HC541
    HC126
    1564ИР52, HC595

    ---------------------------
    Не будут тестироваться:
    - ИД1, ИД11 - у них выходы НЕ ТТЛ
    - АГ1, АГ3 - требуют RC цепочки для теста
    - некоторые экземпляры микросхем серии К155 из-за большого потребляемого тока (ИЕ7, ИР13, ИР17)

    Возможно тестирование серий AC,HC, однако возможны "ложные" определения типов или неопределение.
    [свернуть]




    Описание старого тестера: http://trolsoft.ru/ru/sch/ic_tester
    Описание новго тестера: http://trolsoft.ru/ru/sch/ic_tester-2
    Описание дисплейного модуля: http://trolsoft.ru/ru/sch/display-atmega8

    Свежие прошивки на Google Drive: https://drive.google.com/open?id=0Bw...kxCejFpckFiUzA

    Проект нового тестера на гитхабе: https://github.com/trol73/avr-ic-tester-v2
    Миниатюры Миниатюры Нажмите на изображение для увеличения. 

Название:	ic-tester.jpg 
Просмотров:	1301 
Размер:	75.3 Кб 
ID:	52900   Нажмите на изображение для увеличения. 

Название:	ic-tester-sch.jpg 
Просмотров:	1007 
Размер:	23.5 Кб 
ID:	52902  
    Вложения Вложения

  2. Эти 19 пользователя(ей) поблагодарили Trol73 за это полезное сообщение:
    AHTuXPuCT (20.07.2015), andy7109 (21.07.2015), artem_zp (21.07.2015), CodeMaster (21.07.2015), creator (20.07.2015), Dragoos (17.08.2015), Eraserstp (20.07.2015), Ewgeny7 (19.07.2015), HardWareMan (22.11.2015), John North (19.07.2015), perestoronin (22.07.2015), piroxilin (19.07.2015), Prusak (14.11.2015), Tuvic (23.11.2015), wiktors75 (03.08.2015), zim (31.07.2015), ZXFanat (22.07.2016), АлександрПП (21.07.2015), Руслан (31.10.2015)

  3. #1
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  4. #2
    Moderator Аватар для CodeMaster
    Регистрация
    26.04.2009
    Адрес
    Воронеж
    Сообщений
    3,815
    Благодарностей: 524

    По умолчанию

    Цитата Сообщение от Trol73 Посмотреть сообщение
    Хотелось бы добавить и тестирование РУ-шек.
    Вдруг не в курсе о проекте. Желательно конечно объединить всё в одном проекте или сделать несколько с разной реализацией, но широким функционалом.
    Рыцарь ордена Хламовников

  5. Этот пользователь поблагодарил CodeMaster за это полезное сообщение:
    perestoronin (22.07.2015)

  6. #3
    Member Аватар для Trol73
    Регистрация
    07.05.2015
    Адрес
    г. Ульяновск
    Сообщений
    194
    Благодарностей: 245
    Записей в дневнике
    1

    По умолчанию

    Цитата Сообщение от CodeMaster Посмотреть сообщение
    Вдруг не в курсе о проекте. Желательно конечно объединить всё в одном проекте или сделать несколько с разной реализацией, но широким функционалом.
    В том проекте вижу только схему и фото платы. Для быстрого прикручивания тестера РУ-шек были бы интересны готовые алгоритмы, желательно, в виде исходников ) Видимо, придется делать свое.
    Надеюсь, впихнуть все в один проект. Лишь бы памяти хватило - сейчас вижу, что 16кб точно будет маловато даже на один тестер. Надеюсь, получится уложиться в 32кб меги32.

  7. Эти 2 пользователя(ей) поблагодарили Trol73 за это полезное сообщение:
    Ewgeny7 (22.07.2015), perestoronin (22.07.2015)

  8. #4
    Super Moderator Аватар для Ewgeny7
    Регистрация
    03.07.2005
    Адрес
    Санкт-Петербург
    Сообщений
    9,215
    Благодарностей: 3615

    По умолчанию

    Цитата Сообщение от Trol73 Посмотреть сообщение
    сейчас вижу, что 16кб точно будет маловато даже на один тестер
    Олег, должно хватить с запасом.
    В принципе, в 8кб уже впихнули практически все микросхемы, что требуются для "нашего дела".
    Тут всё зависит от алгоритма, компилятора и способа представления данных.
    Табличная организация - самая экономная. Только нужно мозг поломать над "движком". Я писал свою версию без таблиц, прямым С-кодом, это действительно прожорливо. Потом ради интереса сделал вариант на ассемблере. Небольшой, на пять-шесть чипов. Это вообще экономно. Жаль, что исходники сдохли вместе с виндой...
    Scorpion ZS 1024 turbo+/ZXMC 2.6/SD-HDD/FDD/AT-Keyb/Mouse/SMUC 2.0/ProfROMse/VGA 3.0/NeoGS
    ZX-Evolution 4096 rev.B

    Сайт с документацией к "Scorpion ZS 256"

  9. Этот пользователь поблагодарил Ewgeny7 за это полезное сообщение:
    Trol73 (22.07.2015)

  10. #5
    Member Аватар для Trol73
    Регистрация
    07.05.2015
    Адрес
    г. Ульяновск
    Сообщений
    194
    Благодарностей: 245
    Записей в дневнике
    1

    По умолчанию

    Цитата Сообщение от Ewgeny7 Посмотреть сообщение
    Олег, должно хватить с запасом.
    В принципе, в 8кб уже впихнули практически все микросхемы, что требуются для "нашего дела".
    Я уже сейчас не вписываюсь в 8кб ) Отличие графического экрана от 7-сегментного - один только графический шрифт отожрал несколько килобайт.

    Тесты изначально стал хранить в виде массива.
    Например, для ЛА3 получается такой массив в 54 байта
    PHP код:
        'Л''А''3'',''Л''А''2''3'0,
        
    CMD_RESET,
        
    CMD_INIT_160b010110110b11101100,     

        
    CMD_SET_160b010000000b00000000,  0b000110110b11101100
        
    CMD_TEST_160b001001000b00010010,  0b000000000b00000000
        
    CMD_SET_160b010110110b01101100,  0b000000000b10000000
        
    CMD_TEST_160b000000000b00000000,  0b001001000b00010010
        
    CMD_SET_160b010100100b01001000,  0b000010010b10100100
        
    CMD_TEST_160b000000000b00000000,  0b001001000b00010010
        
    CMD_SET_160b010010010b00100100,  0b000100100b11001000
        
    CMD_TEST_160b000000000b00000000,  0b001001000b00010010
        
    CMD_END
    такую структуру еще можно немного оптимизировать, но не в разы.

    Этот массив компилируется из более человеко-читаемого представления:

    PHP код:
    CHIP[14'ЛА3, ЛА23'
        
    POWER: -+14
        IN
    :   12459101213
        OUT
    :  36811

        SET
    :  1-> 12459101213
        TEST
    36811 -> 0
        
        SET
    :  0-> 12459101213
        TEST
    36811 -> 1
        
        SET
    :  -> 251013 ;  -> 14912
        TEST
    36811 -> 1

        SET
    :  -> 14912  ;  -> 251013
        TEST
    36811 -> 
    Или, например, такого:
    PHP код:
    CHIP[14'ТМ2'
        
    POWER: -+14
        IN
    4231,    10121113
        OUT
    56,   98

        TEST
    00010001 => 1010
        TEST
    01110111 => 1010
        TEST
    10001000 => 0101
        TEST
    11101110 => 0101    

        SET
    11011101
        PULSE
    : +3
        TEST
    1001
        PULSE
    : +11
        TEST
    1010

        SET
    0-> 212
        PULSE
    : +3
        TEST
    0110
        PULSE
    : +11
        TEST
    0101 

  11. #6
    Moderator Аватар для CodeMaster
    Регистрация
    26.04.2009
    Адрес
    Воронеж
    Сообщений
    3,815
    Благодарностей: 524

    По умолчанию

    Цитата Сообщение от Ewgeny7 Посмотреть сообщение
    В принципе, в 8кб уже впихнули практически все микросхемы, что требуются для "нашего дела".
    Хотел сказать про то же.

    Цитата Сообщение от Trol73 Посмотреть сообщение
    Для быстрого прикручивания тестера РУ-шек были бы интересны готовые алгоритмы, желательно, в виде исходников )
    Думаю можно попросить исходники у Сергея.

    Вот ещё проект, с исходниками, но под PIC'и.

    Цитата Сообщение от Trol73 Посмотреть сообщение
    Экран от Nokia 5110. В первую очередь потому, что им можно рулить по 4м проводам - экономия выводов МК по сравнению с 1602
    Цитата Сообщение от Trol73 Посмотреть сообщение
    Отличие графического экрана от 7-сегментного - один только графический шрифт отожрал несколько килобайт.
    Тогда, вопрос, так ли он нужен?
    Последний раз редактировалось CodeMaster; 22.07.2015 в 17:28.
    Рыцарь ордена Хламовников

  12. #7
    Super Moderator Аватар для Ewgeny7
    Регистрация
    03.07.2005
    Адрес
    Санкт-Петербург
    Сообщений
    9,215
    Благодарностей: 3615

    По умолчанию

    Цитата Сообщение от Trol73 Посмотреть сообщение
    Отличие графического экрана от 7-сегментного - один только графический шрифт отожрал несколько килобайт
    Это я в курсе
    А зачем ты описываешь каждый вход/выход?
    Не проще ли хранить одну цифру для DDRx, одну для PORTx, одну для сверки с PINx?
    Причем, описание питания легко входит уже прямо в эти описания.
    Тестируем сразу все элементы микрухи, а не поочередно.
    И получается очень компактно, для ЛА3 и прочей мелкологики это будет измеряться байтами.

    ---------- Post added at 17:32 ---------- Previous post was at 17:31 ----------

    Цитата Сообщение от CodeMaster Посмотреть сообщение
    Тогда, вопрос, так ли он нужен?
    Большой нужды нет, но - почему бы и нет?
    Scorpion ZS 1024 turbo+/ZXMC 2.6/SD-HDD/FDD/AT-Keyb/Mouse/SMUC 2.0/ProfROMse/VGA 3.0/NeoGS
    ZX-Evolution 4096 rev.B

    Сайт с документацией к "Scorpion ZS 256"

  13. #8
    Master
    Регистрация
    11.04.2006
    Адрес
    Novosibirsk
    Сообщений
    738
    Благодарностей: 179

    По умолчанию

    Цитата Сообщение от Ewgeny7 Посмотреть сообщение
    И получается очень компактно, для ЛА3 и прочей мелкологики это будет измеряться байтами.
    А для более сложных микросхем можно очень несложный конечный автомат придумать.

  14. #9
    Super Moderator Аватар для Ewgeny7
    Регистрация
    03.07.2005
    Адрес
    Санкт-Петербург
    Сообщений
    9,215
    Благодарностей: 3615

    По умолчанию

    Там просто последовательность PORTx->PINx, сколько потребуется раз.

    ---------- Post added at 18:17 ---------- Previous post was at 18:15 ----------

    Можно сваять микроинтерпретатор, а в таблице разместить маркеры-операторы.
    Scorpion ZS 1024 turbo+/ZXMC 2.6/SD-HDD/FDD/AT-Keyb/Mouse/SMUC 2.0/ProfROMse/VGA 3.0/NeoGS
    ZX-Evolution 4096 rev.B

    Сайт с документацией к "Scorpion ZS 256"

  15. #10
    Member Аватар для Trol73
    Регистрация
    07.05.2015
    Адрес
    г. Ульяновск
    Сообщений
    194
    Благодарностей: 245
    Записей в дневнике
    1

    По умолчанию

    Цитата Сообщение от CodeMaster Посмотреть сообщение
    Тогда, вопрос, так ли он нужен?
    Имхо, нужен. Он экономит пины МК, так, что можно подключать DIP-28 микросхемы. А еще на нем можно сделать информативное меню, выводить название МС, описание ошибки в РУ-шке и т.д.
    Цитата Сообщение от Ewgeny7
    А зачем ты описываешь каждый вход/выход?
    Входы и выходы описываю чтобы настроить DDR-ы. Для подключения DIP-16 используется 3 порта МК, т.е., надо настроить 3 DDR-регистра.

    И, да, тестируются сразу все элементы МС. На каждый тест уходит минимум 8 байт: 4 с описанием устанавливаемых сигналов и 4 с описанием того, что проверяем на выходе. 4 - потому, что установки / проверки в 0 и 1 делаются отдельно.

    Можно, конечно, ужать до 2х байт и каждый раз выставлять/проверять все уровни. Для мелкой логики это было бы особо эффективно... Если меги 32 вдруг не хватит, этим можно будет озадачится )

Страница 1 из 24 12345 ... ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Ответов: 16
    Последнее: 28.09.2014, 09:43
  2. AY + тестер = нужна помощь!
    от Black_Cat в разделе Unsorted
    Ответов: 3
    Последнее: 16.07.2011, 21:17
  3. ТЕСТЕР микросхем логики
    от Mikka_A в разделе Unsorted
    Ответов: 29
    Последнее: 19.03.2007, 23:46
  4. Ответов: 22
    Последнее: 28.01.2007, 13:20

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •