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

7. Infrared remote control

Infrared remote control

Infrared remote control1、software-hardware2、Brief principle2.1、Hardware schematic diagram2.2、Physical connection diagram2.3、Principle of control3、Engineering configuration3.1、Notes3.2、Pin configuration4、Main FunctionUser function5、Experimental phenomenon

This tutorial demonstrates: Print the key value of infrared remote control via serial port (USART1)

1、software-hardware

  • STM32F103CubeIDE

  • STM32 robot expansion board

    The infrared receiver (HS0038B) is integrated on the development board

  • Type-C cable or ST-Link

    Download or simulate the program of the development board

2、Brief principle

2.1、Hardware schematic diagram

image-20231027114521990

2.2、Physical connection diagram

Integrated infrared receiver (HS0038B) on the development board

image-20231027114825021

2.3、Principle of control

The receiving of infrared data is triggered by interruption, and the data is judged to be 0 or 1 according to the high level time of the output pin of the infrared receiver, so as to realize the data reading of the key value of the infrared remote control.

  • NEC protocol

    The remote control attached to the development board uses the NEC protocol with a carrier frequency of 38KHz.

FormatRole
Boot codeIdentifies the beginning of the instruction
Address code (user code)Identifies the device address of the remote control
Address inverse codeEnhance data transmission reliability
Data codeSpecific remote control instructions
Data inverse codeData inverse code

image-20231027121327749

  • Infrared remote control

image-20231027151422580

0:38KHz carrier of 560us + 560us of the carrier-free interval composition

1:38KHz carrier of 560us + carrier-free interval composition of 1680us

  • Infrared receiver

0:560us low level + 560us high level

1:560us low level + 1680us high level

When the IR receiver receives the IR carrier signal, the DATA output pin of HS0038B outputs a low level

When the IR receiver does not receive the IR carrier signal, the DATA output pin of HS0038B outputs a high level

Infrared receiver (development board integrated)Corresponding pin
HS0038BPG11(Infrared receiver signal output pin)

3、Engineering configuration

Project Configuration: Prompts for configuration options in the STM32CubeIDE project configuration process

3.1、Notes

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

The project configuration part, which is not omitted, is the key point to configure in this tutorial.

Please refer to [2, development environment construction and use: STM32CubeIDE installation - Use] to understand how to configure the omitted part of the project

3.2、Pin configuration

  • GPIO

image-20231027142406972

  • USART

image-20231027143928611

  • NVIC

image-20231027143832876

  • Generating code

image-20231024193047747

4、Main Function

This paper mainly introduces the functional code written by users. Detailed code can be opened by yourself in the project file we provide, and enter the Bsp folder to view the source code. .

User function

Many of the common HAL library functions were covered in Chapter 3, but they will not be covered here.

function:InfraredRecvLowTime

Function prototypesuint16_t InfraredRecvLowTime(void)
Functional DescriptionCalculate the duration of the low level
Input parametersNone
Return valueCount value (about 17us for one count)

function:InfraredRecvHighTime

Function prototypesuint16_t InfraredRecvHighTime(void)
Functional DescriptionCalculate the duration of the high level
Input parametersNone
Return valueCount value (about 17us for one count)

function:InfraredDataRecv

Function prototypesuint8_t InfraredDataRecv(void)
Functional DescriptionObtain infrared remote control data
Input parametersNone
Return valueThe corresponding key value of the remote control

5、Experimental phenomenon

After downloading the program successfully, press the RESET button of the development board to observe the phenomenon of serial debugging assistant

xxxxxxxxxx
Program download can refer to [2, development environment construction and use: program download and simulation]

phenomenon:

Press different key values on the infrared remote control, and the serial port will print data corresponding to different key values.

image-20231111152042470

Four-way tracking module
Ultrasonic ranging

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/中文