* One-sentence introduction: STM32F103CBT6 (compatible with STM32F103C8T6/STM32F103C6T6) minimum system, integrated buttons, LEDs, CH340 serial port, USB power supply, SWD debugging interface
Demonstration is being updated
# Design inspiration
The appearance of this work is inspired by the most common STM32F103C8T6 minimum system board on the market (as shown in the figure)
![image.png]
This layout has a small appearance and rich lead-out interfaces. It can be further expanded as the control board of the work. This work absorbs and inherits its advantages, and optimizes the pain points found during use
# Features and improvements
## Compared with the common version, this design has made the following changes:
### Reduce the difficulty of manual welding
by laying out the components on one side, and adjust most components to larger packages, such as SOT-223 package for LDO; 0805 package for capacitors, resistors, and LEDs.
### Added and improved USB functions
. Use the type-c interface that keeps pace with the times, and the connection is more secure. Integrate
the CH340N chip and support serial communication through USB.
Increase the power of LDO
. ### Further enrich the debugging function
~~ Lead out the RST pin next to the SWD debugging interface, and you can use the downloader to achieve automatic reset~~
(Tests have found that SWD debugging and reset can also be performed without connecting RST, so this pin is unnecessary~ ┐( ̄ヮ ̄)┌)
The board has a button and an LED connected to the GPIO .
At the same time, the power indicator and the RST button pads are led out on the front and back. The welding side can be selected according to actual needs.
### Use the Jiali Chuang color silk screen process
to add your favorite patterns and designs on the back, such as this:
![image.png]
![image.png]
## The board has arrived. I will record the soldering process.
This is the second time I solder SMT. I hope it won't overturn
! [IMG_20230428_175550.jpg]
I don't know what went wrong. My color silk screen is gone (QAQ). Only the white and gold PCB is left (but don't say it, it looks good this way)
(Additional: I have reported it to Jiali Chuang and solved it~)
! [IMG_20230428_175433.jpg]
Apply solder paste and paste the components (there is no silk screen, so I have to place the components according to the project file)
! [IMG_20230428_175947.jpg]
Heat it up on the heating table first. After that, there are some extra solder balls and connected pins. Use a soldering iron to repair them
! [IMG_20230428_182520.jpg]
After the repair, it is as shown in the picture~
Addition! Remember to solder the reinforcement points of the Type-C mother seat!
![markIMG_20230428_183615.jpg]
Otherwise, you will pull off the mother socket and the wire together like me... (・ω・`ll)
After some mending, it is finally done
![IMG_20230428_183615.jpg]
![IMG_20230428_183625.jpg]
The power-on test is successful~
## Code debuggingThe
IO ports of the onboard LED and buttons are burned (ಥ_ಥ), so first connect other IO ports to the breadboard for testing...
### The main code for LED flashing
is as follows:
![image.png]
### Key input function: The main code
for switching the state of the LED by pressing the button is as follows: ![image.png] ### Serial communication function: - Serial port initialization is completed, and "usart3 is ready" is sent to the upper computer - When the button is pressed, "Key is clicked!" is sent to the upper computer - When 'o' is received, the LED is turned on; when 'c' is received, the LED is turned off. The main code is as follows: ![image.png] ![image.png] Demonstration video and source code have been uploaded