Arduino stm32 example for W5x00 ethernet modules
Arduino stm32 example for W5x00 ethernet modules. This project uses this library.
PlatformIO will automatically install the required libraries according to the ini file. Great!
$ python3 --version
Python 3.7.3
$ sudo apt install python3-pip python3-setuptools
$ python3 -m pip -V
pip 18.1 from /usr/lib/python3/dist-packages/pip (python 3.7)
# pip installed by apt is old, so update to the latest.
$ python3 -m pip install -U pip
$ python3 -m pip -V
pip 20.3.1 from /home/orangepi/.local/lib/python3.7/site-packages/pip (python 3.7)
# Update wheels.
$ python3 -m pip install -U wheel
$ pip3 install -U platformio
It is automatically selected inside the library.
PHY | STM32 | |
---|---|---|
MOSI | PA7 | |
MISO | PA6 | |
SCLK | PA5 | |
SS | PA4 | *1 |
RST | RESET | *2 |
3.3V | 3.3V | *3 |
GND | GND | *3 |
(*1) You can specify any pin in platformio.ini.
(*2) Pull up when there is no RESET pin.
(*3) BluePill or BlackPill board cannot supply too much current. It is more stable when supplied from an external power source.
+----------+ +----------+ +----------+
|BluePill | |ST-LINK | |HOST |
|BlackPill | | [------------] |
| |------------|SWD-IO [ USB ] |
| |------------|SWD-CLK [------------] |
| |------------|GND | | |
| |------------|3V3 | | |
| | +----------+ | |
| | | |
| | +----------+ | |
+----------+ | PA9|------------|RX | | |
| |---(MOSI)---| GND|------------|GND | | |
| |---(MISO)---| | | | | |
| |---(SCLK)---| | | | | |
| |---(SS)-----| | | USB-TTL [------------] |
| |---(RESET)--| | | [ USB ] |
| | | | | [/dev/ttyUSB0] |
| PHY | | | | [------------] |
| | +----------+ | | | |
| | | | | |
| | +----------+ | | | |
| |---(3V3)----|5v->3.3V |----(5V)----| | | |
| |---(GND)----|Regulator |----(GND)---| | | |
+----------+ +----------+ +----------+ +----------+
+----------+ +----------+ +----------+
|BluePill | |ST-LINK | |HOST |
|BlackPill | | [------------] |
| |------------|SWD-IO [ USB ] |
| |------------|SWD-CLK [------------] |
| |------------|GND | | |
| | | | | |
| | +----------+ | |
| | | |
| [------------------------------------] |
+----------+ | [ USB ] |
| |---(MOSI)---| [------------------------------------] |
| |---(MISO)---| | | |
| |---(SCLK)---| | | |
| |---(SS)-----| |-------+ | |
| |---(RESET)--| |---+ | | |
| | | | | | | |
| PHY | | | | (GND) | |
| | +----------+ (5V) | | |
| | | | | |
| | +----------+ | | | |
| |---(3V3)----|5v->3.3V |---+ | | |
| |---(GND)----|Regulator |-------+ | |
+----------+ +----------+ +----------+
+----------+ +----------+ +----------+
|BluePill | |USB-TTL | |HOST |
|BlackPill | | [------------] |
| |----(5V)----| [ USB ] |
| |----(GND)---| [------------] |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
+----------+ | PA9|------------|RX | | |
| |---(MOSI)---| | | | | |
| |---(MISO)---| | | | | |
| |---(SCLK)---| | | | | |
| |---(SS)-----| |-------+ | | | |
| |---(RESET)--| |---+ | | | | |
| | | | | | | | | |
| PHY | | | | (GND) | | | |
| | +----------+ (5V) | | | | |
| | | | | | | |
| | +----------+ | | | | | |
| |---(3V3)----|5v->3.3V |---+ | | | | |
| |---(GND)----|Regulator |-------+ | | | |
+----------+ +----------+ +----------+ +----------+
+----------+ +----------+
|BluePill | |HOST |
|BlackPill [------------------------------------] |
| [ USB ] |
| [------------------------------------] |
| | | |
| | | |
| | | |
| | | |
| | | |
+----------+ | | | |
| |---(MOSI)---| | | |
| |---(MISO)---| | | |
| |---(SCLK)---| | | |
| |---(SS)-----| |-------+ | |
| |---(RESET)--| |---+ | | |
| | | | | | | |
| PHY | | | | (GND) | |
| | +----------+ (5V) | | |
| | | | | |
| | +----------+ | | | |
| |---(3V3)----|5v->3.3V |---+ | | |
| |---(GND)----|Regulator |-------+ | |
+----------+ +----------+ +----------+
Serial.print goto PA9.
git clone https://github.com/nopnop2002/Arduino-STM32-Ethernet
cd Arduino-STM32-Ethernet/DhcpAddressPrinter
pio run -t upload -e bluepill_f103c8
Serial.print goto USB Virtual COM port. /dev/ttyACM0 may be change.
git clone https://github.com/nopnop2002/Arduino-STM32-Ethernet
cd Arduino-STM32-Ethernet/DhcpAddressPrinter
pio run -e bluepill_f103c8_usbcon -t upload && pio device monitor -b 115200 -p /dev/ttyACM0
See here.