| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
V5.8TU - режим MPSSEВ микросхеме USB драйвера FT232H имеется командный процессор, называемый Multi-Protocol Synchronous Serial Engine (MPSSE). Эта возможность позволяет эффективно взаимодействовать с микросхемами, использующими синхронные протоколы (такие как JTAG или SPI). Данный режим широко используется во многих программаторах. Его можно использовать и на программаторах Тритон V5.8TU. Более того, реализовать свой алгоритм работы может любой пользователь программатора, знакомый с программированием. Между программой пользователя и микросхемой всегда существует черный ящик, называемый программатором. Большинство программаторов не позволяют ни на шаг отойти от алгоритмов, заложенных разработчиком, тем самым существенно ограничивая возможности пользователей. В программаторах Тритон заложена другая идеология, позволяющая пользователю делать микросхемой всё, что угодно, в том числе создавать новые алгоритмы работы и добавлять новые микросхемы. Рассмотрим, как это реализовано в программаторе на примере SPI Flash GD25LQ64C. Программируемая микросхема через преобразователи уровней подключается к матрице, которая коммутирует управляющие сигналы на внутреннюю шину программатора. К этой шине подключен процессор программатора и микросхема USB драйвера. В начале каждого цикла работы с микросхемой, процессор программатора конфигурирует матрицу, и затем отключается, передавая управление USB драйверу. Программа на компьютере, получив команду об отключении процессора, вызывает нужную функцию из внешней библиотеки, которая напрямую посылает данные через микросхему USB на программируемую микросхему. Для работы используется стандартный конфиг, поэтому подключить можно любую микросхему. Чтобы передать управление внешней программе нужно в Параметрах микросхемы изменить следующие ячейки:
Таким образом, внешняя программа может управлять микросхемой в панельке программатора.
В папке \Program Files\Triton\Scripts находятся файлы eSPI.asm - пример скрипта и eSPI.dpr - пример исходного кода библиотеки на Паскале. Пример скрипта для вызова функции из внешней библиотеки: ;======================================
READ: BGS ;Включить питание
PWX $10,$19 ;Set CS
EXT $41 ;Check ID
JLA L02 ;=1 - Ошибка
L01: EXT $44 ;Чтение
JNA L01 ;Проверка адреса
L02: END ;Выход
;======================================
PROG: BGS ;Включить питание
PWX $10,$19 ;Set CS
EXT $41 ;Check ID
JLA L12 ;=1 - Ошибка
L11: EXT $44 ;Запись
JNA L11 ;Проверка адреса
L12: END ;Выход
;======================================
ERAS: BGS ;Включить питание
PWX $10,$19 ;Set CS
EXT $40 ;Стирание
END ;Выход
;======================================
LOCK: BGS ;Включить питание
PWX $10,$19 ;Set CS
EXT $47 ;Установка защиты
END ;Выход
;======================================
PWX $10,$19. При сбросе MPSSE, микросхема FT232H на всех выводах устанавливает единицы. Чтобы избежать перепадов уровней, перед вызовом EXT $XX необходимо установить в регистре USB_WRF (=$19) неактивное состояние сигналов. Такое же состояние сигналов устанавливается при инициализации MPSSE. Когда MPSSE переходит в режим RUN, программатор подключает выводы микросхемы FT232H к выводам микросхемы без случайных выбросов или провалов. EXT $XX. Используется для вызова функции из внешней библиотеки. В зависимости от режима работы (READ или PROG) вызывается соответствующая функция.
Полный список функций, которые программа может вызывать из внешней библиотеки:
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ООО «ТЦ ТРИТОН» (495) 500-7890 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||