The NUCLEO-G071RB is a development board manufactured by Nucleo, featuring the STM32G071RB microcontroller. This microcontroller is based on the 32-bit ARM Cortex-M0+ core, offering a balance of performance and power efficiency. The board is designed to provide a flexible and cost-effective platform for prototyping and developing embedded applications. It supports a wide range of peripherals, including GPIO, ADC, UART, SPI, I2C, and more. Additionally, the NUCLEO-G071RB is compatible with the Arduino ecosystem, making it easy to integrate with various expansion boards and shields.
Parameter | Specification |
---|---|
Microcontroller | STM32G071RB (ARM Cortex-M0+, 32-bit, 64 MHz) |
Flash Memory | 128 KB |
SRAM | 36 KB |
Operating Voltage | 3.3V (core), 5V (external power supply via USB or VIN) |
Input Voltage Range | 7V to 12V (via VIN pin) |
Communication Interfaces | UART, SPI, I2C, CAN, USB 2.0 Full-Speed |
GPIO Pins | 51 (including analog-capable pins) |
ADC | 12-bit, up to 16 channels |
DAC | 12-bit, 2 channels |
Clock Speed | Up to 64 MHz |
Debugging Interface | ST-LINK/V2-1 (onboard debugger and programmer) |
Compatibility | Arduino Uno R3 pinout, ST morpho connectors |
Dimensions | 68.6 mm x 53.3 mm |
The NUCLEO-G071RB features multiple pin headers, including Arduino-compatible headers and ST morpho connectors. Below is a summary of the pin configuration:
Pin Name | Functionality | Description |
---|---|---|
A0-A5 | Analog Input | 12-bit ADC channels |
D0-D13 | Digital I/O | General-purpose digital I/O pins |
PWM Pins | D3, D5, D6, D9, D10, D11 | PWM output pins |
VIN | Power Input | External power supply input (7V-12V) |
3.3V | Power Output | 3.3V regulated output |
5V | Power Output | 5V regulated output |
GND | Ground | Ground connection |
RESET | Reset | Resets the microcontroller |
Pin Name | Functionality | Description |
---|---|---|
PA0-PA15 | GPIO, ADC, UART, SPI, I2C, etc. | General-purpose I/O and peripheral functions |
PB0-PB15 | GPIO, ADC, UART, SPI, I2C, etc. | General-purpose I/O and peripheral functions |
PC0-PC15 | GPIO, ADC, UART, SPI, I2C, etc. | General-purpose I/O and peripheral functions |
Powering the Board:
Programming the Board:
Connecting Peripherals:
Uploading Code:
The following example demonstrates how to blink an LED connected to pin D13:
// Blink an LED on pin D13 (built-in LED on the NUCLEO-G071RB)
void setup() {
pinMode(LED_BUILTIN, OUTPUT); // Set the built-in LED pin as an output
}
void loop() {
digitalWrite(LED_BUILTIN, HIGH); // Turn the LED on
delay(1000); // Wait for 1 second
digitalWrite(LED_BUILTIN, LOW); // Turn the LED off
delay(1000); // Wait for 1 second
}
The board is not detected by the computer:
Code upload fails:
Peripherals are not working as expected:
The board overheats:
Q: Can I use the NUCLEO-G071RB with Arduino shields?
A: Yes, the board is compatible with Arduino Uno R3 shields via its Arduino headers.
Q: Does the board support low-power modes?
A: Yes, the STM32G071RB microcontroller supports multiple low-power modes for energy-efficient applications.
Q: How do I reset the board?
A: Press the RESET button on the board or use the software reset functionality in your code.
Q: Can I use the board for CAN communication?
A: Yes, the STM32G071RB microcontroller includes a CAN interface, accessible via the ST morpho connectors.