murmur 0 31 марта, 2021 Опубликовано 31 марта, 2021 · Жалоба АГА.... так причина описанного как раз в том, с чего мы начинали * JLink Info: Device "ARM7" selected. Осталось понять, блин, где в настройках мог быть указан ARM7 в качестве DEVICE? Вот моя вкладку Device, что не так? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
UniSoft 15 31 марта, 2021 Опубликовано 31 марта, 2021 · Жалоба 14 hours ago, murmur said: АГА.... так причина описанного как раз в том, с чего мы начинали Вам уже сказали, что причина вероятнее всего в том, что он не знает ничего про H74x. Откройте J-Link Commander введите "connect" (без кавычек) затем введите "?" отобразится диалог со всеми поддерживаемыми контроллерами, если там его нет, то и работать под Keil оно не будет, ведь для него соответственно и нет загрузчика. Запись данных напрямую во flash по SWD/JTAG невозможна! (могу допустить, что в каких-то контроллерах такое возможно, но точно не для ST). Да, это можно сделать через запись напрямую в регистры, но это будет очень медленно. Вместо этого j-link использует загрузчики, в RAM грузится загрузчик и содержимое, затем он запускается и копирует данные во flash средствами самого контроллера. Я это знаю, потому как сам досконально разбирал, как именно производится программирование STM32F7xx, и писал свой собственный загрузчик. Когда еще у меня не было SDK. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
murmur 0 1 апреля, 2021 Опубликовано 1 апреля, 2021 · Жалоба 10 hours ago, UniSoft said: Вам уже сказали, что причина вероятнее всего в том, что он не знает ничего про H74x. Нет, причина была в том, что в файле JLinksettings.ini была запись Device=arm7. После исправления этой записи и установки последней версии софта, 6.98, все заработало. Кстати, запись "arm7" не мешает коннектиться к F746 Насчёт сообщения о дефективности, которое вылазит, китаей обещал прислать свой софт - HJink. С ним сообщение не должно появляться. Очень надеюсь, что перестанет появляться и сообщение о невозможности установки какого то брейкпоинта. Какие брейкпоинт могут быть в ходе заливки прошивки в qspi, кто нибудь может ответить? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 182 1 апреля, 2021 Опубликовано 1 апреля, 2021 · Жалоба 33 минуты назад, murmur сказал: Какие брейкпоинт могут быть в ходе заливки прошивки в qspi, кто нибудь может ответить? Ну а как прикажете отладчику узнавать что загрузка прошивки закончилась и нужно остановиться в начале отлаживаемой программы? Вот он бряк и ставит на начало кода. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
murmur 0 1 апреля, 2021 Опубликовано 1 апреля, 2021 · Жалоба Just now, jcxz said: Ну а как прикажете отладчику узнавать что загрузка прошивки закончилась и нужно остановиться в начале отлаживаемой программы? Вот он бряк и ставит на начало кода. Вот смотрите, стирается внутренняя флеш, стирается qspi. начинается загрузка кода. Код во внутреннюю флеш грузится без проблем. Дальше грузится в qspi. Примерно на 200 КБ кода появляется это сообщение, о брейкпоинте. Ради интереса удаляю все брейкпоинты из текста основной программы, которые были поставлены для отладки. Теперь qspi программируется до 300 килобайтной отметки, после чего опять ругань на брейкпоинты. Какими были бы ваши действия? В st link такой ерунды не было. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 182 1 апреля, 2021 Опубликовано 1 апреля, 2021 · Жалоба 4 минуты назад, murmur сказал: Какими были бы ваши действия? Мои действия были-бы: не располагать отлаживаемый код в QSPI. Но если очень уж хочется, то.... У IAR есть галка "run to main". Если её установить - IAR ставит бряк и останавливается после загрузки кода на начале main(), если убрать - сразу после вектора сброса. Если бы я поставил эту галку, то убедился бы, что main() находится во внутренней памяти (или переместил его туда скриптом компоновщика), а не в QSPI. Если бы я снял эту галку, то убедился бы что начало стартап-кода (на которое указывает вектор сброса) находится во внутренней памяти. А у вас видимо начальная точка остановки отладчика находится в QSPI-памяти. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
murmur 0 1 апреля, 2021 Опубликовано 1 апреля, 2021 · Жалоба 11 minutes ago, jcxz said: не располагать отлаживаемый код в QSPI. В qspi только данные. 13 minutes ago, jcxz said: у вас видимо начальная точка остановки отладчика находится в QSPI-памяти. Где в keil проверить адрес точки останова и как его установить? Почему раньше у меня такой проблемы не возникало с stlink и H743/F746? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
murmur 0 1 апреля, 2021 Опубликовано 1 апреля, 2021 · Жалоба Короче говоря, как выяснилось, у китайцев, продающих сие чудо, есть софт, который крякает все IDE, которые находит на компьютере. После этого сообщение о дефектном устройстве исчезает. Исчезли и проблемы с брейкпоиннтами. Правда первая попытка записи QSPI на максимально высокой частоте привела к множественным ошибкам. Попробую подобрать гарантированно безопасную частоту. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
asta1818 0 11 мая, 2021 Опубликовано 11 мая, 2021 · Жалоба Кто сталкивался с такими китайцами? Как у него убрать подтяжку Vref? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 182 11 мая, 2021 Опубликовано 11 мая, 2021 · Жалоба 01.04.2021 в 17:50, murmur сказал: Короче говоря, как выяснилось, у китайцев, продающих сие чудо, есть софт, который крякает все IDE, которые находит на компьютере. После этого сообщение о дефектном устройстве исчезает. Этот софт называется "Segger\JLinkConfig.exe" и идёт в стандартном наборе утилит сеггера для J-Link-а. От рождения позволяет заменить DLL во всех IDE на нужную. Писал уже не раз об этом. Китайцы тут не при делах. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
nibelung 7 11 мая, 2021 Опубликовано 11 мая, 2021 · Жалоба 5 часов назад, asta1818 сказал: Как у него убрать подтяжку Vref? Либо резать дорожку, либо сдуть с платы стабилизатор U5. Только на фото я не вижу никаких трансляторов уровня, поэтому, использовать этот отладчик с таргетом, питание которого отличается от 3,3в настоятельно не рекомендуется. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
asta1818 0 14 мая, 2021 Опубликовано 14 мая, 2021 · Жалоба 11.05.2021 в 18:52, nibelung сказал: Либо резать дорожку, либо сдуть с платы стабилизатор U5. Только на фото я не вижу никаких трансляторов уровня, поэтому, использовать этот отладчик с таргетом, питание которого отличается от 3,3в настоятельно не рекомендуется. Сдул стабилизатор, VTref осталось, но встречного питания не будет - хорошо. А как по нормальному эта цепочка реализуется? Правильно ли я понимаю, что на первую ногу программатора с устройства приходит питание и через преобразователь поступает на контроллер программатора? И сделано это для того, чтобы программатор видел включено или нет подключенное устройство. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
nibelung 7 14 мая, 2021 Опубликовано 14 мая, 2021 · Жалоба 2 часа назад, asta1818 сказал: А как по нормальному эта цепочка реализуется? Правильно ли я понимаю, что на первую ногу программатора с устройства приходит питание и через преобразователь поступает на контроллер программатора? И сделано это для того, чтобы программатор видел включено или нет подключенное устройство. Все верно понимаете. Питание с устройства через резисторный делитель подается на аналоговый вход программатора, измеряется и передается драйверу на компьютер. И нужно это, чтобы драйвер видел подключено устройство или нет и мог проверить правильность напряжения питания. Вообще вот схема для V8, изучайте. P/S: и сериал на скриншоте замажьте. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
asta1818 0 14 мая, 2021 Опубликовано 14 мая, 2021 · Жалоба 1 час назад, nibelung сказал: Все верно понимаете. Питание с устройства через резисторный делитель подается на аналоговый вход программатора, измеряется и передается драйверу на компьютер. И нужно это, чтобы драйвер видел подключено устройство или нет и мог проверить правильность напряжения питания. Вообще вот схема для V8, изучайте. P/S: и сериал на скриншоте замажьте. Спасибо за схему. Нашел делитель - R14, R15. Он питался от U4. Пересадил его на питание с устройства. И пересадил транзистор для RESET также с преобразователя U4 на устройство. Получился хромой программатор без развязки. Уже не могу редактировать то сообщение, чтобы замазать серийник, но он всё равно левый. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Kabron 0 19 мая, 2021 Опубликовано 19 мая, 2021 (изменено) · Жалоба JLink BluePill R0 SEGGER J-Link Commander V6.94a (Compiled Jan 14 2021 11:48:51) DLL version V6.94a, compiled Jan 14 2021 11:47:39 Connecting to J-Link via USB...O.K. Firmware: J-Link J-Link V21 compiled Jun 26 2017 10:35:16 Hardware version: V1.00 S/N: 777984*** VTref=3.300V JLink BluePill R0.zip Изменено 19 мая, 2021 пользователем Kabron Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться