You gave the the confidence to actually get my Blue Pill going, after a year of having it in a drawer. I used the ST-Link from my stm32F0-Discovery board. Worked like a champ.
Hi 0033mer, I recently purchased my first Arduino and got a couple of Blue Pills as well, as they are very cheap. I've set two up using Arduino IDE and two with Forth, Mecrisp-Stellaris, one had a broken Reset SW (DOA). As I use the Arduino FTDI dongle for communication anyway I opened the Arduino IDE Serial Monitor and using the two units with Forth on them I was able to communicate using the Arduino, Serial Monitor (reset to 115200 baud). So if you didn't have Tera Term at least you could see it working. 07 EMIT (BEEP) won't work this way, but no big deal ~ :o) A simple project using Forth to flash some LEDs in a Chaser or a Bluetooth Relay or something simple would get others interested I'm sure. Great work, Greetings from Australia.
I am trying to use Debugger option on Keil IDE in STM 32F103C8T6 using ST-Link Debugger but it is not working. I am trying to read value stored in a variable. I am not able to read it. However, when I try to read value using same tools on different boards such as STM 32 F030 (Cortex - M0) and Nucle STM32 L031(Cortex-M0+) ,I am able to read. I want to ask is there any problem with STM 32F103. (I know there is no problem in the F103 as I have tried with many new F103 Boards and problem prevails the same). And I know it is not the problem of ST-Link Debugger as it is working with STM 32 F030. Please help.
The STM32F103 is a 3.3volt device so the GPIO output voltage is 3.3volts. Each GPIO pin can sink or source 25mA with a total max current value for the chip of 240mA. Check the data sheet for more detailed information.
You would use the internal PLL. Check out the PLL section in the data sheet. There is a clock configuration tool available from ST Microelectronics website. Check online for tutorials: embedded-lab.com/blog/stm32-internals/
Don't the ST chips come with a built-in bootloader in rom? i.e. just set the B1B0 jumpers to Low/High and access via a ttl uart1 (like at the 3m33s mark)? With B0 being the one closest to the header edge. Why did you have to start by programming via SWD (Discovery or ST-Link)? Is it because you wanted to add a secondary (Maple) bootloader? BTW, any thoughts as to why people are changing R10 from 10K to 1.5k?
The STM32F103 does not come with a factory USB Dfuse bootloader installed, just SWD and serial are onboard. You can download a third party USB bootloader if you want. For your computer to recognise a third party USB bootloader the resistor has to be changed. The STM32F407 microcontroller has a factory USB bootloader if you need it.
I've mostly used the on-board serial boot loader rather than bothering with SWD to load code into the on-board flash. There's a simple python script floating around that will use talk the boot loader's protocol on the first UART of the STM32F103 devices when the BOOT0/BOOT1 pins are in the right configuration upon reset. Here's my slightly tweaked version that can optionally unlock the flash on some devices (e.g., Maple Mini clones pre-burned with the arduino boot loader) at github.com/lmamakos/fluke8050a-forth/blob/master/stm32loader.py I've used this specifically to load the Mecrisp FORTH image on maple mini clones and blue pill boards.
If you want a FOSS serial flash utility that is far more powerful then the software provided by ST, please see `stm32flash`. sourceforge.net/p/stm32flash/wiki/Home/
You gave the the confidence to actually get my Blue Pill going, after a year of having it in a drawer. I used the ST-Link from my stm32F0-Discovery board. Worked like a champ.
Excellent explanation and video, many THANKS. Hope you make more video about STM32 projects with Arduino IDE.
Hi 0033mer, I recently purchased my first Arduino and got a couple of Blue Pills as well, as they are very cheap.
I've set two up using Arduino IDE and two with Forth, Mecrisp-Stellaris, one had a broken Reset SW (DOA).
As I use the Arduino FTDI dongle for communication anyway I opened the Arduino IDE Serial Monitor and
using the two units with Forth on them I was able to communicate using the Arduino, Serial Monitor (reset to 115200 baud).
So if you didn't have Tera Term at least you could see it working. 07 EMIT (BEEP) won't work this way, but no big deal ~ :o)
A simple project using Forth to flash some LEDs in a Chaser or a Bluetooth Relay or something simple would get others
interested I'm sure.
Great work,
Greetings from Australia.
Hi 0033mer. I am here to learn by heart about my delivered questions on that video. I'll try it as soon as I can at weekend. Thanks a lot:)
Great tutorial. Thanks for sharing!
In China this Blue stm32f103c8t6 's price is about one doller.
where is it mecrisp-stellaris-stm32f103.hex?
sourceforge.net/projects/mecrisp/files/
@@0033mer The port doesn't come out. I don't know the cause.
I am trying to use Debugger option on Keil IDE in STM 32F103C8T6 using ST-Link Debugger but it is not working. I am trying to read value stored in a variable. I am not able to read it.
However, when I try to read value using same tools on different boards such as STM 32 F030 (Cortex - M0) and Nucle STM32 L031(Cortex-M0+) ,I am able to read.
I want to ask is there any problem with STM 32F103. (I know there is no problem in the F103 as I have tried with many new F103 Boards and problem prevails the same). And I know it is not the problem of ST-Link Debugger as it is working with STM 32 F030. Please help.
Could you upload these programs for that i cand download them?
COULD YOU TELL ME ABOUT THE VOLTAGE AND CURRENT OUTPUT VALUE OF STM32F103? THANKS SO MUCH!
The STM32F103 is a 3.3volt device so the GPIO output voltage is 3.3volts. Each GPIO pin can sink or source 25mA with a total max current value for the chip of 240mA. Check the data sheet for more detailed information.
@@0033mer thanks so much!
Which software you used to program blue pill
mecrisp.sourceforge.net/
so the usb port in the blue pill is just for power
Yes .. the f103 does not have a factory bootloader that uses the USB port.
saved my day as I didn't have st link
BIG THANKS
8Mhz crystal so how to use 72Mhz clock
You would use the internal PLL. Check out the PLL section in the data sheet.
There is a clock configuration tool available from ST Microelectronics website.
Check online for tutorials:
embedded-lab.com/blog/stm32-internals/
+0033mer thanks a lot !
Don't the ST chips come with a built-in bootloader in rom? i.e. just set the B1B0 jumpers to Low/High and access via a ttl uart1 (like at the 3m33s mark)? With B0 being the one closest to the header edge.
Why did you have to start by programming via SWD (Discovery or ST-Link)? Is it because you wanted to add a secondary (Maple) bootloader?
BTW, any thoughts as to why people are changing R10 from 10K to 1.5k?
The STM32F103 does not come with a factory USB Dfuse bootloader installed, just SWD and serial are onboard.
You can download a third party USB bootloader if you want.
For your computer to recognise a third party USB bootloader the resistor has to be changed.
The STM32F407 microcontroller has a factory USB bootloader if you need it.
I've mostly used the on-board serial boot loader rather than bothering with SWD to load code into the on-board flash. There's a simple python script floating around that will use talk the boot loader's protocol on the first UART of the STM32F103 devices when the BOOT0/BOOT1 pins are in the right configuration upon reset. Here's my slightly tweaked version that can optionally unlock the flash on some devices (e.g., Maple Mini clones pre-burned with the arduino boot loader) at github.com/lmamakos/fluke8050a-forth/blob/master/stm32loader.py I've used this specifically to load the Mecrisp FORTH image on maple mini clones and blue pill boards.
If you want a FOSS serial flash utility that is far more powerful then the software provided by ST, please see `stm32flash`. sourceforge.net/p/stm32flash/wiki/Home/
Poor presentation.