Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: LPC2478 + J-Link странности в работе
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > ARM
Сергей Владимирович
Здравствуйте! Проконсультируйте пожалуйста, кто в теме. Пытаюсь прочитать содержимое LPC2478 при помощи J-Link.
После выполнения команды Target->Connect, появляется предупреждение...

Нажмите для просмотра прикрепленного файла

Закрываем его, после этого LPC2478 читается без проблем, делал это несколько раз, файлы совпадают.
Кто знает из-за чего проявляется эта ошибка???

Также иногда появляется сообщение...

Нажмите для просмотра прикрепленного файла

Есть возможность указать частоту в Option->Project Setting, но это не помогает. Повторное Target->Connect решает проблему.

При попытке записи считанной прошивки в новый LPC2478 появляется сообщение...

Нажмите для просмотра прикрепленного файла

Если ответить "Да", то процессор прошивается без проблем! Есть ли шанс что первоначально прошивка читается неверно и от этого ошибка в CRC??

Кто сталкивался, развейте сомнения!!! Спасибо!!!
jcxz
Цитата(Сергей Владимирович @ Aug 15 2017, 22:27) *
Если ответить "Да", то процессор прошивается без проблем! Есть ли шанс что первоначально прошивка читается неверно и от этого ошибка в CRC??

А где Вы в том окошке CRC узрели-то??? Имхо: имеется в виду контрольная сумма первых нескольких векторов из таблицы прерываний.
По проблеме: ваш J-Link поддерживает ARM7? WDT выключен? JTAG правильно подключен? и т.п.
Сергей Владимирович
Я подумал, что контрольная сумма и CRC - одно и тоже...

LPC2478 есть в списке "J-Flash V6.18a"...

Нажмите для просмотра прикрепленного файла

...судя по логу соединяется...

Цитата
Connecting ...
- Connecting via USB to J-Link device 0
- Using adaptive clocking instead of fixed JTAG speed
- VTarget = 3.293V
- Executing init sequence ...
- Initialized successfully
- Using adaptive clocking instead of fixed JTAG speed
- CPU clock frequency: 4025 kHz (Auto detected)
- J-Link found 1 JTAG device. Core ID: 0x4F1F0F0F (None)
- Connected successfully


Вот по поводу WDT ничего не могу сказать... в настройках ничего не нашел... как это можно проверить??

JTAG правильно подключен? Всё по даташиту...

Нажмите для просмотра прикрепленного файла

Integro
Первое окно, с сообщением "...Jlink is defective" стало появляться в новых версиях ПО от segger, судя по всему они добавили какую-то проверку на лицензию устройства. Я использую версию V6.12, там этой проверки еще нет, можно скачать в архиве на официальном сайте.
Так же, бы ли посты на форуме с прошивкой для JLink которая лечит данную проблему, но лично это не проверял.

UPD:Проверил прошивку, работает. Источник
jcxz
Цитата(Сергей Владимирович @ Aug 16 2017, 09:16) *
Я подумал, что контрольная сумма и CRC - одно и тоже...

Нет.
Насколько помню: в LPC в векторе 7 (номер возможно путаю) таблицы прерываний должна быть сумма предыдущих векторов, которую проверяет ROM-загрузчик (и видимо проверяет эмулятор при загрузке).
Если в считанной Вами прошивке этой суммы нет - видимо неверно считали. Прошивка в неверной суммой просто не запустится.

Цитата(Сергей Владимирович @ Aug 16 2017, 09:16) *
Вот по поводу WDT ничего не могу сказать... в настройках ничего не нашел... как это можно проверить??

WDT я имел в виду внешний, на плате, если таковой есть. Внутренний по дефолту выкл.

Ещё можно попробовать выставить явно частоту JTAG. Фиксированной. И пониже.
И попробовать загрузку в RAM.
Также можно попробовать подключиться к МК по UART (Flashmagic-ом) например и стереть его полностью.
Да - и в каком состоянии у Вас boot-пины?
Сергей Владимирович
Цитата(Integro @ Aug 16 2017, 10:25) *
...окно, с сообщением "...Jlink is defective" стало появляться в новых версиях ПО от segger...

Спасибо! Это всё проясняет)))

Цитата(jcxz @ Aug 16 2017, 11:52) *
...в LPC в векторе 7 таблицы прерываний должна быть сумма предыдущих векторов, которую проверяет ROM-загрузчик... Если в считанной Вами прошивке этой суммы нет - видимо неверно считали. Прошивка в неверной суммой просто не запустится.

Есть подозрение что первый сектор был стёрт, отсюда и проблема. С этим понятно, считаю с заведомо рабочего процессора...

Цитата(jcxz @ Aug 16 2017, 11:52) *
WDT я имел в виду внешний, на плате, если таковой есть. Внутренний по дефолту выкл.

Таковой на плате отсутствует, значит дело не в нём.

Цитата(jcxz @ Aug 16 2017, 11:52) *
Также можно попробовать подключиться к МК по UART (Flashmagic-ом) например и стереть его полностью.

В том то и дело, что нельзя! Нужна прошивка!!

Цитата(jcxz @ Aug 16 2017, 11:52) *
Да - и в каком состоянии у Вас boot-пины?

Вы имеете ввиду линию P2[10] (LOW on this pin while RESET is LOW forces on-chip bootloader to take over control of the part after a reset)?
Вот собственно схема платы..., взгляните, если вас не затруднит. Спасибо!

Нажмите для просмотра прикрепленного файла
megajohn
Цитата(Сергей Владимирович @ Aug 16 2017, 16:16) *
В том то и дело, что нельзя! Нужна прошивка!!


не нужна, бутлодырь с завода, и так просто его не стерешь
Сергей Владимирович
Что-то я сомневаюсь, что обошлось одним бутлоадером! А как он программу с flash внешней вычитывает?? LPC работает в связке с ...29LV640+IS42S32200E!!
jcxz
Цитата(Сергей Владимирович @ Aug 16 2017, 16:16) *
В том то и дело, что нельзя! Нужна прошивка!!

Почему нельзя?? Не понял... wacko.gif
Это вполне вероятная причина глюков - раз у Вас там во флеше уже как Вы пишете первый сектор стёрт или повреждён - т.е. ПО нерабочее, возможно оно всё-таки стартует, а дальше - пересбрасывается процессор или улетает в HardFault или ещё чего. И так по кругу. Из-за этого и проблемы с подключением JTAG.
У меня в практике с LPC такое иногда случалось. В этом случае надёжно помогало - ногу 2.10 на '0', RESET и дальше стереть всю флешь FlashMagic-ом. После этого JTAG начинал нормально работать.

Цитата(Сергей Владимирович @ Aug 16 2017, 16:16) *
Вы имеете ввиду линию P2[10] (LOW on this pin while RESET is LOW forces on-chip bootloader to take over control of the part after a reset)?
Вот собственно схема платы..., взгляните, если вас не затруднит. Спасибо!

Да оно самое. У Вас вон даже кнопка для этого есть.

Цитата(Сергей Владимирович @ Aug 16 2017, 17:10) *
Что-то я сомневаюсь, что обошлось одним бутлоадером! А как он программу с flash внешней вычитывает?? LPC работает в связке с ...29LV640+IS42S32200E!!

Бутлоадер потому и называется бутлоадером, что может грузить прошивку из разных источников. Список источников зависит от конкретного МК.
И из UART, из внешней FLASH и с USB и с Ethernet и т.д.

PS: Да, по схеме - на вход RESET лучше ставить супервизор после кнопки. Чтобы обеспечить требуемую минимальную длительность сигнала RESET, а не дёргаться на импульсах дребезга.
Сергей Владимирович
Спасибо! Всё заколосилось))) Прошивку слил!!!

А вы случаем не в курсе может ли Flash Magic слить прошивку... Смотрел меню смотрел, но так "Read" не нашёл(((
x893
JLink defective ...
появляется из-за GDBFull в строке лицензии.
Проверяется для некоторых типов JLink.
Можете поменять на GDB или GDBFULL (точно не помню) или просто убрать из списка лицензии.
jcxz
Цитата(Сергей Владимирович @ Aug 20 2017, 17:53) *
А вы случаем не в курсе может ли Flash Magic слить прошивку... Смотрел меню смотрел, но так "Read" не нашёл(((

Откройте даташит на Ваш МК на разделе "ISP". Если он содержит функцию чтения - значит может, иначе - нет. FlashMagic работает через ISP.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.