2.7.9 IMSProg - I2C/MicroWire/SPI программатор для CH341a
Скачать документ Установка
Сборка из исходного кода
Подключение микросхем
Выбор типа микросхемы
Основные операции программатора
Редактор базы микросхем
Список поддерживаемых микросхем
Окружение
- Версия РЕД ОС: 7.3
- Конфигурация: Рабочая станция
- Версия ПО: imsprog-1.4.1-1
IMSProg — программа, предназначенная для работы с программаторами CH341a и поддерживающая запись, чтение, стирание и проверку I2C, SPI, DataFlash и MicroWire EEPROM/Flash микросхем (серий 24xxx, 25xxx, 45ххх, 93xxx, 95xxx). Программа имеет графический интерфейс и использует виджет QHexEdit2 и доработанный набор библиотек программатора SNANDer для отображения шестнадцатеричного дампа прошивки микросхемы.
Для установки параметров микросхем SPI доступна кнопка «Поиск» для чтения параметров микросхемы (чтение информации JEDEC), а также поддерживается установка параметров микросхемы вручную. Для I2C и MicroWire EEPROM возможен только ручной выбор параметров.
Формат базы данных микросхем основан на формате программаторов EZP2019, EZP2020, EZP2023, Minpro I, XP866+. Редактирование БД микросхем производится с помощью отдельного компонента программы EZP Chip data Editor.
Установка
Для установки IMSProg перейдите в сеанс пользователя root:
su -
и выполните команду:
dnf install imsprog
Дальнейшая работа с программой выполняется с правами непривилегированного пользователя.
После установки программа доступна из «Главного меню» — «Программирование» — «IMSProg».
Сборка из исходного кода
Также доступна самостоятельная сборка компонентов программы из исходного кода. Для этого необходимо установить дополнительные пакеты, выполнив последовательно ряд команд (для установки дополнительных компонентов необходимы права администратора или суперпользователя root):
dnf install cmake dnf install libusb libusb1 libusb1-devel dnf install qt5-qtbase-devel dnf install pkgconf-pkg-config dnf install qt5-linguist
Выйдите из сеанса администратора или суперпользователя root:
exit
Далее скачайте репозиторий программы с сайта GitHub, перейдите в каталог со скачанным архивом и распакуйте его (в примере /home/user/Загрузки), затем перейдите в каталог с распакованным архивом:
cd /home/user/Загрузки/ unzip IMSProg-main cd IMSProg-main/
Для сборки программатора выполните последовательно ряд следующих команд:
cd IMSProg_programmer mkdir build cd build cmake .. make -j4 sudo make install
Вернитесь в исходный каталог с распакованным архивом:
cd /home/user/Загрузки/IMSProg-main/
Для сборки редактора базы микросхем выполните последовательно ряд следующих команд:
cd IMSProg_editor mkdir build cd build cmake .. make -j4 sudo make install
Запуск программ будет доступен из «Главного меню» — «Программирование».
Программатор имеет название IMSProg, редактор параметров имеет название IMSProg-редактор.
Окно программатора выглядит следующим образом:
Подключение микросхем
Вставьте микросхему в соответствующий разъем программатора CH341a.
Микросхемы серий 24xxx и 25xxx должны быть вставлены непосредственно, в соответствии с маркировкой на печатной плате программатора CH341a. Микросхемы серии M95xxx устанавливаются как 25xxx.
Микросхемы серии 93xxx необходимо вставить в адаптер 93xxx, а адаптер — в гнездо программатора с маркировкой 25xxx.
Микросхемы DataFlash серии AT45DBxxx должны быть установлены в переходник SOP-8 DIP-8, который, в свою очередь, должен быть вставлен в адаптер 45xxx. Адаптер 45xxx устанавливается в гнездо программатора с маркировкой 25xxx.
Если напряжение питания микросхемы составляет 1.8V, ее необходимо вставить в адаптер 1.8V, а адаптер — в нужное гнездо программатора.
Подключите программатор CH341a к USB-разъему компьютера и запустите программу IMSProg.
Подключать и отключать устройство (программатор CH341a) к порту USB можно в любое время, когда основные операции (чтение, проверка и программирование) не выполняются.
Выбор типа микросхемы
Выберите тип используемой микросхемы из выпадающего меню Тип. Доступны следующие типы микросхем:
SPI_FLASH – при использовании микросхем SPI NOR FLASH серии 25xxx;
24_EEPROM – при использовании i2c EEPROM серии 24xxx;
93_EEPROM – при использовании MicroWire EEPROM серии 93xxx;
25_EEROM – при использовании SPI EEPROM;
95_EEPROM – при использовании микросхем ST M95xxx.
При использовании микросхем SPI NOR FLASH серии 25xxx и микросхем DataFlash серии 45xxx будет доступна кнопка «Поиск» ( ), при нажатии на которую считывается информация JEDEC о микросхеме и загружаются все параметры этой микросхемы из базы данных. Любой параметр (объем микросхемы, размер страницы, размер блока, напряжение питания (VCC) или поддержка 4-битного адреса) может быть изменен вручную.
Вручную достаточно ввести данные выпадающего меню «Произв.» и «Название» – все остальные параметры будут автоматически загружены из базы данных микросхем.
При использовании микросхем серий 24xxx, 25xxx (не NOR FLASH), 95ххх или 93xxx необходимо вручную ввести данные всплывающего меню «Произв.» и «Название», поскольку для этих типов микросхем автоопределение не поддерживается. Все остальные параметры будут автоматически загружены из базы данных микросхем.
Основные операции программатора
Кнопка «Считать» ( ) или сочетание клавиш Ctrl+R – вызывает функцию чтения данных из микросхемы в буфер компьютера;
Кнопка или сочетание клавиш Ctrl+W – вызывает функцию записи данных из буфера компьютера в микросхему;
Кнопка или сочетание клавиш Ctrl+E – приводит к стиранию всех данных микросхемы;
Кнопка или сочетание клавиш Ctrl+T – вызывает процесс побайтового сравнения данных в микросхеме и в буфере компьютера;
Индикатор выполнения показывает ход выполнения операций чтения, стирания и проверки;
Кнопка «Старт!» используется для последовательного выполнения операций стирания, записи и верификации. Если одна из этих операций не нужна, можно снять флажок с чекбокса конкретной операции;
Кнопка или сочетание клавиш Ctrl+I – позволяет аварийно прервать операции чтения, записи, стирания или сравнения данных микросхемы;
Кнопка «i» – выводит на экран информацию об используемом слоте и адаптере, необходимыми для работы с выбранной микросхемой.
Пункт меню «Программатор» – «Информ. о МС» или сочетание клавиш Ctrl+P служит для отображения и изменения регистров состояния, уникального серийного номера и области e Serial Flash Discoverable Parameter (SFDP) SPI NOR Flash микросхем. Эта информация может пригодиться при использовании микросхем, которых нет в базе, и для анализа проблем при ошибках записи.
Если микросхема SPI NOR FLASH определяется нормально, но не читается (выдает сообщение вида «Ошибка чтения сектора 0»), возможно микросхема заблокирована. В этом случае в окне «Информ. о МС» измените биты BP4 и BP3 на нулевые и нажмите кнопку «Записать регистры». Затем повторите операцию чтения микросхемы.
Если микросхема SPI NOR FLASH считывается ненадежно (каждый раз с разной контрольной суммой) и в ней доступен «Регистр статуса 2», то можно изменить биты DRV0 и DRV1 на нулевые и нажать кнопку «Записать регистры». Это увеличит мощность выходного каскада выхода DO микросхемы. После этого повторить операцию чтения микросхемы.
Для микросхем серий 25xxx, 95xxx, у которых в есть только один регистр статуса, форма «Информ. о МС» выглядит следующим образом:
Операции с файлами
Кнопка или сочетание клавиш Ctrl+S – используется для записи содержимого буфера компьютера в файл.
Кнопка или сочетание клавиш Ctrl+O – используется для загрузки файла в буфер компьютера.
Кнопка или сочетание клавиш Ctrl+Shift-S – используется для сохранения части компьютерного буфера в файл (необходимо ввести начальный адрес и длину части или конечный адрес). Эта операция может быть использована при разбиении двоичного образа данных на части.
Кнопка или сочетание клавиш Ctrl+Shift-O – используется для загрузки небольшого файла по определенному адресу в буфере. При этом фрагмент данных в буфере будет заменен новыми данными из файла.
Кнопка или сочетание клавиш Ctrl+Q – служит для вызова модуля редактора базы данных микросхем.
Операции с буфером (шестнадцатеричным редактором)
Шестнадцатеричный редактор микросхем (правая часть экрана) используется для отображения и изменения данных буфера.
Он содержит следующие элементы управления:
Кнопка или сочетание клавиш Ctrl+Z – отмена последней операции,
Кнопка или сочетание клавиш Ctrl+Shift+Z – повтор операции и
Кнопка или сочетание клавиш Ctrl+F – функция поиска/замены кода или строки.
Сочетание клавиш Ctrl+A производит пересчет контрольной суммы буфера по алгоритму CRC32.
Сочетание клавиш Ctrl+G производит переход к просмотру кода по введенному шестнадцатеричному адресу.
Операции поиска и замены
Поиск и замену можно производить как шестнадцатиричного кода (опция Hex в выпадающем меню), так и текстовую информацию (UTF-8 в выпадающем меню). Возможен поиск как вперед, так и назад.
Для удобства поиска внизу формы есть панель «Стандартные заголовки». С помощью клавиш на этой панели поле поиска автоматически заполняется стандартными заголовками архивов, изображений или системных разделов.
Редактор базы микросхем
Редактор базы микросхем IMSProg_editor – это самостоятельная программа, которая может быть запущена как из «Главного меню» – «Программирование», так и из программатора IMSProg нажатием на кнопку . Окно редактора параметров микросхем выглядит следующим образом:
Окно редактора параметров микросхем выглядит следующим образом:
Все операции в редакторе становятся доступными только после загрузки файла базы микросхем с расширением .Dat.
Далее будут рассмотрены основные действия для работы с программой.
Пункт меню «Файл»
Кнопка «Открыть» ( ) или сочетание клавиш Ctrl+O – позволяет загрузить файл данных.
Кнопка «Сохранить» ( ) или сочетание клавиш Ctrl+S – сохраняет таблицу параметров микросхем в файл базы данных.
Кнопка «Выход» ( ) или сочетание клавиш Ctrl+X – выход из редактора.
Кнопка «Экспорт в CSV формат» ( ) – позволяет выгрузить данные о микросхемах в формате CSV для дальнейшей обработки программой электронных таблиц – Libre Office Calc, Open Office Calc, Google Tables и т. д.
Кнопка «Импорт из CSV файла» ( ) – загружает таблицу в формате CSV и добавляет данные из нее к существующим данным в таблице.
Пункт меню «Редактировать»
Кнопка «Удалить строки» ( ) или клавиша Del – удаляет одну или несколько строк.
Кнопка «Добавить строку» ( ) или клавиша Ins – добавляет строку ниже выделенной и копирует все данные из выделенной строки в новую.
Кнопка «Переместить вверх» ( ) или сочетание клавиш Ctrl+Вверх – перемещает выделенную строку вверх.
Кнопка «Переместить вниз» ( ) или сочетание клавиш Ctrl+Вниз – перемещает выделенную строку вниз.
Кнопка «Импорт выделенных строк в CSV формат» ( ) – сохраняет выделенные строки в файл формата CSV.
Наиболее свежую версию файла базы данных микросхем можно скачать с этой страницы как в формате .Dat, так и в формате .csv.
Список поддерживаемых микросхем
Тип микросхемы | Серия микросхем | |
i2C EEPROM | 24C01, 24C02, 24C04, 24C08, 24C16, 24C32, 24C64, 24C128, 24C256, 24C512, 24C1024 | |
MicroWire EEPROM | 93C46, 93C56, 93C66, 93C76, 93C86 | |
Serial SPI Bus EEPROM | ST | M95010, M95020, M95040, M95080, M95160, M95320, M95640, M95128, M95256, M95512, M95M01, M95M02 |
ATMEL | AT25010, AT25020, AT25040, AT25080, AT25160, AT25320, AT25640, AT25128, AT25256, AT25F512, AT25F1024, AT25F2048, AT25F4096 | |
MICROCHIP | 25AA010, 25AA020, 25AA040, 25AA080, 25AA160, 25AA320, 25AA640, 25AA128, 25AA256, 25AAF512, 25AAF1024, 25LC010, 25LC020, 25LC040, 25LC080, 25LC160, 25LC320, 25LC640, 25LC128, 25LC256, 25LC512, 25LC1024 | |
ONSEMI | CAT25C01, CAT25C02, CAT25C04, CAT25C08, CAT25C16, CAT25C32, CAT25C64, CAT25C128, CAT25C256, CAT25C512 | |
DataFlash 45xx | ATMEL | AT45DB011, AT45DB021, AT45DB041, AT45DB081, AT45DB161, AT45DB321 |
ADESTO | AT45DB011, AT45DB021, AT45DB041, AT45DB081, AT45DB161, AT45DB321, AT45DB641 | |
SPI NOR Flash | SPANSION | FL016AIF, S25FL016P, S25FL032P, FL064AIF, S25FL064P, S25FL256S, S25FL128P, S25FL129P, S25FL116K, S25FL132K, S25FL164K |
XTX | XT25F02E, XT25F04D, XT25F08B, XT25F16B, XT25F32F, XT25F64F, XT25F128F, XT25W02E, XT25W04D, XT25Q08D(1.8V), XT25Q16D(1.8V), XT25Q64D(1.8V), XT25F128D(1.8V) | |
EON | EN25B10T, EN25B20T, EN25B40T, EN25B80T EN25B16T, EN25B32T, EN25B64T, EN25F64, EN25Q40A, EN25Q80B, EN25Q16, EN25Q32C, EN25Q64, EN25Q128, EN25F10A, EN25F20A, EN25F40, EN25F80, EN25F16, EN25F32, EN25S10A(1.8V), EN25S20A(1.8V), EN25S40A(1.8V), EN25S80B(1.8V), EN25S16B(1.8V), EN25S64A(1.8V), EN25QE32A, EN25E10A, EN25E40A, EN25SE16A(1.8V), EN25SE32A(1.8V), EN25T80, EN25QA32B, EN25QA64A, EN25QA128A, EN25QW16A, EN25QW32A, EN25QH16, EN25QH32B, EN25QH64A, EN25QH128A, EN25Q256, EN25QX64A, EN25QX128A, EN25QX256A, EN25QY256A, EN25SX64A(1.8V), EN25SX128A(1.8V) | |
ATMEL | AT26DF161, AT25DF321 | |
MICRON | M25P10, M25P20, M25P40, M25P80, M25P016, M25P32, M25P64, M25P128, N25Q032A, N25Q064A, MT25QL64AB, N25Q128A, MT25QL128AB, N25Q256A, MT25QL256AB, MT25QL512AB, N25Q032A(1.8V), N25Q064A(1.8V), MT25QU64AB(1.8V), N25Q128A(1.8V), MT25QU128AB(1.8V), MT25QU256AB(1.8V), MT25QU512AB(1.8V) | |
XMC | XM25QH10B, XM25QH20B, XM25QH40B, XM25QH80B, XM25QH16C, XM25QH32B, XM25QH64C, XM25QH128C, XM25QH256C, XM25QH512C, XM25LU64C(1.8V), XM25LU128C(1.8V), XM25QU256C(1.8V), XM25QU512C(1.8V), XM25QW16C, XM25QW32C, XM25QW64C, XM25QW128C, XM25QW256C, XM25QW512C, XM25QU41B(1.8V), XM25QU80B(1.8V), XM25QU16C(1.8V), XM25LU32C(1.8V), XM25QH32A, XM25QH64A, XM25QH128A | |
AMIC | A25L10PU, A25L20PU, A25L40PU, A25L80PU, A25L16PU, A25L10PT, A25L20PT, A25L40PT, A25L80PT, A25L16PT, A25L010, A25L020, A25L040, A25L040, A25L080, A25L016, A25L032, A25LQ080, A25LQ16, A25LQ32, A25LQ64 | |
EXCELSEMI | ES25P10, ES25P20, ES25P40, ES25P80, ES25P16, ES25P32, ES25M40A, ES25M80A, ES25M16A | |
DOUQI | DQ25Q64AS | |
Zbit | ZB25LD10A(1.8V), ZB25LD20A(1.8V), ZB25LD40B(1.8V), ZB25LD80(1.8V), ZB25D10A, ZB25D20A, ZB25D40B, ZB25D80B, ZB25VQ16, ZB25VQ32, ZB25VQ64, ZB25VQ128, ZB25LQ16(1.8V), ZB25LQ32(1.8V), ZB25LQ64(1.8V), ZB25LQ128(1.8V), ZB25VQ20A, ZB25VQ40A, ZB25VQ80A, ZB25VQ16A | |
ONSemi | LE25U20AMB, LE25U40CMC | |
Boya | BY25Q05AW, BY25Q10AW, BY25Q20BL(1.8V), BY25Q40BL(1.8V), BY25Q80AW(1.8V), BY25Q16BL(1.8V), BY25D05AS, BY25D10AS, BY25D20AS, BY25D40AS, BY25Q80BS, BY25Q16BS, BY25Q32BS, BY25Q64AS, BY25Q128AS, BY25Q256ES, BY25Q10AL(1.8V), BY25Q20AL(1.8V), BY25Q40AL(1.8V), BY25Q32AL(1.8V), BY25Q64AL(1.8V), BY25Q128EL(1.8V) | |
PFLASH | Pm25LQ512B, Pm25LQ010B, Pm25LQ020B, PM25LQ016, PM25LQ032, PM25LQ064, PM25LQ128, Pm25LQ040B | |
Puya | P25Q06H, P25Q40H, P25Q11H, P25Q21H, P25Q10H, P25Q20H, P25Q40H, P25Q80H, P25Q16H, P25Q32H, P25Q64H, P25Q128H | |
ESMT | F25L004A, F25L008A, F25L016, F25L032, F25L064, F25L16QA, F25L32QA, F25L64QA | |
ISSI | IS25LQ010, IS25LQ020, IS25LP080D, IS25LP016D, IS25LP032D, IS25LP064D, IS25LP128F, IS25LP256D, IS25LP512D, IS25WP040D(1.8V), IS25WP080D(1.8V), IS25WP016D(1.8V), IS25WP032D(1.8V), IS25WP064D(1.8V), IS25WP128F(1.8V), IS25WP256D(1.8V), IS25WP512D(1.8V) | |
Fudan | FM25W04, FM25W16, FM25W32, FM25W64, FM25W128, FM25Q04, FM25Q08, FM25Q16, FS25Q32, FS25Q64, FS25Q128 | |
Zetta | ZD25Q64B, ZD25LQ128(1.8V), ZD25LQ64(1.8V), ZD25WD20B, ZD25WD40B, ZD25Q80C, ZD25Q16B, ZD25Q32C | |
PCT | PCT25VF016B, PCT25VF032B, PCT25VF064C, PCT25VF020B, PCT25VF040B, PCT25VF080B, PCT26VF016, PCT26VF032, PCT25VF010A | |
MXIC | MX25L8005M, MX25L1605D, MX25L3205D, MX25L6405D, MX25L12805D, MX25L25635E, MX25L51245G, MX25U5121E(1.8V), MX25U1001E(1.8V), MX25U2035F(1.8V), MX25U4035F(1.8V), MX25U80356(1.8V), MX25U1632F(1.8V), MX25U3232F(1.8V), MX25U6432F(1.8V), MX25U12832F(1.8V), MX25U25643G(1.8V), MX25U51245G(1.8V), MX25R2035F, MX25R4035F, MX25R8035F, MX25R1635F, MX25R3235F, MX25R6435F | |
GigaDevice | GD25F40, GD25F80, GD25D40, GD25D80, GD25D05C, GD25D10C, GD25Q20C, GD25Q40C, GD25Q80C, GD25Q16C, GD25Q32, GD25Q64CSIG, GD25Q128CSIG, GD25Q256CSIG, GD25LD05C(1.8V), GD25LD10C(1.8V), GD25LD20C(1.8V), GD25LD40C(1.8V), GD25LQ80C(1.8V), GD25LQ16C(1.8V), GD25LQ32E(1.8V), GD25LQ64E(1.8V), GD25LQ128(1.8V), GD25LQ256D(1.8V), GD25WD05C, GD25WD10C, GD25WD20E, GD25WD40E, GD25WD80C, GD25WQ20E, GD25WQ40E, GD25WQ80E, GD25WQ16E, GD25WQ32E, GD25WQ64E, GD25WQ128E, GD25WB256E, GD25LB512ME(1.8V), YC25Q128 | |
PARAGON | PN25F08, PN25F16, PN25F32, PN25F64, PN25F128 | |
WINBOND | W25P80, W25P16, W25P32, W25X05, W25X10, W25X20, W25X40, W25X80, W25X16, W25X32VS, W25X64, W25Q20CL, W25Q40BV, W25Q80BL, W25Q16DV, W25Q32BV, W25Q64BV, W25Q128BV, W25Q256FV, W25Q20BW(1.8V), W25Q80, W25Q10EW(1.8V), W25Q20EW(1.8V), W25Q40EW(1.8V), W25Q80EW(1.8V), W25Q16JW(1.8V), W25Q32FW(1.8V), W25Q64DW(1.8V), W25Q128FW(1.8V), W25Q256JW(1.8V), W25M512JW(1.8V), W25Q512JV, W25M512JV, W25Q32JW(1.8V) | |
Fidelix | FM25Q04A, FM25Q08A, FM25Q16A, FM25Q32A, FM25Q64A, FM25Q128A, FM25M04A(1.8V), FM25M08A(1.8V) FM25M16A(1.8V), FM25M32B(1.8V), FM25M64A(1.8V) |
Дата последнего изменения: 09.09.2024
Если вы нашли ошибку, пожалуйста, выделите текст и нажмите Ctrl+Enter.