yahboom
HomeLearn
Solution
Blog
Online Store
About Us
EN/中文
STM32-BoardCar📖
0. Get started quickly
  • 0.ReadMe
  • 1. Installation Instructions
  • 2. Version configuration
  • 3. Smart car installation video
  • 4. Precautions for use
1. Introduction to STM32 development board
  • 1. Learn about STM32
  • 2. Introduction to STM32 development board
  • 3. Development board pin assignment
  • 4. Introduction to HAL library and LL library
2. Setting up and using the development environment
  • 1. Common development tools
  • 2. STM32CubeMX Install - Use
  • 3. STM32CubeIDE Install - Use
  • 4. Common Driver Installation
  • 5. Program download and simulation
  • 6. Engineering experience and migration
3. Development board basic tutorial
  • 1. RGB searchlight (GPIO)
  • 2. Buzzer control (GPIO)
  • 3. Button control (EXTI)
  • 4. Serial communication (UASRT)
  • 5. Voltage detection (ADC)
  • 6. Internal temperature sensor(ADC)
  • 7. Independent watchdog(IWDG)
  • 8. Window watchdog(WWDG)
  • 9. Basic timer (TIM6)
  • 10. Universal Timer (TIM3)
  • 11. Advanced timers (TIM1)
  • 12. I2C Communication (IIC)
  • 13. Off-chip Flash (SPI)
  • 14. On-chip Flash (Flash)
  • 15. DMA:USART
  • 16. DMA:SPI
  • 17. DMA:I2C
  • 18. USB communication
  • 19. USB analog U disk
  • 20. FreeRTOS
4. Car expansion tutorial
  • 1. Servo control
  • 2. Basic use of ultrasonic steering gear gimbal
  • 3. Motor control
  • 4. OLED display light sensitivity value
  • 5. Infrared sensor
  • 6. Four-way tracking module
  • 7. Infrared remote control
  • 8. Ultrasonic ranging
  • 9. PS2 controller test
  • 10.K230 Vision Module
  • 11.AI voice interaction integration module
5. Robot car tutorials
  • 1. Car line patrol
  • 2. Ultrasonic follow
  • 3. Ultrasonic obstacle avoidance
  • 4. Ultrasonic obstacle avoidance (servo gimbal version)
  • 5. Infrared sensor obstacle avoidance
  • 6. Infrared remote control
  • 7. PS2 handle remote control
  • 8.K230 face tracking on PTZ
  • 9.K230 color tracking
  • 10.K230 Color Line Patrol
  • 11.K230 QR code command
  • 12.K230 machine code tracking
  • 13.K230 road sign indication action (voice)
  • 14.K230 color response (voice)
  • 15.K230 gesture control (voice)
  • 16.K230 Rock-Paper-Scissors Game (Voice)
6. Operation video
  • 1-How to install STM32CubeIDE software
  • 2-How to create Demo project
  • 3-How to download code into STM32 robot car
  • 4-How to open and compile a code file for STM32
  • 5-About IR control and Charge battery
Download
  • Code
  • SCH
  • Software File
  • STM32 Chip DataSheet
  • Installation manual
Download ZIP

Welcome to STM32-BoardCar repository

8. Ultrasonic ranging

Ultrasonic ranging

Ultrasonic ranging1. Software-Hardware2. Brief principle1. Hardware schematic diagram2、Physical connection diagram3. Control principle3. Project configuration1. Description2. Pin configuration4. Main functions1. User function5. Experimental phenomena

This tutorial demonstrates: How to connect an external expansion board and use the ultrasonic module to measure distance and then print the data through the serial port.

1. Software-Hardware

  • STM32F103CubeIDE

  • STM32 expansion board

  • Ultrasonic Module

  • Type-C data cable or ST-Link

    Download programs or simulate the development board·

  • Serial Assistant

    Receive serial port data and print

2. Brief principle

1. Hardware schematic diagram

image-20230925153122335

2、Physical connection diagram

image-20230926100744845

3. Control principle

(Schematic name)Control pinSpecific meaning
TRIGPF11Trigger terminal
ECHOPF12Receiver

Ultrasonic Module:

It is a module that uses ultrasonic waves for non-contact physical quantity measurement. It can accurately measure distance, speed, flow and other physical quantities by transmitting and receiving ultrasonic signals, and converts the measurement results into digital signal output. This article will popularize the ultrasonic module Its working principle and function.

The types of ultrasonic modules on the market are mainly divided into the following categories:

  • HC-SR04 ultrasonic module
  • US-100 ultrasonic module
  • US-015 ultrasonic module
  • HY-SRF05 ultrasonic module
  • HC-SR04 ultrasonic ranging module

Ultrasonic module information for this experiment:

ModelHC-SR04Detection distance2-400cm
Working voltage5VHigh precisionUp to 0.3cm
Operating current15mADead zone2cm
Operating frequency40KHzPin sequenceVCC, Trig (control end), Echo (receiving end), GND
Quiescent operating current<2mAInput trigger signal10uS TTL pulse
Sensing angleNot greater than 15°Input echo signalOutput TTL level signal, proportional to range
Range range2cm-4m (peak)Level outputTTL level

Ranging principle: Input a high potential for more than 10 microseconds at the trigger end of the ultrasonic module to emit ultrasonic waves. After transmitting the ultrasonic waves and before receiving the returned ultrasonic waves, the receiving end is at a high potential. Therefore, the program can calculate the distance of the measured object from the high pulse duration of the "response" pin.

Test distance = (high level time * speed of sound (340M/S))/2;

image-20230926100744845

Note: The above timing diagram shows that you only need to provide a pulse trigger signal of more than 10us, and the module will internally send out 8 40kHz cycle levels and detect echoes. Once an echo signal is detected, an echo signal is output. The pulse width of the reverberated signal is proportional to the measured distance. The distance can be calculated from the time interval between the transmitted signal and the received echo signal.

3. Project configuration

1. Description

Omitted project configuration part: New project, chip selection, project configuration, SYS of pin configuration, RCC configuration, clock configuration and project configuration content

Please refer to [2. Development environment construction and use: STM32CubeIDE installation and use] to understand how to configure the omitted parts of the project.

2. Pin configuration

image-20230926100744845

image-20230926100744845

image-20230926100744845

image-20230926100744845

image-20230926100744845

image-20230926100744845

image-20230926100744845

4. Main functions

According to our tutorial STM32CubeIDE can generate the corresponding gpio.c, gpio.h, tim.c and tim.h files. For later transplantation and peripheral module driver, we will place the automatically generated code in the BSP under the project file. folder.

1. User function

Function: Ultrasonic_GPIO_Init

Function prototypevoid Ultrasonic_GPIO_Init(void)
Function descriptionUltrasonic pin initialization
Input parametersNone
Output parametersNone

Function: Get_distance

Function prototypefloat Get_distance(void)
Function descriptionUltrasonic range detection
Input parametersNone
Output parametersOutput distance

Function: Bsp_TIM7_Init

Function prototypevoid Bsp_TIM7_Init(void)
Function descriptionOpen timer terminal
Input parametersNone
Output parametersNone

5. Experimental phenomena

After downloading the program, you need to place obstacles in the direction facing the ultrasonic module. Open the serial port assistant and set the parameters as shown in the figure below. Then we can use the serial port assistant to view the measured ultrasonic distance.

xxxxxxxxxx
For program download, please refer to [2. Development environment construction and use: program download and simulation]

The effect is as follows:

image-20230926100744845

 

Infrared remote control
PS2 controller test

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

Copyright © 2017-2026 Yahboom. All Rights Reserved.

EN/中文