Eclipse + GCC + OpenOCD: готовая сборка среды

32-разрядные микроконтроллеры разработки ОАО "НИИЭТ"

Модераторы: pip, _sva_

Аватара пользователя
Лашкевич
Сообщения: 62
Зарегистрирован: 13 май 2015, 13:10
Предприятие: ООО "НПФ Вектор"
Откуда: Москва
Контактная информация:

Eclipse + GCC + OpenOCD: готовая сборка среды

Сообщение Лашкевич » 30 дек 2015, 13:17

Добрый день. В преддверии Нового года мы решили поделиться своей версией среды на основе свободного ПО для K1921BK01T, в которой мы уже больше года успешно ведем разработку. Это сборка Eclipse+пакет GCC для кросс компиляции+OpenOCD+GNU ARM Plugin+конфигурационные файлы и примеры. Мы поместили перечисленное в единый инсталлятор и попробовали сделать так, чтобы всё это работало сразу "из коробки" с K1921BK01T и JTAG-эмулятором J-link (или совместимым). Полученную среду мы назвали Vector IDE и выложили для свободного скачивания на нашем сайте http://motorcontrol.ru/production/soft/vector-ide/ без каких-либо ограничений. Там же написали краткую инструкцию для пользователей по быстрому началу работы. Планируется, что пользователю достаточно будет нажать в инсталляторе "Некст-некст-некст-финиш", запустить среду, в которой сразу откроется рабочее пространство с примерами, нажать кнопку "отладка" и.. если к компьютеру подключен K1921BK01T через J-link, то сразу приступить к работе с микроконтроллером. Насколько это получилось достичь в первой версии среды мы не знаем, ждем ваших отзывов. Также мы готовы в будущем включить в состав инсталлятора файлы конфигураций для других JTAG-эмуляторов, если кто-то его сделает и испытает. В данной сборке OpenOCD пока используется нашей версии (с программатором ООО "НПФ Вектор"), версию НИИЭТ планируем протестировать и вставить позже.

По нашему опыту среда на основе Eclipse - это самое удобное средство разработки, так как возможности Eclipse по редактированию кода задают самую высокую планку для всех других сред. Пакет кросс компиляторов gcc тоже очень хорош (о нашем тестировании можете посмотреть презентацию http://motorcontrol.ru/wp-content/uploa ... _03_v7.pdf). Поэтому совместное их использование дает полноценную среду разработки, при этом совершенно бесплатно. Это особенно важно для разработчиков с государственным финансированием, так как имеется тенденция импортозамещения и запрета на закупку иностранного ПО. Поэтому надеемся, что наша сборка будет полезна для продвижения K1921BK01T, ждем ваших отзывов.
С уважением,
Лашкевич Максим.
Инженер-программист ООО "НПФ Вектор", Москва.
http://motorcontrol.ru/

Аватара пользователя
Лашкевич
Сообщения: 62
Зарегистрирован: 13 май 2015, 13:10
Предприятие: ООО "НПФ Вектор"
Откуда: Москва
Контактная информация:

Re: Eclipse + GCC + OpenOCD: готовая сборка среды

Сообщение Лашкевич » 13 янв 2016, 21:02

Вставили в дистрибутив версию OpenOCD разработки НИИЭТ (.exe файл из последнего обсуждения на bitbucket https://bitbucket.org/niietcm4/niietcm4 ... ag-openocd). На тестах на JTAG J-Link эта версия прошивала чуть медленнее, чем наша, зато новая версия более функциональна - поддерживает прошивку пользовательской памяти, если это требуется. Кроме того, в установщик мы добавили выбор используемого JTAG между J-Link и ST-Link. Теперь можно галочкой в установщике выбрать, под какой JTAG сгенерируются конфиги OpenOCD. Надеемся, что теперь и с J-Link и с ST-Link среда будет работать "из коробки".
С уважением,
Лашкевич Максим.
Инженер-программист ООО "НПФ Вектор", Москва.
http://motorcontrol.ru/

Аватара пользователя
MR.Smith
Сообщения: 49
Зарегистрирован: 25 апр 2016, 10:56

Re: Eclipse + GCC + OpenOCD: готовая сборка среды

Сообщение MR.Smith » 29 апр 2016, 10:58

Здравствуйте!

Никак не получается установить WinUSB драйвер для программатора J-Link через Zadig.
Win 7 x64 Home Premium, Intel Core i3, 4Gb RAM, 120 Gb SSD

Делал все по User Manual, но всегда получаю ошибку:
Изображение

Есть ли другие способы установки драйвера?
С программатором все нормально, в Keil работает без проблем.

Аватара пользователя
Лашкевич
Сообщения: 62
Зарегистрирован: 13 май 2015, 13:10
Предприятие: ООО "НПФ Вектор"
Откуда: Москва
Контактная информация:

Re: Eclipse + GCC + OpenOCD: готовая сборка среды

Сообщение Лашкевич » 29 апр 2016, 11:19

Добрый день. Да, мы тоже сталкивались с такой проблемой периодически на некоторых компьютерах. Ручной способ установки есть, его можно поискать где-то на англоязычных форумах об утилите Zadig и OpenOCD - он и использовался как раз до пришествия zadig. Но, думаю, результат будет тем же. У нас в мануале написано:
Если драйвер не установился или не работает, можно попробовать нажать на кнопку «Install Driver» в Zadig несколько раз (если Zadig сообщает, что установка не удалась), вынуть/вставить JTAG из USB, перезагрузить компьютер, отключить антивирус, запустить программу с правами администратора, проверить состояние устройства в диспетчере устройств Windows.
еще могу посоветовать поменять USB разъем, а если используется USB разветвитель, то вставить в компьютер JTAG без него, напрямую. А еще попробовать произвести замену драйвера как при установленных стандартных драйверах J-link, так и при удаленных (когда удаляете устройство из диспетчера устройств вместе с драйверами, а потом устанавливаете драйвера через zadig на "пустое" неизвестное устройство). У нас всегда один из этих способов помогал. Вы перепробовали все из советов?
С уважением,
Лашкевич Максим.
Инженер-программист ООО "НПФ Вектор", Москва.
http://motorcontrol.ru/

Аватара пользователя
MR.Smith
Сообщения: 49
Зарегистрирован: 25 апр 2016, 10:56

Re: Eclipse + GCC + OpenOCD: готовая сборка среды

Сообщение MR.Smith » 29 апр 2016, 15:47

Максим, большое спасибо за советы!

Да, я все это пытался делать.
- Антивирус отключил
- Все запускаю под правами Админа. Перезагружался много раз.
- Пытался ставить драйвер как поверх родного, так и на чистое устройство, предварительно удалив драйвер из системы. Кнопку "Установить" нажимал тысячу раз.
- Перепробовал все порты на ноутбуке. Хаба нет.

При попытке установки на чистое устройство после сообщения об ошибке в дистпетчере задач устройство иногда переключается в состояние "Для этого устройства не загружены и не требуются файлы драйвера".
В этом состоянии тоже прошиться невозможно.
Сообщение об ошибке
Open On-Chip Debugger 0.10.0-dev-00189-g554313b-dirty (2016-01-12-08:19)
Licensed under GNU GPL v2
For bug reports, read
http://openocd.org/doc/doxygen/bugs.html
Info : auto-selecting first available session transport "jtag". To override use 'transport select <transport>'.
adapter speed: 2000 kHz
adapter_nsrst_delay: 100
jtag_ntrst_delay: 100
none separate
cortex_m reset_config sysresetreq
trst_only separate trst_push_pull
adapter speed: 1500 kHz
jaylink: Failed to open device: LIBUSB_ERROR_NOT_SUPPORTED.
Info : No device selected, using first device.
Error: No J-Link device found.
После праздников попытаюсь поставить на другую машину. Быть может сработает.

Аватара пользователя
Лашкевич
Сообщения: 62
Зарегистрирован: 13 май 2015, 13:10
Предприятие: ООО "НПФ Вектор"
Откуда: Москва
Контактная информация:

Re: Eclipse + GCC + OpenOCD: готовая сборка среды

Сообщение Лашкевич » 29 апр 2016, 16:27

Посмотрите тогда ещё, пожалуйста, домашнюю страницу Zadig, скачайте новую версию. http://zadig.akeo.ie/
Там же есть гайд и FAQ, может быть там еще какие-то нюансы описаны. Там же можно вопрос разработчикам задать.
С уважением,
Лашкевич Максим.
Инженер-программист ООО "НПФ Вектор", Москва.
http://motorcontrol.ru/

Аватара пользователя
MR.Smith
Сообщения: 49
Зарегистрирован: 25 апр 2016, 10:56

Re: Eclipse + GCC + OpenOCD: готовая сборка среды

Сообщение MR.Smith » 04 май 2016, 12:50

Удалось установить.

Скачал с http://zadig.akeo.ie/ последнюю версию Zadig (2.2.689) для Windows XP.
Эта версия установила драйвер в Windows 7 x64 с первой попытки.

Также в процессе установки заметил, что Zadig не понравилось, что служба "Центр обновления Windows" была отключена. Zadig в логах попросил эту службу включить.

Аватара пользователя
Лашкевич
Сообщения: 62
Зарегистрирован: 13 май 2015, 13:10
Предприятие: ООО "НПФ Вектор"
Откуда: Москва
Контактная информация:

Re: Eclipse + GCC + OpenOCD: готовая сборка среды

Сообщение Лашкевич » 04 май 2016, 14:11

Спасибо что довели дело до конца. Включим в сборку среды разные версии zadig, раз есть такие проблемы.
С уважением,
Лашкевич Максим.
Инженер-программист ООО "НПФ Вектор", Москва.
http://motorcontrol.ru/

Аватара пользователя
MR.Smith
Сообщения: 49
Зарегистрирован: 25 апр 2016, 10:56

Re: Eclipse + GCC + OpenOCD: готовая сборка среды

Сообщение MR.Smith » 04 май 2016, 14:48

Отладку пока выполнить не получается. OpenCD пишет:
Open On-Chip Debugger 0.10.0-dev-00189-g554313b-dirty (2016-01-12-08:19)
Licensed under GNU GPL v2
For bug reports, read
http://openocd.org/doc/doxygen/bugs.html
Info : auto-selecting first available session transport "jtag". To override use 'transport select <transport>'.
adapter speed: 2000 kHz
adapter_nsrst_delay: 100
jtag_ntrst_delay: 100
none separate
cortex_m reset_config sysresetreq
trst_only separate trst_push_pull
adapter speed: 1500 kHz
Info : No device selected, using first device.
Info : J-Link ARM V8 compiled Nov 28 2014 13:44:46
Info : Hardware version: 8.00
Info : VTarget = 3.345 V
Info : clock speed 1500 kHz
Info : JTAG tap: k1921vk01t.cpu tap/device found: 0x4ba00477 (mfg: 0x23b, part: 0xba00, ver: 0x4)
Error: JTAG-DP OVERRUN - check clock, memaccess, or reduce jtag speed
Info : JTAG tap: k1921vk01t.cpu tap/device found: 0x4ba00477 (mfg: 0x23b, part: 0xba00, ver: 0x4)
Error: JTAG-DP OVERRUN - check clock, memaccess, or reduce jtag speed
Error: Target not examined yet
in procedure 'reset' called at file "C:\Program Files (x86)\VectorIDE\eclipse-luna\\..\openocd/kits/k1921vk01t_jlink/simple_connect.cfg", line 15
in procedure 'ocd_bouncer'
С драйверами сейчас все в порядке:
Изображение

Аватара пользователя
Лашкевич
Сообщения: 62
Зарегистрирован: 13 май 2015, 13:10
Предприятие: ООО "НПФ Вектор"
Откуда: Москва
Контактная информация:

Re: Eclipse + GCC + OpenOCD: готовая сборка среды

Сообщение Лашкевич » 04 май 2016, 15:06

Ну он подключается, даже камень находит (читает правильный идентификатор), но почему-то коннект рвется. Попробуйте уменьшить частоту обмена в файле

Код: Выделить всё

VectorIDE\source\openocd\kits\k1921vk01t_jlink\simple_connect.cfg
до, скажем, 900кГц
Может быть, еще попробовать там же закомментировать использование ножки резет.
С уважением,
Лашкевич Максим.
Инженер-программист ООО "НПФ Вектор", Москва.
http://motorcontrol.ru/

Ответить

Вернуться в «32-разрядные микроконтроллеры на ядре ARM Cortex»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость