Implementing a Chasing LED Pattern on Zynq PS with GPIO

The Zynq Processing System (PS), featuring an ARM hard core, offers a powerful platform for embedded applications. This article explores a fundamental method for controlling peripheral hardware from the PS: driving a chasing LED sequence through General Purpose Input/Output (GPIO) functionality. Leveraging a pre-configured GPIO IP core within t ...

Posted on Mon, 26 Oct 2026 16:09:39 +0000 by graphic3

Loongson 2K0300 Embedded Linux Development: Environment Configuration and Vision Processing

Virtual Machine and Operating System Setup Establishing a stable development environment is the prerequisite for embedded Linux work. Ubuntu 20.04 LTS is recommended for compatibility with Loongson toolchains. VMware Configuration Install VMware Workstation on the host machine. Create a new virtual machine using the Ubuntu 20.04 ISO image. All ...

Posted on Thu, 15 Oct 2026 16:04:31 +0000 by robkir

STM32 LED Control: From Library Functions to Register-Level Programming

This article demonstrates basic STM32 GPIO control by blinking an onboard LED using both the Standard Peripheral Library and direct register manipulation. The target hardware uses the PC13 pin to drive the LED: a low output turns the LED on, a high output turns it off. All code is developed on an STM32F103 minimum system board. Schematic Analys ...

Posted on Wed, 07 Oct 2026 16:04:22 +0000 by Ollie Saunders

External Interrupts in STM32 Microcontrollers

An interrupt is a mechanism that temporarily suspends the main program execution when a specific trigger condition occurs (interrupt source). The CPU then jumps to handle the interrupt service routine (ISR) and returns to the paused location after completion. Interrupt priority determines the order of handling when multiple interrupts occur sim ...

Posted on Tue, 29 Sep 2026 16:41:55 +0000 by AdamBrill

Linux Kernel Spinlock Implementation with Interrupt State Management

In Linux kernel development, spinlocks are essential synchronization primitives for protecting shared resources in interrupt contexts. This article demonstrates how to implement interrupt-safe spinlocks in a character device driver for controlling GPIO-based LEDs. We'll explore the use of spinlock functions that save and restore interrupt state ...

Posted on Mon, 28 Sep 2026 16:38:52 +0000 by Thunderfunk

STM32F103 GPIO Programming Fundamentals

STM32F103 GPIO Programming Fundamentals Overview In the previous article, we discussed the reset and clock configuration for the STM32F103C8T6 minimal system. At this point, the system clock (SYSCLK) has been configured to 72MHz through a 9x multiplication of the external 8MHz high-speed oscillator (HSE) using the PLL. With the minimal system ...

Posted on Sun, 20 Sep 2026 16:28:21 +0000 by jack bro

STM32MP157 Linux Character Device Driver Development Guide

Project Directory Structure Key project directories for STM32MP157 development: Buildroot root filesystem: /home/developer/projects/stm32mp157/rootfs NFS root fliesystem: /home/developer/projects/nfs/rootfs Linux source code: /home/developer/projects/linux-5.4.31 Device tree: /home/developer/projects/linux-5.4.31/arch/arm/boot/dts/stm32mp157-a ...

Posted on Thu, 17 Sep 2026 16:09:48 +0000 by shane07

Controlling GPIO Inputs and Outputs in Zynq-7000 Linux Kernel Modules

Kernel Space GPIO ManipulationFor the FMQL45T900 platform based on the Zynq-7000 architecture, controlling pins from the kernel space requires determining the correct GPIO index. When utilizing EMIO5 exported from Vivado, the corresponding system GPIO number calculates to 431. The device tree mapping for this pin appears as <&portc 5 0x0 ...

Posted on Wed, 09 Sep 2026 16:05:36 +0000 by Bike Racer

STM32 GPIO Input Configuration for Buttons and Sensors

Overview of GPIO Input Modes 1.1 Button Basics Mechanical buttons are common digital input devices that close a circuit when pressed and open it when released. Due to the physical nature of their internal spring contacts, they exhibit bounce—a series of rapid on/off transitions during state changes. This requires software or hardware debounc ...

Posted on Fri, 04 Sep 2026 16:39:15 +0000 by crusty76

STM32 GPIO Output Configuration and Control Techniques

General Purpose Input/Output (GPIO) pins typically operate with in a logic voltage range of 0 to 3.3V. While certain inputs may tolerate 5V, output stages are strictly limited to the 3.3V supply. To control higher-power devices such as motors or relays, an external driver circuit must be integrated between the MCU pin and the load. Hardware Arc ...

Posted on Tue, 01 Sep 2026 16:27:25 +0000 by mindrage00