Step-by-Step Guide to STM32 External Interrupts

Step-by-Step Guide to STM32 External Interrupts

● Interrupts Interrupts play a very important role in microcontrollers. The code executes from top to bottom by default, and when it encounters conditions or other statements, it jumps to specified locations. During the execution of code in a microcontroller, unexpected situations may arise that need to be handled, which will interrupt the current code. … Read more

Detailed Analysis of GPIO Initialization Functions in STM32 HAL Library

Detailed Analysis of GPIO Initialization Functions in STM32 HAL Library

Reminder: This article provides a detailed analysis of the functions related to GPIO configuration in the HAL library, including MX_GPIO_Init(), HAL_GPIO_WritePin(), and HAL_GPIO_Init(). At the end of the article, a description of the f1 series GPIO port registers is attached. MX_GPIO_Init() First, let’s look at the source code: void MX_GPIO_Init(void){ GPIO_InitTypeDef GPIO_InitStruct = {0}; /* … Read more

Detailed Explanation of STM32 Microcontroller GPIO Working Principles

Detailed Explanation of STM32 Microcontroller GPIO Working Principles

Introduction to STM32 GPIO GPIO stands for General Purpose Input/Output ports, which are pins that can be controlled by the STM32. GPIO pins connect to external hardware devices, enabling communication with external devices, controlling external hardware, or collecting data from external hardware. Taking the STM32F103ZET6 chip as an example, this chip has a total of … Read more

Introduction to Independent Key in STM32 IoT Kit

Introduction to Independent Key in STM32 IoT Kit

Click the blue text above: IoT Inn to follow us. In previous sections, we used the LED light, buzzer, and relay components, driven by the GPIO output function of STM32. In this section, we will learn about the GPIO input function. When an external button is pressed, the microcontroller can detect it in real-time. Buttons … Read more

20 Commonly Used STM32 MCU Library Functions

20 Commonly Used STM32 MCU Library Functions

The development of STM32 microcontrollers relies heavily on their powerful library function support. These library functions provide developers with a unified interface, simplifying the operation of low-level hardware, improving development efficiency and the reliability of programs. Below we will share 20 commonly used library functions for STM32 microcontrollers. 1. GPIO Initialization Function void HAL_GPIO_Init(GPIO_TypeDef* GPIOx, … Read more

Introduction to Cortex-M3: Understanding Registers

Introduction to Cortex-M3: Understanding Registers

This article is reprinted from the Jishu Community Jishu Column: Arm Technology Blog Author: Andy Lok Source: https://zhuanlan.zhihu.com/p/52855259 In this article, we will discuss a very important concept in embedded systems – registers. Since microcontrollers interact with the external environment and control their own functions primarily through registers, the use of registers will be integral … Read more

Go Language Enhances Embedded System Development Efficiency

Go Language Enhances Embedded System Development Efficiency

Embedded system development usually requires working in resource-constrained environments, such as devices with limited memory and computing power. In such scenarios, the choice of programming language is crucial. Go language (Golang) is becoming a powerful tool for embedded development due to its efficiency, simplicity, and support for concurrency. Today, I will introduce you to some … Read more

Practical Project: Smart Home System Design Based on STM32

Practical Project: Smart Home System Design Based on STM32

Click the above to follow us! The smart home system is quietly changing our lifestyle. This article will take you deep into how to use the STM32 microcontroller to create a simple smart home system. We will cover the entire process from hardware selection to software programming, allowing you to easily master this popular technology. … Read more

Controlling JTAG with Raspberry Pi for Hardware Learning

Controlling JTAG with Raspberry Pi for Hardware Learning

Author:Hcamael@Zhidao Chuangyu 404 Laboratory Recently, while working on a router, I accidentally bricked the CFE and found that I could recover it via JTAG, so I conducted some research on JTAG. Initially, I just wanted to recover the device and didn’t intend to delve deeper into the research. Recovery Attempts The bricked router model is:LinkSys … Read more

Unlocking C++ Embedded Development: A Complete Guide to HAL Design

Unlocking C++ Embedded Development: A Complete Guide to HAL Design

I. The “Unsung Hero” in Embedded Development – HAL In the vast realm of embedded development, there is a crucial role that often remains “behind the scenes” – the Hardware Abstraction Layer (HAL). It serves as a bridge connecting upper-level software applications with a diverse range of underlying hardware devices. For C++ embedded developers, a … Read more