Перейти к содержанию
    

IAR, J-Link, Kinetis K60

Привет всем. Нуждаюсь в помощи.

 

Уже четвертые сутки пытаюсь начать работать с 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."

Вышел на ето, но мне ет чет не помогло :(

B еще на J-Link есть "сдвоенный диод" Ready/Error. И при подачи питания с платы, начинает предательски мигать красным (я так понимаю что эт ерор).

В общем много и долго ковырялся (4 дня), ни как могу понять в чем проблема :( В контролере или J-Linke ?

И что самое интересное, что когда мне все эт вручали, все вроде нормально работало :(

Очень прошу помощи.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Каждый раз перед строкой "****** 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."

Вышел на ето, но мне ет чет не помогло :(

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

 

Кстати, а в J-Link Commander'e делали

J-Link> unlock Kinetis
Изменено пользователем PoReX

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

J-Link> unlock Kinetis
Пробовал :( Тот возвращает:

J-Link>unlock Kinetis
Found SWD-DP with ID 0x2BA01477
Unlocking device...O.K.
J-Link>

Ток после етого пробую все заного и ничего не меняется :( Может чего еще надо сделать, какую нить команду ?

 

И почему у мя

jlink.exe:

Info: TotalIRLen = ?, IRPrint = 0x..000000000000000000000000

Debug Log(IAR) я так понимаю эт тоже самое:

Could not measure total IR len. TDO is constant high.

Эт нормально ? У всех на форумах TotalIRLen имеет какое то значение.

Судя по этому эт можетбыть следствием "залоченного проца" ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ток после етого пробую все заного и ничего не меняется

С новым конфигурационным файлом?

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

 

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 правильно подключен?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Что за плата, самодельная или кит? J-Link правильно подключен?
Да плата "своя".J-Link проверил еще раз, вроде, все правильно.

 

Чет я запутался...

Изменено пользователем GentleFly

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вроде какойто прогресс :)

Нашел у 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 Kinetis_ETB_ETM_Trace_IARV610.rar

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

по идее, нужно сделать full erase

В общем к этому я и пришел ток я не могу понять как это сделать.

С английским у меня проблемы, но вроде здесь и здесьчет об этом говорится но и упоминается некий "erase_all_pin.jlk". Эт наверно линкер скрипт ? Но не смог найти его (ток на каком-то азиатском форуме, зарегистрироваться не смог :( языка не знаю), а как его описать самостоятельно, не понимаю. Одного "unlock Kinetis" видимо мало.

Может кто сможет чего подсказать ?

Изменено пользователем GentleFly

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вроде какойто прогресс :)

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.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

...Мне кажется, что здесь все-таки проблема в схеме, т.к. Jlink не находит проц вообще. Еслиб он был просто заблокирован, то все равно бы отзывался...
Думаю каокой-то отзыв есть. Т.к. jlink.exe (V4.50m), при запуске:

Каждый раз перед строкой "****** 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, или я ошибаюсь ?

 

Попробуйте в IAR поставить режим работы эмулятора SWD вместо JTAG. У меня была точно такая же ошибка с K60 на самодельной плате, по SWD нормально шилось- отлаживалось, по JTAG не получалось...
Логично, до меня ток дошло, что сообщение "Found SWD-DP with ID 0x2BA01477" - найден SWD Debug Port c ID 0x2BA01477. Но к моему сожалению ничего не изменилось :(

 

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

 

Пришли изменения после того как скачал последнею версию 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!". Ну чтож, попробуем разбираться :(

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А у Kinetis'a есть другие способв прошивки, UART, USB и д.р.? Может попробовать связаться через них и тогда станет ясно, жив пациент или нет.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...