пятница, 7 декабря 2012 г.

Ubuntu + ST-Link + MDK-ARM


Для установки ST-Link необходимо выполнить следующую последовательность команд:

$mkdir ~/temp
$cd ~/temp
$sudo apt-get install git libusb-dev
$git clone git://github.com/texane/stlink.git
$cd stlink
$sh autogen.sh 
$./configure
$make
$sudo mkdir /opt/texane
$cd gdbserver
$make
$sudo cp st-util /opt/texane
$sudo cp 49-stlinkv1.rules /etc/udev/rules.d
$sudo cp 49-stlinkv2.rules /etc/udev/rules.d
$sudo udevadm control --reload-rules


Если после команды:

$sh autogen.sh 

Возникает ошибка: 
./autogen.sh: 2: autoreconf: not found

то необходимо установить паке autoconf:

$sudo apt-get install autoconf


Команда, чтобы стереть память микроконтроллера:

~/temp/stlink/st-flash erase


Команда для прошивки микроконтроллеров:

~/temp/stlink/st-flash write путь адрес

где:
- путь - путь к двоичному файлу прошивки (*.bin)
- адрес - шестнадцатеричный адрес в памяти (для STM32 0x08000000)

Также с помощью утилиты st-flash можно считывать данные, если вместо write указать read с полем начального адреса и объемом данных для считывания в байтах.

Если для компиляции и сборки проекта используется MDK-ARM, то получить бинарный файл можно с помощью утилиты FromElf.exe. Для этого необходимо добавить в свойствах проекта на вкладке User в секции "Run User Program After Build/Rebuild" строчку:

FromElf.exe --bin --output путь_к_bin_файлу путь_к_axf_файлу


Например, если все файлы находятся в одном каталоге, то:

FromElf.exe --bin --output program.bin YoutProjectName.axf


Links:
http://we.easyelectronics.ru/CADSoft/st-link-eclipse-na-ubuntu.html
http://bravikov.wordpress.com/2012/11/19/st-link-mdk-arm-linux/

1 комментарий:

  1. $cd stlink
    $sh autogen.sh
    $./configure
    $make
    $sudo mkdir /opt/texane
    $cd gdbserver
    Откуда должна взяться папка gdbserver? Её там нет.

    ОтветитьУдалить