Это описано в platform.txtКакой из .cmd/.bat файлов выполняется при загрузке? где устанавливаются переменные %1 %2 ?
Вложения
-
285.8 KB Просмотры: 26
Это описано в platform.txtКакой из .cmd/.bat файлов выполняется при загрузке? где устанавливаются переменные %1 %2 ?
В процессе загрузки CPU несколько раз останавливается и запускается. Если его не запускать прошивка не загружается. Возможно это нормальный процесс.Ошибки при загрузке на gdb сервере происходят из-за "while CPU is running"
А разве jlink не умеет тормозить CPU? Или это нормальный процесс? Прошивка ведь в конце концов заливается.
Ну у нас SEGGER является не бесплатным и закрытым ПО, по тому все справки от меня по нему - только за оплату Если они выложат исходники для всех - тогда и будет им бесплатная реклама и обсуждениеОшибки при загрузке на gdb сервере происходят из-за "while CPU is running"
А разве jlink не умеет тормозить CPU? Или это нормальный процесс? Прошивка ведь в конце концов заливается.
Вот параллельно тыкал - все притормаживается.
J-Link>g
J-Link>h
PC = 10001044, CycleCnt = 6C266352
R0 = 00000000, R1 = 40006000, R2 = 00000000, R3 = 10008000
R4 = 100013A9, R5 = 100012E5, R6 = 1000800C, R7 = 10001271
R8 = 10008014, R9 = 10008008, R10= 00009000, R11= 10001209
R12= 00000000
SP(R13)= 1FFFFFC4, MSP= 1FFFFFC4, PSP= 00000000, R14(LR) = 100012CF
XPSR = 61000000: APSR = nZCvq, EPSR = 01000000, IPSR = 000 (NoException)
CFBP = 00010000, CONTROL = 00, FAULTMASK = 01, BASEPRI = 00, PRIMASK = 00
Т.е. такое поведение вполне законно?Ну у нас SEGGER является не бесплатным и закрытым ПО...
Пересброс RTL для исполнения кода в RAM (например программатора) возможен только если назначить флаги в аппаратном регистре и сделать "софтварный сброс" только процу, без внутренней периферии (в ней и записан флаг обхода загрузки с Flash).В процессе загрузки CPU несколько раз останавливается и запускается. Если его не запускать прошивка не загружается. Возможно это нормальный процесс.
Это зависит от вашего желания. Модуль в "стандарте" Arduino имеет 2 прошивки и они переключаются пином при загрузке. Если основная прошивка прошита для обновления по сети в Arduino, то вторая, пользовательская, не нуждается в этом.pvvx не сочтите за труд, просветите нуба насчет ота. Обязательно включать в скетчи часть кода ота, чтобы всегда работало обновление over the air? В map memory, если я не ошибаюсь, под ота ведь отведена отдельная область?
Припаял. Всё равно остались вот эти надписи:"Счастливые" владельцы STLink-ов перепрошитых в J-Link, не припаявшие выход Сброса к STM32 сами, ловят все варианты неустойчивостей Это сугубо личное их желание (а так-же решение от SEGGER вывести RST на другой вывод STM32, чем у китайских клонов STLink) и обсуждать что у них там запрограммилось при этом надо позволить им самим с собой. При перепрошивке STLink в J-Link, надобность в STLink пропадает полностью. Всё ПО, которое работало с STLink поддерживает J-Link и перепрограммировать обратно в STLink смысла не бывает. Вывод RST на "обрубках" следует перепаять навечно в режим J-Link.
RB0 в варианте прошивки Jlink работает как RESET(!):
Посмотреть вложение 3466
А команды:Припаял. Всё равно остались вот эти надписи:
ERROR: Can not read register 10 (R10) while CPU is running
ERROR: Can not read register 11 (R11) while CPU is running
ERROR: Can not read register 12 (R12) while CPU is running
ERROR: Can not read register 13 (R13) while CPU is running
и т.д.
r0
r1
Нет, конечно... а куда вписывать?А команды для J-link вписали?
А кто будет дергать RST вывод у Jlink?Нет, конечно... а куда вписывать?
А зачем?
Да, после r1 - начинает работать. Но, честно говоря, я смысла всего этого не понимаю совсем. какие-то магические манипуляции.А кто будет дергать RST вывод у Jlink?
Запускаете JLink.exe и вводите r0 смотрите, что на выходе. Потом r1 - RTL должен начать работу - вывести ROM Version...
Это просто проверка, туда-ли припаялиДа, после r1 - начинает работать. Но, честно говоря, я смысла всего этого не понимаю совсем. какие-то магические манипуляции.
Были взяты новые obj от Ameba и убежала структура flash_t flashobj в Local.Пример SPIFFS test не компилируется.
===== SPIFFS Info ====
Total: 52961
Used: 0
Block: 4096
Page: 256
Max open files: 5
Max path len: 32
======================
Open file...
Write data...
Close file...
Read file...
Close file...
Data file: SPIFFS Test
Test End.
===== SPIFFS Info ====
Total: 52961
Used: 502
Block: 4096
Page: 256
Max open files: 5
Max path len: 32
======================
Read file...
Close file...
Data file: SPIFFS Test
Test End.
Написано же - чип STM32F10x и нога RB0, да фото дано. На клонах STLink (перепрошитых в Jlink) она не выведена на RST.Я чего-то уже запутался жестоко.
Ресет прицепил р1, р0 попробовал - все работает - 1ку и нолик на вход чип ен выдает. А вот команды типа r rt rx 100 target не сбрасывают
Я померил цэшкой. В моем клоне она припаяна к RB0На клонах STLink (перепрошитых в Jlink) она не выведена на RST.
Значит должна по r0 выводить 0 В, а при r1 - 3.3 В (возможно ОК).rx 100
rx Reset target (RESET). Syntax: rx <DelayAfterReset>
rt Reset TAP Controller (nTRST)
но это правда справедливо тока для Jtag
Я померил цэшкой. В моем клоне она припаяна к RB0