

The STM-32 NUCLEO-F401RE is a development board manufactured by STMicroelectronics, featuring the STM32F401RE microcontroller. This board is designed for rapid prototyping and development of embedded applications. It provides a wide range of interfaces, connectivity options, and compatibility with Arduino and ST morpho headers, making it versatile for various projects.








The STM-32 NUCLEO-F401RE features two main pin headers: Arduino Uno R3-compatible headers and ST morpho headers. Below is a summary of the pin configuration:
| Pin Name | Function | Description | 
|---|---|---|
| D0-D1 | UART RX/TX | Serial communication pins | 
| D2-D13 | Digital I/O | General-purpose digital I/O pins | 
| A0-A5 | Analog Input | 12-bit ADC channels | 
| 3.3V | Power Output | 3.3V regulated output | 
| 5V | Power Output | 5V regulated output | 
| GND | Ground | Common ground | 
| VIN | Power Input | External power input (7V-12V) | 
| RESET | Reset | Resets the microcontroller | 
| Pin Name | Function | Description | 
|---|---|---|
| PAx, PBx | GPIO | General-purpose I/O pins | 
| VDD | Power Supply | 3.3V power supply | 
| GND | Ground | Common ground | 
| NRST | Reset | Microcontroller reset | 
| OSC_IN | External Oscillator In | Input for external clock source | 
| OSC_OUT | External Oscillator Out | Output for external clock source | 
Powering the Board:
Programming the Board:
Connecting Peripherals:
Uploading Code:
Below is an example code to blink an LED connected to pin D13:
// Blink an LED on pin D13 of the STM-32 NUCLEO-F401RE
void setup() {
  pinMode(13, OUTPUT); // Set pin D13 as an output
}
void loop() {
  digitalWrite(13, HIGH); // Turn the LED on
  delay(1000);            // Wait for 1 second
  digitalWrite(13, LOW);  // Turn the LED off
  delay(1000);            // Wait for 1 second
}
The board is not detected by the computer:
Code upload fails:
The board does not power on:
GPIO pins are not functioning as expected:
Q: Can I use the STM-32 NUCLEO-F401RE with 5V logic devices?
A: The board operates at 3.3V logic levels. Use level shifters to interface with 5V devices.
Q: Is the board compatible with Arduino shields?
A: Yes, the board is compatible with most Arduino Uno R3 shields.
Q: How do I reset the board?
A: Press the RESET button on the board or use the NRST pin.
Q: Can I use an external clock source?
A: Yes, connect the external clock to the OSC_IN and OSC_OUT pins on the ST morpho header.