yahboom
HomeLearn
Solution
Blog
Online Store
About Us
EN/中文
520 Motor📖
1.About motor
  • About motor
2.ROS robot control board drive
  • 2.1 Control motor
  • 2.2 Timer captures encoder data
  • 2.3 PID control robot car
  • 2.4 Kinematic Analysis-Mecanum wheel structure
  • 2.5 Kinematic Analysis-Ackerman structure
  • 2.6 Kinematic Analysis-4WD structure
3.STM32 Self-balancing car tutorials
Get started quickly
  • 03.P, PI, PD controller theory
  • 01.Balancing car assembly
  • 02.Get started quicklyy
  • 03.Balance car interface description
  • 04.Common Problem Analysis
  • 05.Balance Car V2 Library Function Development Manual
Environment construction and development
  • 01.MDK-ARM installation
  • 02.STM32CubeIDE installation
  • 03.Common driver installation
  • 04.Download the program
  • 05.MDK-ARM project usage
  • 06.Program simulation
Robot car PID control course
  • 01.PID basic concept
  • 02.PID example analysis
  • 04.Position PID
  • 05.Incremental PID
  • 06.Cascade PID
  • 07.Balance principle of car
  • 08.Car upright control (PD)
  • 09.Car speed ​​control (PI)
  • 10.Car steering control (PD)
  • 11.Got angle and angular velocity (DMP algorithm)
  • 12.Got angle and angular velocity (Kalman filter algorithm)
  • 13.Got angle and angular velocity(Complementary filter algorithm)
Robot car basic course
  • 01.Car parameter adjustment
  • 02.Ultrasonic obstacle avoidance
  • 03.Ultrasonic follow
  • 04.Bluetooth remote control
  • 05.Load balance
Robot car LQR control
  • Robot car LQR control
Circuit design
  • 01.Overall circuit design
  • 02.STM32 minimum system
  • 03.Serial port circuit design
  • 04.Power circuit design
  • 05.MPU6050 Circuit Design
  • 06.Motor drive circuit design
Mathematical model
  • Balance car mathematical model
4.4-channel motor drive module
Introduction and Debug
  • 1.Introduction to 4-channel motor drive board
  • 2.Control command
  • 3.Motor introduction and usage
  • 4.PC host
IIC communication
  • For Arduino
  • For ESP32
  • For Jetson NANO
  • For MSPM0G3507
  • For MSPM0G3519new
  • For PICO2
  • For RDK X5
  • For RPi5
  • For STM32
USART communication
  • For Arduino
  • For ESP32
  • For Jetson NANO
  • For MSPM0G3507
  • For MSPM0G3519new
  • For PICO2
  • For RDK X5
  • For RPi5
  • For STM32
5.2-channel motor drive module
For MSPM0G3507
  • 1.AT8236 drive tutorials
  • 2.TB6612 drive tutorials
For MSPM0G3519
  • 1.AT8236 drive tutorialsnew
  • 2.TB6612 drive tutorialsnew
Download
  • Model File
  • Annex_ROS_robot_board
  • Annex_STM32_balancing_car
  • Annex_4channel_motor_drive
  • Annex_2channel_motor_drive
Download ZIP

Welcome to 520 Motor repository

04.Download the program

Download the program

Download the programFlyMCUHardware connectionMDK-ARMGenerate .hex fileSTM32CubeIDEGenerate .hex fileDownload the programProgram Running

The tutorial introduces the steps and options for generating and using .hex files in the software!

xxxxxxxxxx
The project files demonstrated in the tutorial do not provide source code, and the operation methods of using the projects in other chapters are the same

FlyMCU

Using the FlyMCU software, you can download the compiled program code (.hex file) to the target MCU chip through the serial port.

Hardware connection

Use the Type-C data cable to connect the computer and the Type-C burning interface of the development board:

image-20240829105232034

MDK-ARM

Generate .hex file

Using MDK-ARM, .hex files will not be generated by default. You need to check the option to generate .hex files to generate them.

xxxxxxxxxx
When MDK-ARM selects Generate .hex file, it will only be effective for the current project;
If you create or add a new project, you need to reselect Generate .hex file. You only need to select it once for each project for the first time!
  • Project target options

Check Create HEX File in the Output option:

image-20240722170209086

  • Compile

The .hex file will be generated only after the project is compiled successfully.

xxxxxxxxxx
.hex file location: in the OBJ folder of the project file

STM32CubeIDE

Generate .hex file

By default, the .hex file will not be generated when using STM32CubeIDE. You need to check the Generate .hex file option to generate it.

xxxxxxxxxx
The STM32CubeIDE option of generating a .hex file will only be valid for the current project;
If you create or add a new project, you need to re-check the option of generating a .hex file. You only need to check it once for the first time for each project!
  • Properties

image-20240821182025565

  • Check the corresponding option

image-20240821182126838

  • Compile

image-20240821182259354

xxxxxxxxxx
.hex file location: in the Debug folder of the project file

Download the program

You can use a data cable to burn the program through the Type-C interface of the development board;

After connecting the computer with a Type-C data cable, you can view the serial port number of the corresponding device in the device manager: port.

  • Device Manager

image-20240613104231304

  • Flymcu

BootLoader Option: DTR low level reset, RTS high level reset into BootLoader

xxxxxxxxxx
Except that the serial port number and program file location may be inconsistent, other options are checked according to the picture

image-20240830122924636

Program Running

After successfully downloading the program, press the RESET button of the development board to observe whether the phenomenon of the development board is normal.

The demonstration project does not drive the development board, so there will be no phenomenon. Other cases in the tutorial will have corresponding phenomena
Common driver installation
MDK-ARM project usage

COMPANY

  • About us
  • Team Style
  • Blog

LEARNING & EXPLORATION

  • Tutorials
  • Edge AI hardware
  • Educational robots
  • Embedded intelligent hardware

WHERE TO BUY

  • Yahboom Online Store
  • Amazon
  • Alibaba
  • AliExpress
  • Mercado

TECHNOLOGY SUPPORT

  • Email: support@yahboom.com

BE A DISTRIBUTOR

  • Email: sales@yahboom.com
QR Code
QR Code

Copyright © 2017-2026 Yahboom. All Rights Reserved.

EN/中文