Пока что самые насущные вопросы, критикуйте, дополняйте.
Q. >> Что такое MT-Link?
A. >> MT-Link это JTAG отладчик микроконтроллеров на базе ядра ARM7 и ARM9. На данный момент является полным аналогом отладчиком J -Link адаптера от www.segger.com. Отличия лишь в типе примененного выходного буфера – редкая в СНГ микросхема 74ALVC16245 заменена на две доступные LVC244. С точки зрения драйверов и обновления firmware – отличий нет никаких.
Q. >> Какие версии MT-Link существуют и как определить разницу между ними.
A. >> Существует три версии. Первая – 1.1 выпускалась достаточно давно, и является симулятором протокола J-Link с полностью оргинальной firmware. Внешне отличить очень просто – у версии 1.1 на боковой панели один светодиод, у всех новых – два. Последняя версия firmware для версии 1.1 может быть скачана тут www.mt-link.nm.ru/soft/mtlink116.rar Просто запустите exe файл при подключенном mt-link,
Есть также небольшая проблемная версия 1.2. С точки зрения софта аналогична версии 1.1, но по железу см. пункт о проблемах. Для новых версий MT-Link 5.0 (c двумя светодиодами) обновления производится автоматически при установке новых драйверов с segger.com
Q. >> Где брать драйвера для MT-Link и что с ними делать
A. >> Брать тут
http://segger.com/download_jlink.htmlСобственно MT-Link как отладчик «знает» только IAR. Для корректной работы просто сбрасываете JLinkARM.dll в каталог установки IAR/ARM/BIN (старый в этой папке лучше забэкапить).
Q. >> Какая разводка разъема JTAG, какие напряжения необходимы для работы ?
A. >> Ответы на ВСЕ подобные вопросы есть в JlinkARM.pdf в \Doc\Manuals, входящей в состав вышеназванного пакета. Там же много интересного про RDI и Jflash - хорошую утилиту для банальной прошивки вашего микроконтроллера
Q >> Что такое RDI и для чего он нужен ?
A>> RDI – Remote Debug Interface. Это стандартная «прослойка», своего рода API для систем отладки ARM архитектур. Его понимают большое кол-во средств разработки – IAR, Keil, Multi2000, RVDS и многие другие. RDI драйвер включен в упомянутый выше пакет от Сеггера, но требует лицензии. Использование его достаточно несложно - просто укажите используемой оболчке путь к JlinkRDI.dll (она лежит у вас внутри одной из подпапок установки вышеназванных драйверов). По вопросам финансовой адаптации к российским условиям – стучитесь мне в личку на electronix.ru
Q >> Какие преимущества дает RDI ?
A >> Помимо того, что RDI поддерживают большое количество сред разработки для ARM, его использование дает дополнительные преимущества. Сеггер разработал довольно интересную вещь – Flash Breakpoints. Дело в том, что у ARM возможно поставить только две аппаратных точки останова. Не вдаваясь в подробности, скажу лишь, что использование Flash Breakpoints позволяет ставить неограниченное их кол-во во Flash памяти. Выглядит это совершенно прозрачно для пользователя, хотя драйвера делают значительную работа, перепрошивают и восстанавливают нужные сектора, эмулируют часть инструкций и т п. Далее, RDI драйвера от Сеггера «знают» как прошивать большое кол-во процессоров с флеш памятью. Установив в RDI драйвере нужный процессор можно не заботиться больше о поисках флешлоадера.
Q>> А как мне проще всего проверить исправность моей системы ?
A >> В установленном пакете от Сеггера есть утилита jlink.exe . Запустив её сразу получаете ID подключенного ARM процессора. Если ID = 0 или 0xFFFFFFF – ищите ошибки в монтаже или питании.
Q>> Какую скорость загрузки можно получить с МТ-Линк
A>> Можно получить скорость в память до 800 кБайт в секунду. Я реально получал до 560 кБайт на процессоре LPC2148. Скорость загрузки во флеш естественно ниже, файл 130 килобайт льется в LPC порядка 3 секунд, но я считаю это хорошим значением. Необходимо также обратить внимание на частоту ядра процессора. Дело в том, что скорость работы JTAG напрямую зависит от неё. Если у вас не запущена PLL – не стоит ожидать космических скоростей. Запустить PLL до начала сессии отладки можно, например, через макросы отладчика.
Q>> Слышал, что USB кабель в комплекте никуда не годится - так ли это?
A>> В комплект включается кабель USB2.0 компании GemBird. На всех тестированных мной машинах (правда их не слишком много, порядка 5-ти различных компов) - никаких проблем я не замечал. Тем не менее кабель, действительно, дешевый и качеством не блещет. Поэтому если наблюдаются странные глюки, выражающей в постоянной потери коннекта - попробуйте заменить кабель. Включать в поставку кабель, котрый в розницу предлагают по цене не менее $6 думаю не стоит, у большинства их и так полно валяется.
Q>> О проблемах (куда ж без них)
A>> Есть две небольшие партии проблемных девайсов. Первая - переходная версия 1.2. В ней отсутствует стабилизатор напряжения внутреннего процессора. Опознать такую версию можно по двум светодиодам на боковой панели, но при этом серийник не равен 1111117 или 500000X. ( то есть 1111111..11111116 включительно ) workaround - впаять стабилизатор , если это вызывает нестабильность в работе.
Вторая - уже в новой, 5-ой версии - с серийниками 500000X конденсатор на выходе low-drop ошибочно поставлен 2.2 мкФ вместо 4.7 мкФ
workaround - впаять параллельно еще одну керамику на 2.2 или 3.3 мкф. Кол-во таких устройств незначительно, в настоящее время вышеназванные проблемы устранены.
Узнать серийник можно, запустив Jlink.exe