Add a lead sentence |
Consistency: syntax highlighting for code, File: prefix |
||
| 第8行: | 第8行: | ||
* sudo apt-get install autoconf pkg-config libusb-1.0 git | * sudo apt-get install autoconf pkg-config libusb-1.0 git | ||
* git clone https://github.com/texane/stlink.git | * git clone https://github.com/texane/stlink.git | ||
< | <syntaxhighlight lang="bash"> | ||
cd ~/stlink | cd ~/stlink | ||
./autogen.sh | ./autogen.sh | ||
./configure | ./configure | ||
make | make | ||
</ | </syntaxhighlight> | ||
== Download STM32 Libraries and Blinky Example == | == Download STM32 Libraries and Blinky Example == | ||
* git clone https://github.com/rowol/stm32_discovery_arm_gcc | * git clone https://github.com/rowol/stm32_discovery_arm_gcc | ||
2026年8月23日 (日) 18:01的版本
The STM32F4 Discovery is an ST Cortex-M4 board. These notes cover the GNU/ARM toolchain, building and flashing with ST-Link, and debugging with GDB.

Download the GNU/ARM toolchain
- tar -xvjf gcc-arm-none-eabi-4_8-2014q2-20131204-linux.tar.bz2
- export PATH=$PATH:~/gcc-arm-none-eabi-4_8-2014q2/bin
Download and Build STLINK
- sudo apt-get install autoconf pkg-config libusb-1.0 git
- git clone https://github.com/texane/stlink.git
cd ~/stlink
./autogen.sh
./configure
makeDownload STM32 Libraries and Blinky Example
Compile Your Source Code
- Edit Makefile
- STLINK=/home/rowol/stlink #Example, change to your location
- STM_COMMON=/home/rowol/stm32_discovery_arm_gcc/STM32F4-DISCOVERY_FW_V1.1.0
- make it
Program ARM's Flash and Run Code
- make burn
or
- st-flash write STM32F4-Discovery.bin 0x08000000
Using external ST-Link
- Remove CN3 jumper
ST-Link STM32F4 VCC 3V SWIO PA13 SWCLK PA14 VDD VDD ( depends on product, could range from 1.8v - 5v ) GND GND
GDB
In the directory with your source code, I've also add a .gdbinit file which contains:
define reload
kill
monitor jtag_reset
load
end
target extended localhost:4242
load
This will execute whenever you start GDB in the source directory
To start up:
~/stlink/st-util #Start GDB server
arm-none-eabi-gdb main.elf #In a second terminal window, start GDB
continue #Starts code running, or use other GDB commands to
# set breakpoints, etc first...
Related projects
- Application - MPR121, capacitive touch sensor controller
- Application - MAX7219, Serially Interfaced, 8-Digit LED Display Drivers (interact with MPR121)
- Application - MAX7219, Serially Interfaced, 8-Digit LED Display Drivers (scrolling text)
- application - CS43L22, built-in DAC(audio playback)
- Application - MG90S, Metal Gear Servo
- Application - Joystick
- Application - nRF52, (BLE - UART - STM32F4)
- Application - MeArm, mini robotic arm