• Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

JTAG/SWD (китайский J-Link STLink V2) c OpenOCD

alex_engine

New member
То есть для прошивки модуля достаточно использовать два сигнала (JTAG_CLK/SW_CLK, JTAG_TMS/SW_DIO)?
А из среды ардуино пройдет прошивка? Или для J-link необходим специальный драйвер под Ардуино?
 

sharikov

Active member
То есть для прошивки модуля достаточно использовать два сигнала (JTAG_CLK/SW_CLK, JTAG_TMS/SW_DIO)?
Двух сигналов достаточно. Для удобства желательно еще подключить reset но и без него работает.
Насчет ардуины ничего не знаю.
 

pvvx

Активный участник сообщества
Последнее редактирование:

alex_engine

New member
При попытке прошить модуль RTL00 из среды ардуино с пакетом "RtlDuino/ArduinoRTL00.gif at master · pvvx/RtlDuino · GitHub"
получил следующее:
Скетч использует 224780 байт (60%) памяти устройства. Всего доступно 372736 байт.
‘Є®ЇЁа®ў ® д ©«®ў: 1.
SEGGER J-Link Commander V6.12i (Compiled Feb 3 2017 15:25:11)
DLL version V6.12i, compiled Feb 3 2017 15:24:41


Script file read successfully.
Processing script file...

J-Link connection not established yet but required for command.
Connecting to J-Link via USB...O.K.
Firmware: J-Link STLink V2 compiled Oct 7 2016 13:13:19
Hardware version: V1.00
S/N: 771921002
VTref = 3.300V


Target connection not established yet but required for command.
Device "CORTEX-M3" selected.


Cannot connect to target.
PC: (R15) = 00000000, CPSR = 00000000 (Unknown mode, ARM)
Current:
R0 =00000000, R1 =00000000, R2 =00000000, R3 =00000000
R4 =00000000, R5 =00000000, R6 =00000000, R7 =00000000
USR: R8 =00000000, R9 =00000000, R10=00000000, R11=00000000, R12=00000000
R13=00000000, R14=00000000
FIQ: R8 =00000000, R9 =00000000, R10=00000000, R11=00000000, R12=00000000
R13=00000000, R14=00000000, SPSR=00000000
IRQ: R13=00000000, R14=00000000, SPSR=00000000
SVC: R13=00000000, R14=00000000, SPSR=00000000
ABT: R13=00000000, R14=00000000, SPSR=00000000
UND: R13=00000000, R14=00000000, SPSR=00000000

Reset delay: 0 ms
Reset type UNKNOWN: ???

Downloading file [run_ram.bin]...
Writing target memory failed.

Downloading file [ota.bin]...
Writing target memory failed.

Reset delay: 0 ms
Reset type UNKNOWN: ???

Writing 20111117 -> 40000210



Script processing completed.

Что может быть?
Судя по информации сам J-link виден однако до платы достучаться не может.
RESET кнопку нажимать пробовал во время прошивки.
Подключил J-link к модулю RTL00 следующим образом:
SWDIO - TMS
SWCLK - CLK
GND-GND
5V - Vin
 

pvvx

Активный участник сообщества
По началу можно просто запустить JLink.exe.
В нем ввести "h", далее он спросит всякое и ввести там Cortex-M3. Если покажет регистры, то значит соединился.
На модуле с прошивкой от китайцев, обычно это "AT", "reset" жать не обязательно. Это потом, если что зальете глючное или программно отключите JTag. В "AT" прошивке он включен. Смотрите соединения...
 

Pilnikov

Active member

pvvx

Активный участник сообщества
Зависит от того, что туда залито.
Так то платке такой красная цена 100р Мини ST LINK/V2 ST Link STLINK STM8 STM32 эмулятор скачать супер защиты купить на AliExpress
Теперь на али все STLink на CKS32F103C8T6.
STLinkReflash не может обновить его в J-Link, хотя процесс перезаписи считает успешным.
Видимо клон CKS32 не совсем клон STM32 и имеет какие-то различия.
Любые прошивки от JLink на нем работают, но в J-Link не перепрошивается.
Данная проблемка пока в стадии исследования.
 

pvvx

Активный участник сообщества
Данная проблемка пока в стадии исследования.
В CKS32F103C8T6 не пишется flash после 64 кбайт (скорее всего там всего 64k).
В STM32F103C8T6 - 128 килобайт, хотя и не официальных, но есть и используется в новых прошивках ST-Link и Jlink...
 

pvvx

Активный участник сообщества
128 не всегда работают. У меня несколько китайских jlink с такими чипами глючат. А F103CB работают.
Я о клоне CKS32F103C8T6. С ним не работает STLinkReflash, а клон CKS ныне ставят во все подделки STLink V2 с али и купить с STM уже проблема.
И я их иногда беру пачкой для разных быстрых поделок, т.к. воткнул в USB и есть до 4-х выводов для подключения чего тестируемого. Как расходный материал :) Большие многоножки просто неудобны - куча проводов и открытые платы, а и так при тестах всё в проводах...
 

pvvx

Активный участник сообщества
Программа STLink V2.1 с COM портом и SWD в CKS32F103C8T6 не работает, т.к. в них не прописать более 64k.
В итоге народ, читая всякие Делаем ST-Link V2.1 из китайского ST-Link V2 не получит желаемого.
А мне эти STLink v2 нужны для другого - к примеру на макетку вешаем INA219 и перепрошив клон STLink получаем измеритель потребления исследуемого:
upload_2019-9-23_7-19-13.png
ну и т.д.
 

b1Ack

New member
Я о клоне CKS32F103C8T6. С ним не работает STLinkReflash, а клон CKS ныне ставят во все подделки STLink V2 с али и купить с STM уже проблема.
И я их иногда беру пачкой для разных быстрых поделок, т.к. воткнул в USB и есть до 4-х выводов для подключения чего тестируемого. Как расходный материал :) Большие многоножки просто неудобны - куча проводов и открытые платы, а и так при тестах всё в проводах...
Насамом деле... не совсем так. Я таки смог, и мой ST-Link V2 с чипом CKS32F103C8T6 уже зовется J-Link-ом и признается его софтом.
Про**ся всю ночь.
В общем так:

* Исходное состояние - ST-Link V2 STM8+STM32. Родные прошивки заливаются без проблем, не патченый конвертер в J-Link ругается что неправильная плата, патченый - типа заливает, но после этого ничего не происходит. Оно остается СТ-линком каким было.

* С бутлоадером отсюда - аналогично первому варианту, только теперь и оф. конвертеры в J-Link делают вид что что-то залито, а по факту - изменений не происходит.

* С бутлоадером отсюда - вообще ничего хорошего. Заливал прошивку Only STM32 без допов. Прошивка заливается, а дальше - может разок прочесть версию, но не факт, и всё, любое обращение оф. апдейтилки или конвертеров в J-Link - уходит в себя и мигает синим диодом. Пробовал шить его и как 64К и как 128К - пофиг.

* Ну и наконец победа. Полная прошивка отсюда, ее еще к посту прицеплю - залилось, потом сразу напустил конвертер патченый, и оно всё сделало. 2016 и 2017 конвертеры патченые ок. Не патченые - не хотят шить, не та вариация платы (32+8). По назначению попробую когда приделаю недостающие пины для жтага.
 

Вложения

b1Ack

New member
* С этими бутлоадерами еще не игрался.

Пользуясь случаем поинтересуюсь - более свежих патченых конвертеров ST-Link -> J-Link новее чем 170628 не пробегало ?
 

dosikus

Member
* С этими бутлоадерами еще не игрался.

Пользуясь случаем поинтересуюсь - более свежих патченых конвертеров ST-Link -> J-Link новее чем 170628 не пробегало ?
Зачем эти танцы с переодеванием , если ту же bluepill можно легко превратить в полноценный JLink_OB ?
Причем с обновляемой прошивкой - j-link arm ob - Pastebin.com

Модули E73-2G4M04S на базе nRF52832 | Аппаратная платформа Arduino
 

b1Ack

New member
Зачем эти танцы с переодеванием , если ту же bluepill можно легко превратить в полноценный JLink_OB ?
Причем с обновляемой прошивкой - j-link arm ob - Pastebin.com
Модули E73-2G4M04S на базе nRF52832 | Аппаратная платформа Arduino
Спасибо, это интересно.
То что на пастебине - переименовать в .hex, заливать ST uploader demo, без ньюансов ?

На всякий случай уточню для чего оно мне надо - нужен полноценный JTAG интерфейс с компом, работающий с софтом SEGGER-а и способный читать/писать NOR-Flash которая сидит на плате с процом TI Omap 5948 (конкретно под эту плату видел проекты для J-Link где он представлен как ARM7 или OMAP L-138.

В сеггеровском J-Link-е же какие-то порты через доп, микрухи выведены, этого хотелось бы избежать и просто к пинам через резисторы.
Вот в таком проекте например то что было бы ок, лишь бы только оно не стало ругаться что целевой проц с которым коннект не ST.
 
Сверху Снизу