要在Ubuntu上使用STLink進行調試,請按照以下步驟操作:
安裝必要的軟件包和依賴項:
打開終端并運行以下命令來安裝必要的軟件包和依賴項:
sudo apt-get update
sudo apt-get install build-essential git cmake libusb-1.0-0-dev
克隆并編譯stlink工具集:
git clone https://github.com/texane/stlink.git
cd stlink
make
這將在build/Release/bin
目錄中生成stlink工具。
將stlink工具添加到系統路徑:
echo "export PATH=\$PATH:$(pwd)/build/Release/bin" >> ~/.bashrc
source ~/.bashrc
將STLink設備連接到計算機。
確保STLink設備已正確連接:
st-info --probe
如果設備已正確連接,您應該會看到有關設備的信息。
使用stlink工具進行調試:
例如,要將固件文件(例如firmware.bin
)寫入STM32微控制器,請運行以下命令:
st-flash write firmware.bin 0x8000000
要從STM32微控制器中讀取固件,請運行以下命令:
st-flash read firmware_backup.bin 0x8000000 size
其中size
是要讀取的字節數。
使用GDB進行調試:
首先,確保您已安裝了ARM GCC工具鏈。如果沒有,請運行以下命令:
sudo apt-get install gcc-arm-none-eabi
然后,使用以下命令啟動GDB服務器:
st-util
現在,您可以使用GDB進行調試。例如,要調試名為firmware.elf
的ELF文件,請運行以下命令:
arm-none-eabi-gdb firmware.elf
在GDB提示符下,連接到遠程目標并開始調試:
(gdb) target remote localhost:4242
(gdb) load
(gdb) monitor reset halt
(gdb) continue
現在,您可以使用GDB的所有功能進行調試,例如設置斷點、單步執行等。
通過遵循這些步驟,您應該能夠在Ubuntu上使用STLink進行調試。