Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: IAR, J-Link, Kinetis K60
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > ARM
GentleFly
Привет всем. Нуждаюсь в помощи.

Уже четвертые сутки пытаюсь начать работать с IAR, J-Link, Kinetis K60.
  • IAR for ARM v6.3;
  • J-Link, я так понял, копия. На плате обнаружил маркировку «W-Link V8.0» (at91sam7s64);
  • МК – Kinetis K60P144M100SF2 (маркировка на плате PK60N512VLQ100). Плата подготовлена с JTAG.

Поставил IAR, установил Setup_JLinkARM_V450m.exe с официального сайта. Ищу в example projects», в папках IAR. Запускаю проект hello_world_k60_tower. Пробегаюсь по настройкам проекта аналогично этому http://www.segger.com/IDE_Integration_IAR.html. Далее жмякую на «Download and Debug». В ответ получаю несколько сообщений об ошибке:
  1. Failed to get CPU status after 4 retries/ Retry ?
  2. Fatal error: Session aborted!
  3. Failed to load flash loader C:Progr…FlashK60Xxxx.flash
  4. The debugging session could not be started. Either the debugger initialization failed, or else the file "… hello_world_k60_tower.out" was corrupt or of an unsupported format.

Debug Log:
Код
Mon Jul 30, 2012 00:08:39: Loaded macro file: C:Program Files (x86)IAR SystemsEmbedded Workbench 6.0armconfigflashloaderFreescaleFlashK60Xxxx.mac
Mon Jul 30, 2012 00:08:39: JLINK command: ProjectFile = C:Program Files (x86)IAR SystemsEmbedded Workbench 6.0armexamplesFreescaleKinetishello_worldsettingshello_world_k60_tower_FLASH_128
KB_PFLASH.jlink, return = 0
Mon Jul 30, 2012 00:08:39: Device "MK60DN512XXX10" selected (512 KB flash, 128 KB RAM).
Mon Jul 30, 2012 00:08:39: JLINK command: device = MK60DN512xxx10, return = 0
Mon Jul 30, 2012 00:08:39: DLL version: V4.51j, compiled Jul 24 2012 22:40:14
Mon Jul 30, 2012 00:08:39: Firmware: J-Link ARM V8 compiled Jul 20 2012 16:33:52
Mon Jul 30, 2012 00:08:39: JTAG speed is initially set to: 32 kHz
Mon Jul 30, 2012 00:08:39: Could not measure total IR len. TDO is constant high.
Mon Jul 30, 2012 00:08:39: Could not measure total IR len. TDO is constant high.
Mon Jul 30, 2012 00:08:39: Hardware reset with strategy 0 was performed
Mon Jul 30, 2012 00:08:39: Initial reset was performed
Mon Jul 30, 2012 00:08:39: Could not measure total IR len. TDO is constant high.
...
Mon Jul 30, 2012 00:08:40: Could not measure total IR len. TDO is constant high.
Mon Jul 30, 2012 00:08:40: ----- Prepare hardware for Flashloader -----
Mon Jul 30, 2012 00:08:40: Could not measure total IR len. TDO is constant high.
...
Mon Jul 30, 2012 00:10:37: Could not measure total IR len. TDO is constant high.
Mon Jul 30, 2012 00:11:45: Fatal error:    Session aborted!
Mon Jul 30, 2012 00:11:45: Failed to load flash loader: C:Program Files (x86)IAR SystemsEmbedded Workbench 6.0armconfigflashloaderFreescaleFlashK60Xxxx.out
Mon Jul 30, 2012 00:11:45: Failed to load flash loader: C:Program Files (x86)IAR SystemsEmbedded Workbench 6.0armconfigflashloaderFreescaleFlashK60Xxxx.flash

Что говорит при запуске jlink.exe
Код
SEGGER J-Link Commander V4.36f ('?' for help)
Compiled Oct 22 2011 15:21:57
DLL version V4.51j, compiled Jul 24 2012 22:40:14
Firmware: J-Link ARM V8 compiled Jul 20 2012 16:33:52
Hardware: V8.00
S/N: 11111118
VTarget = 3.222V
Info: TotalIRLen = ?, IRPrint = 0x..000000000000000000000000
No devices found on JTAG chain. Trying to find device on SWD.
Info: Found SWD-DP with ID 0x2BA01477

****** Error: Could not read AHB-AP Id. Could not connect to target.
No device found on SWD.
Info: TotalIRLen = ?, IRPrint = 0x..000000000000000000000000
No devices found on JTAG chain. Trying to find device on SWD.
Info: Found SWD-DP with ID 0x2BA01477

****** Error: Could not read AHB-AP Id. Could not connect to target.
No device found on SWD.
J-Link>


Каждый раз перед строкой "****** Error: Could not read AHB-AP Id. Could not connect to target." Вываливается окошко с сообщением:
"Secured Kinetis device detected/ For debugger connection the device needce to be unsecured. Do you want to unsecure the device?
Note:Unsecuring will trigger a mass erase of the internal flash."
Вышел на ето, но мне ет чет не помогло sad.gif
B еще на J-Link есть "сдвоенный диод" Ready/Error. И при подачи питания с платы, начинает предательски мигать красным (я так понимаю что эт ерор).
В общем много и долго ковырялся (4 дня), ни как могу понять в чем проблема sad.gif В контролере или J-Linke ?
И что самое интересное, что когда мне все эт вручали, все вроде нормально работало sad.gif
Очень прошу помощи.
PoReX
Цитата(GentleFly @ Jul 30 2012, 02:52) *
Каждый раз перед строкой "****** Error: Could not read AHB-AP Id. Could not connect to target." Вываливается окошко с сообщением:
"Secured Kinetis device detected/ For debugger connection the device needce to be unsecured. Do you want to unsecure the device?
Note:Unsecuring will trigger a mass erase of the internal flash."
Вышел на ето, но мне ет чет не помогло sad.gif

Судя по этим сообщениям у вас залочен чип, что бы его разблокировать, по идее, нужно сделать full erase. Ссылку вы нашли правильную, только чип у вас уже заблокирован.

Кстати, а в J-Link Commander'e делали
Цитата
J-Link> unlock Kinetis
GentleFly
Цитата(PoReX @ Jul 30 2012, 09:38) *
J-Link> unlock Kinetis
Пробовал sad.gif Тот возвращает:
Код
J-Link>unlock Kinetis
Found SWD-DP with ID 0x2BA01477
Unlocking device...O.K.
J-Link>
Ток после етого пробую все заного и ничего не меняется sad.gif Может чего еще надо сделать, какую нить команду ?

И почему у мя
jlink.exe:
Код
Info: TotalIRLen = ?, IRPrint = 0x..000000000000000000000000
Debug Log(IAR) я так понимаю эт тоже самое:
Код
Could not measure total IR len. TDO is constant high.
Эт нормально ? У всех на форумах TotalIRLen имеет какое то значение.
Судя по этому эт можетбыть следствием "залоченного проца" ?
PoReX
Цитата(GentleFly @ Jul 30 2012, 16:58) *
Ток после етого пробую все заного и ничего не меняется

С новым конфигурационным файлом?
Попробуйте в Keil'e запустить проект и не помешал бы проект IAR.

Цитата(GentleFly @ Jul 30 2012, 16:58) *
jlink.exe:
Код
Info: TotalIRLen = ?, IRPrint = 0x..000000000000000000000000
Debug Log(IAR) я так понимаю эт тоже самое:
Код
Could not measure total IR len. TDO is constant high.
Эт нормально ? У всех на форумах TotalIRLen имеет какое то значение.

Честно говоря не знаю что за TotalIRLen. А вот поведение TDO странное. Что за плата, самодельная или кит? J-Link правильно подключен?
GentleFly
Цитата(PoReX @ Jul 31 2012, 09:45) *
Что за плата, самодельная или кит? J-Link правильно подключен?
Да плата "своя".J-Link проверил еще раз, вроде, все правильно.

Чет я запутался...
GentleFly
Вроде какойто прогресс sm.gif
Нашел у SEGGER (C:Program Files (x86)SEGGERJLinkARM_V450mSamplesJLinkProjects) Один интересный проектик. Переключил, в настройках, на свой "Device".
Далее запускаю jlink.exe, и вводим команду разблокировки.
Код
SEGGER J-Link Commander V4.50m ('?' for help)
Compiled Jul 20 2012 19:39:47
DLL version V4.50m, compiled Jul 20 2012 19:39:26
Firmware: J-Link ARM V8 compiled Jul 20 2012 16:33:52
Hardware: V8.00
S/N: 11111118
VTarget = 3.215V
Info: Found SWD-DP with ID 0x2BA01477

****** Error: Could not read AHB-AP Id. Could not connect to target.
Info: Found SWD-DP with ID 0x2BA01477
No devices found on JTAG chain. Trying to find device on SWD.
Info: Found SWD-DP with ID 0x2BA01477

****** Error: Could not read AHB-AP Id. Could not connect to target.
Info: Found SWD-DP with ID 0x2BA01477
No device found on SWD.
Info: TotalIRLen = ?, IRPrint = 0x..000000000000000000000000
Info: TotalIRLen = ?, IRPrint = 0x..000000000000000000000000
No devices found on JTAG chain. Trying to find device on SWD.
Info: Found SWD-DP with ID 0x2BA01477

****** Error: Could not read AHB-AP Id. Could not connect to target.
Info: Found SWD-DP with ID 0x2BA01477
No device found on SWD.
J-Link>unlock Kinetis
Found SWD-DP with ID 0x2BA01477
Unlocking device...O.K.
J-Link>

Далее, не закрывая jlink.exe, идем в IAR и «Download and Debug». И получаем Debug Log:
Код
Thu Aug 02, 2012 07:45:22: Loaded macro file: E:\projects\Kinetis_ETB_ETM_Trace_IARV610\Config\ETMInit.mac
07:45:22: JLINK command: ProjectFile = E:\projects\Kinetis_ETB_ETM_Trace_IARV610\settings\Kinetis_ETBTrace_IARV610_Debug_RAM.jlink, return = 0
07:45:22: Device "MK60DN512XXX10" selected (512 KB flash, 128 KB RAM).
07:45:22: JLINK command: device = MK60DN512xxx10, return = 0
07:45:22: DLL version: V4.50m, compiled Jul 20 2012 19:39:26
07:45:22: Firmware: J-Link ARM V8 compiled Jul 20 2012 16:33:52
07:45:22: JTAG speed is initially set to: 1000 kHz
07:45:22: Found SWD-DP with ID 0x2BA01477
07:45:26: Fatal error: Could not read AHB-AP Id. Could not connect to target.   Session aborted!
07:45:26: Failed to load debugee: E:\projects\Kinetis_ETB_ETM_Trace_IARV610\Output\Debug_RAM\Exe\Kinetis_ETBTrace_IARV610.out

Теперь будем разбираться что за "Could not read AHB-AP Id. Could not connect to target.", "Found SWD-DP with ID 0x2BA01477".
В Keil'e пока не пробовал. Последний проект для IAR Нажмите для просмотра прикрепленного файла
GentleFly
Цитата(PoReX @ Jul 30 2012, 09:38) *
по идее, нужно сделать full erase

В общем к этому я и пришел ток я не могу понять как это сделать.
С английским у меня проблемы, но вроде здесь и здесьчет об этом говорится но и упоминается некий "erase_all_pin.jlk". Эт наверно линкер скрипт ? Но не смог найти его (ток на каком-то азиатском форуме, зарегистрироваться не смог sad.gif языка не знаю), а как его описать самостоятельно, не понимаю. Одного "unlock Kinetis" видимо мало.
Может кто сможет чего подсказать ?
PoReX
Цитата(GentleFly @ Aug 2 2012, 07:54) *
Вроде какойто прогресс sm.gif
Код
Info: Found SWD-DP with ID 0x2BA01477
No device found on SWD.
J-Link>unlock Kinetis
Found SWD-DP with ID 0x2BA01477
Unlocking device...O.K.
J-Link>

Не хочу вас огорчать, но по-моему никакого прогресса нет, посмотрите на лог первого поста. Вообще не понятно как jlink смог разблокировать kinetis если его не нашел.
Мне кажется, что здесь все-таки проблема в схеме, т.к. Jlink не находит проц вообще. Еслиб он был просто заблокирован, то все равно бы отзывался(с Kinetisами не работал, но у остальных контроллеров так).
АДИКМ
Попробуйте в IAR поставить режим работы эмулятора SWD вместо JTAG. У меня была точно такая же ошибка с K60 на самодельной плате, по SWD нормально шилось- отлаживалось, по JTAG не получалось. Розыск причины отложил на потом, работаю по SWD.
GentleFly
Цитата(PoReX @ Aug 3 2012, 10:45) *
...Мне кажется, что здесь все-таки проблема в схеме, т.к. Jlink не находит проц вообще. Еслиб он был просто заблокирован, то все равно бы отзывался...
Думаю каокой-то отзыв есть. Т.к. jlink.exe (V4.50m), при запуске:
Цитата(GentleFly @ Jul 30 2012, 02:52) *
Каждый раз перед строкой "****** Error: Could not read AHB-AP Id. Could not connect to target." Вываливается окошко с сообщением:
"Secured Kinetis device detected/ For debugger connection the device needce to be unsecured. Do you want to unsecure the device?
Note:Unsecuring will trigger a mass erase of the internal flash."
Т.е. я ему не указывал что работаю с Kinetis, а он уже мне говорит что тот "...Secured Kinetis device detected...". Значит мк отзывается и говорит что он Kinetis, или я ошибаюсь ?

Цитата(АДИКМ @ Aug 4 2012, 00:35) *
Попробуйте в IAR поставить режим работы эмулятора SWD вместо JTAG. У меня была точно такая же ошибка с K60 на самодельной плате, по SWD нормально шилось- отлаживалось, по JTAG не получалось...
Логично, до меня ток дошло, что сообщение "Found SWD-DP with ID 0x2BA01477" - найден SWD Debug Port c ID 0x2BA01477. Но к моему сожалению ничего не изменилось sad.gif

АДИКМ, может у вас есть возможность поделится простеньким рабочим проектом со всеми конфигурационными файлами (нужных для запуска проекта)? Я буду очень благодарен. Мож мне поможет. Могу в личку скинуть емайл.

Пришли изменения после того как скачал последнею версию jlink.exe (V4.52).
IAR Debug Log:
Код
05:37:20: Loaded macro file: E:\projects\Kinetis_ETB_ETM_Trace_IARV610\Config\ETMInit.mac
05:37:20: Logging to file: E:\projects\Kinetis_ETB_ETM_Trace_IARV610\cspycomm.log
05:37:20: JLINK command: ProjectFile = E:\projects\Kinetis_ETB_ETM_Trace_IARV610\settings\Kinetis_ETBTrace_IARV610_Debug_RAM.jlink, return = 0
05:37:20: Device "MK60DN512XXX10" selected (512 KB flash, 128 KB RAM).
05:37:20: JLINK command: device = MK60DN512Zxxx10, return = 0
05:37:20: DLL version: V4.52m, compiled Aug  3 2012 16:58:00
05:37:20: Firmware: J-Link ARM V8 compiled Aug  1 2012 13:40:47
05:37:20: JTAG speed is using adaptive clocking (RTCK signal)
05:37:22: Found SWD-DP with ID 0x2BA01477
05:37:26: Fatal error: Kinetis (connect): Timeout while halting CPU. CPU does not stop.   Session aborted!
05:37:26: Failed to load debugee: E:\projects\Kinetis_ETB_ETM_Trace_IARV610\Output\Debug_RAM\Exe\Kinetis_ETBTrace_IARV610.out

Теперь он говорит "Fatal error: Kinetis (connect): Timeout while halting CPU. CPU does not stop. Session aborted!". Ну чтож, попробуем разбираться sad.gif
PoReX
А у Kinetis'a есть другие способв прошивки, UART, USB и д.р.? Может попробовать связаться через них и тогда станет ясно, жив пациент или нет.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.