Хотелось бы пообщаться с человеком)В эпоху нейронок и прочего быстрее спросить у них чем ждать ответа на форуме, поэтому они вымирают, а по теме все делается jlink ом
Хотелось бы пообщаться с человеком)В эпоху нейронок и прочего быстрее спросить у них чем ждать ответа на форуме, поэтому они вымирают, а по теме все делается jlink ом
Как писал выше, у меня есть st-link и dap-link, а j-link не хотелось покупать бы. Вопрос в моем предыдущем сообщении: почему все ссылаются на страницу с бутлоадерами, где есть HEX файл и ZIP архив с тремя файлами, а в инструкции по nrf82540 написано: закиньте файл бутлоадера (uf2) на "диск" и готово. А где его взять то???Чем вы собираетесь шить? J-link понимает hex из коробки, если другими способами то hex это простой текстовый файл с байтами данных и адресами на которые эти байты уложить, соответственно можно конвертировать в bin, ну и в uf2 вероятно не должно возникнуть проблем
Спасибо за разъяснения. Не хотелось так глубоко вникать в тему, для того что бы один раз прошить бутлоадер (до сих пор не понятно чем, тратится на j-link не охота) и забыть. А придется потратить 250р, купив новый nrf52840, прошить свежий бутлоадер и забыть)Посмотреть вложение 15002вот что первое нашлось, надо проверить, теперь смотрите что в какие адреса пытаетесь записать ну или запустить
И все равно идти курить даташит на nrf52840, искать каким ПО шить, изучать это ПО...короче кошмар)Также есть темы как прошить st-link под j-link тогда вы получаете полный доступ к чипу
тогда в чем вообще был вопрос? Качайтепоследний Бут uf2 и пейте его через usbПрямо задел вас за живое))) Вопрос был в том что при обновлении бута, один из nrf52840 перестал определятся в usb порте, а так то обновил более 5 штук нормально. Начал искать чем прошить бут и не сильно вникая прошил на dap-link ещё одну nrf52840, потом понял, что на плате не выведены нужные gpio для использования в режиме dap-link. Теперь у меня две не рабочие nrf52840. Как писал выше на прошитой на dap-link бутлоадер обновляется, в режим бутлоадера заходит, по светодиоду видно прошивка заливается, но при перезагрузке вижу опять dap-link.Опять же, сходил на гитхаб где выкладывают буты, https://github.com/adafruit/Adafruit_nRF52_Bootloader/releases/tag/0.10.0 и там все виды есть и hex и uf2Посмотреть вложение 15003 тогда в чем вообще был вопрос? Качайтепоследний Бут uf2 и пейте его через usb
4. По выложенной Вами ссылке есть hex, uf2 и zip. Для чего zip не подскажете?Прямо задел вас за живое))) Вопрос был в том что при обновлении бута, один из nrf52840 перестал определятся в usb порте, а так то обновил более 5 штук нормально. Начал искать чем прошить бут и не сильно вникая прошил на dap-link ещё одну nrf52840, потом понял, что на плате не выведены нужные gpio для использования в режиме dap-link. Теперь у меня две не рабочие nrf52840. Как писал выше на прошитой на dap-link бутлоадер обновляется, в режим бутлоадера заходит, по светодиоду видно прошивка заливается, но при перезагрузке вижу опять dap-link.
Теперь вопросы, раз уж пошло такое дело):
1. Прошить st-link под j-link - погуглил, вроде пишут это про девборды, а отдельно программаторы не катят под это.
2. Какой клон/не клон j-link минимальной стоимости можно приобрести для полного доступа, или есть что то другое?
3. Какое ПО для этого надо, желательно под винду и с графическим интерфейсом, если есть такое?
| Ваш сценарий | Рекомендация | Почему? |
|---|---|---|
| Вы купили новую плату (Adafruit, Seeed и др.) | UF2 Bootloader (способ 1) | Скорее всего, он уже установлен. Вам не нужно покупать программатор. |
| Вы хотите быстро обновлять прошивку | UF2 Bootloader (способ 1) | Это просто "перетащить файл". Идеально для прототипирования. |
| Плата новая и не определяется как флешка | SWD (способ 2) | Загрузчика нет. Нужен внешний программатор, чтобы его туда "положить". |
| Вы разрабатываете сложное устройство | SWD (способ 2) | Требуется для отладки (пошаговое выполнение кода, точки останова). |
У deepseek все просто и понятно, а будет ли это работать?DeepSeek отвечает:
Способ 1: "Как на флешку" (UF2 Bootloader) — Самый простой
Этот метод идеален для начинающих. Вы просто перетаскиваете файл прошивки на плату, как на обычную USB-флешку.
Что это и как работает?
Большинство популярных плат на nRF52840 (Adafruit, Seeed XIAO, Makerdiary и др.) поставляются с предустановленным загрузчиком UF2 Bootloader.
Этот способ официально не от Nordic, но поддерживается огромным сообществом и очень надежен.
- При подключении к компьютеру в режиме прошивки плата определяется как съемный диск (например, UF2BOOT или NRF52BOOT).
- Ваша задача — просто скопировать файл с расширением .uf2 на этот диск.
- Плата автоматически перезагрузится и начнет выполнять новую программу.
Как войти в режим прошивки (DFU)?
В зависимости от платы, нужно сделать одно из действий:
Как получить файл .uf2 из вашей программы?
- Двойное нажатие: Быстро нажать кнопку RESET дважды подряд.
- Зажать при подключении: Зажать кнопку, подключить плату к USB, отпустить кнопку.
- Короткое замыкание: Замкнуть контакты GND и RST дважды за 0.5 секунды.
Если у вас есть готовая прошивка в формате .hex или .bin, её нужно конвертировать.
- Установите конвертер: Это скрипт на Python от Microsoft.
bash
pip install uf2utils
Или скачайте uf2conv.py с GitHub.- Конвертируйте файл:
- Из .hex:
bash
uf2conv.py ваша_прошивка.hex --family 0xADA52840 --convert --output прошивка.uf2- Из .bin (нужно указать адрес начала программы, часто 0x1000 или 0x26000):
bash
uf2conv.py ваша_прошивка.bin -c -b 0x1000 -f 0xADA52840 -o прошивка.uf2
- 0xADA52840 — это идентификатор семейства для nRF52840.
- Адрес 0x1000 подходит для плат с загрузчиком Adafruit.
Способ 2: Профессиональный (SWD-программатор)
Этот метод используется для "первой прошивки", когда на чипе нет никакого загрузчика, или для низкоуровневой отладки.
Что нужно?
Как прошить?
- Программатор: Самый доступный вариант — ST-Link v2. Также подойдут J-Link или DAPLink.
- Соединение:Подключите 3 провода от программатора к плате:
- SWDIO (Data)
- SWCLK (Clock)
- GND (Общий)
Через терминал или среду разработки. Например, используя утилиту pyocd:
bash
pyocd flash -t nrf52840 ваша_прошивка.hex
Этот метод сложнее, но он дает полный контроль и не зависит от загрузчика на плате.
Какой способ выбрать?
Мой совет: Если ваша плата определяется как диск при двойном нажатии на кнопку сброса — используйте UF2 Bootloader. Это самый простой и надежный путь для 99% задач.
Ваш сценарий Рекомендация Почему? Вы купили новую плату (Adafruit, Seeed и др.) UF2 Bootloader (способ 1) Скорее всего, он уже установлен. Вам не нужно покупать программатор. Вы хотите быстро обновлять прошивку UF2 Bootloader (способ 1) Это просто "перетащить файл". Идеально для прототипирования. Плата новая и не определяется как флешка SWD (способ 2) Загрузчика нет. Нужен внешний программатор, чтобы его туда "положить". Вы разрабатываете сложное устройство SWD (способ 2) Требуется для отладки (пошаговое выполнение кода, точки останова).
Если что-то пойдет не так или понадобятся детали по вашему конкретному устройству — спрашивайте, помогу разобраться
У deepseek все просто и понятно, а будет ли это работать?
Не раз встречался с тем, что ИИ выдумывает какую то хрень и она конечно не работает. Вы сами конкретно пробовали использовать данный метод (способ 2) с китайским клоном st-link v2 ? А так это с виду самый простой вариант по прошивке.
pyocd flash -t nrf52840 ваша_прошивка.hex А по какому адресу он будет шить, ведь бутлоадер надо залить по определенному адресу?
Спасибо! Вообщем вечером буду пробовать, по результату отпишусь.