Голые минимальные сценарии для блокировки или разблокировки устройств STM32
Установите следующие инструменты в вашей системе.
Используемая версия 0.10.0
sudo apt-get install openocdСм. Инструкции по установке xpack openocd или загрузите последнюю выпущенную версию, распахнит ее и изменяйте свои права.
wget https://github.com/xpack-dev-tools/openocd-xpack/releases/download/v0.10.0-14/xpack-openocd-0.10.0-14-darwin-x64.tar.gz
tar -zxvf xpack-openocd-0.10.0-14-darwin-x64.tar.gz
chmod -R -w xpack-openocd-0.10.0-14-darwin-x64Переместите файлы в папку ваших приложений и создайте символическую ссылку, чтобы использовать ее с теми же командами, что и на Linux
sudo ln -s /Volumes/Macintosh HD/Applications/OpenOCD/ /usr/share/openocdsudo apt-get install telnetНазовите это в первом терминале
openocd -d3 -f stlink-v2.cfg -c " transport select hla_swd " -f stm32f1x.cfgОткрытый второй терминал
telnet 127.0.0.1 4444Если чип заблокирован, его нельзя запрограммировать, пока он не разблокирован.
Питание требуется после блокировки чипа для запуска программы.
Разблокирование чипа будет полностью стирать его контент.
Файлы конфигурации для STLINK расположены по адресу /usr/share/openocd/scripts/interface/ , config для целей можно найти по адресу /usr/share/openocd/scripts/target/ .
Будьте в курсе различных версий Stlink, которые отличаются только одним символом VID.
sh flash.sh path/to/some/file.binПроверкайте файл с уровнем отладки 1
sh flash.sh path/to/some/file.bin -d1Заблокируйте STM32F1 с помощью stlink v2
sh lock.shВыполните блокировку с уровнем отладки 2 на STM32F1 с Stlink v2
sh lock.sh -d2 Используйте general_un_lock_st.sh , чтобы заблокировать или разблокировать общее устройство STM32. Следующий пример для STM32F0 с помощью Stlink
sh un_lock_st.sh
/Applications/OpenOCD/bin/openocd
/Applications/OpenOCD/scripts
stlink
stm32f0x
lockРазблокировать STM32F1 с помощью stlink v2
sh unlock.shВыполните разблокировку с уровнем отладки 1 на STM32F1 с Stlink v2
sh unlock.sh -d1 Используйте general_un_lock_st.sh , чтобы заблокировать или разблокировать общее устройство STM32. Следующий пример для STM32F0 с помощью Stlink
sh un_lock_st.sh
/Applications/OpenOCD/bin/openocd
/Applications/OpenOCD/scripts
stlink
stm32f0x
unlockЦикл питания Цель с помощью PI PIN -кода Raspberry Pi.
Подключите VCC интерфейса отладки через транзистор или MOSFET к VCC. МОСФЕТ или транзистор контролируется кондиционером Raspberry Pi.
Вы должны запустить этот сценарий один раз, чтобы настроить PIN -код и включить его.
python power_cycle.py