ну так ты и reset на GPIO переключать не пробовал, через байты конфигурации, тут:
Ну давай)) ,трынди))
Он не отстанет, пока не поймет как RST с SWD вяжется, и зачем.
Я пробовал, дальше что?
Ты, это, 24 вольта подай, все наладится…
Картинку что stm32cubeprogrammer не видит мк вижу периодически, то в сон криво заведу, то в вечный цикл то ещё где нибудь кривыми руками в регистры запишу.
Лечится ловким многократным нажатием на reset с мгновенным нажатием на Connect в программе.
Я, в таких случаях, перевожу контроллер в режим заводского загрузчика. BOOT0 подтянуть к Vcc перед подачей питания. А из под заводского загрузчика подключаюсь программатором и чищу флэш и не нужно тренировать реакцию.
Если речь идет про STM32, то не нужно ничего “тренировать”. Просто нажимаем Reset, а потом подключаем МК к ПК и отпускаем Reset. Все. ))
Речь про STM, когда купил свою первую блюпилл, первым же проектом заблокировал отладочный интерфейс, классическая ошибка новичков. Так вот, фокус с ресетом получился, но получился не спервого раза и даже не с десятого. А с заводким загрузчиком получается сразу.
Если в утилите ST-Link установить опцию connect after reset, то подключиться получается после первого нажатия reset и потом можно стереть прошивку и после подключаться будет с первого раза.
Знаю, включал, и все равно нужно было на компе запустить подключение к контроллеру, а потом вовремя отпустить ресет. Чуть раньше или чуть позже и чуда не происходило.
Я ни начем не настаиваю, какдый делает как ему удобно и привычно.
забудь, reset у нас нету
перевода в заводской загрузчик тоже нету )))
мы пока еще ни байта кода не написали, только подготовили пин к использованию
есть команды SWD, не в жисть не поверю, что разработчик не продумал этот вопрос, будем разбираться…
Так интересно…напомнило, как Цербер ломал )))
PS для начала понять, какие команды и для чего катайцы написали:
> py32f003 list
py32f003
py32f003 lock bank_id
py32f003 mass_erase bank_id
py32f003 options_load bank_id
py32f003 options_read bank_id
py32f003 options_write ('OPTR' optr_data) ('SDKR' sdkr_data) ('WRPR'
wrpr_data)
py32f003 unlock bank_id
py32f003.cpu
py32f003.cpu arm
py32f003.cpu arm core_state ['arm'|'thumb']
py32f003.cpu arm disassemble address [count ['thumb']]
py32f003.cpu arm semihosting ['enable'|'disable']
py32f003.cpu arm semihosting_basedir [dir]
py32f003.cpu arm semihosting_cmdline arguments
py32f003.cpu arm semihosting_fileio ['enable'|'disable']
py32f003.cpu arm semihosting_read_user_param
py32f003.cpu arm semihosting_redirect (disable | tcp <port>
['debug'|'stdio'|'all'])
py32f003.cpu arm semihosting_resexit ['enable'|'disable']
py32f003.cpu arp_examine ['allow-defer']
py32f003.cpu arp_halt
py32f003.cpu arp_halt_gdb
py32f003.cpu arp_poll
py32f003.cpu arp_reset
py32f003.cpu arp_waitstate
py32f003.cpu array2mem arrayname bitwidth address count
py32f003.cpu cget target_attribute
py32f003.cpu configure [target_attribute ...]
py32f003.cpu cortex_m
py32f003.cpu cortex_m maskisr ['auto'|'on'|'off'|'steponly']
py32f003.cpu cortex_m reset_config ['sysresetreq'|'vectreset']
py32f003.cpu cortex_m vector_catch
['all'|'none'|('bus_err'|'chk_err'|...)*]
py32f003.cpu curstate
py32f003.cpu eventlist
py32f003.cpu examine_deferred
py32f003.cpu get_reg list
py32f003.cpu invoke-event event_name
py32f003.cpu itm
py32f003.cpu itm port <port> (0|1|on|off)
py32f003.cpu itm ports (0|1|on|off)
py32f003.cpu mdb address [count]
py32f003.cpu mdd address [count]
py32f003.cpu mdh address [count]
py32f003.cpu mdw address [count]
py32f003.cpu mem2array arrayname bitwidth address count
py32f003.cpu mwb address data [count]
py32f003.cpu mwd address data [count]
py32f003.cpu mwh address data [count]
py32f003.cpu mww address data [count]
py32f003.cpu read_memory address width count ['phys']
py32f003.cpu rtt
py32f003.cpu rtt channellist
py32f003.cpu rtt channels
py32f003.cpu rtt polling_interval [interval]
py32f003.cpu rtt setup <address> <size> <ID>
py32f003.cpu rtt start
py32f003.cpu rtt stop
py32f003.cpu set_reg dict
py32f003.cpu tpiu
py32f003.cpu tpiu config (disable | ((external | internal (<filename> |
<:port> | -)) (sync <port width> | ((manchester | uart)
<formatter enable>)) <TRACECLKIN freq> [<trace freq>]))
py32f003.cpu was_examined
py32f003.cpu write_memory address width data ['phys']
py32f003.dap
py32f003.dap apcsw [value [mask]]
py32f003.dap apid [ap_num]
py32f003.dap apreg ap_num reg [value]
py32f003.dap apsel [ap_num]
py32f003.dap baseaddr [ap_num]
py32f003.dap dpreg reg [value]
py32f003.dap info [ap_num | 'root']
py32f003.dap memaccess [cycles]
py32f003.dap nu_npcx_quirks [enable]
py32f003.dap ti_be_32_quirks [enable]
Какую то хрень пишите, сначала про stm32 и nRST, теперь py32.
И да, reset есть всегда до запуска софта в мк.
“так он же Болгарин…а какая разница” (c) Брат
ты на дурачка косишь или и есть? SOP8L1!
и что с ним не так?
про дурачка и кто как косить умеет, мы с тобой потом поговорим.
- Alternatives to SRST:
In cases where SRST is not available (e.g., on some JTAG adapters or when selective reset of multiple targets on a scan chain is required), OpenOCD can still achieve a reset by using JTAG commands or by triggering a software reset (e.g., for Cortex-M targets, an NVIC reset).
- Альтернативы SRST:
В случаях, когда SRST недоступен (например, на некоторых адаптерах JTAG или когда требуется выборочный сброс нескольких целей в цепочке сканирования), OpenOCD все равно может выполнить сброс с помощью команд JTAG или путем запуска программного сброса (например, для целей Cortex-M сброс NVIC).
Осталось найти как именно
ты можешь напрячься, выключить катушку и сформулировать членораздельно свой вопрос?
изначально он звучал так
тебе попытались разжевать - без него, так же как и с ним.
он не участвует в процессе отладки и программирования.
мы же про stm32 говорим)))
на основании этого
и этого
пока ты там тужишься, еще тебе историю про nRST пин расскажу.
если его превратить в I/O GPIO с помощью option byte и не дай бог притянуть к земле, после передергивания питания запуска МК не будет.
во как))
если его превратить в I/O GPIO с помощью option byte и не дай бог притянуть к земле, после передергивания питания запуска МК не будет.
во как))
Ужость!
Хорошо, хоть не на ночь сказано.
Хорошо, хоть не на ночь сказано.
сначала не вник, ща сам перечитал и засмеялся.

