Software Architecture Design Using RUP 4+1 View Method

Software Architecture Design Using RUP 4+1 View Method

Developing software that satisfies users is not an easy task; software architects must comprehensively grasp various requirements, weigh potential conflicts between them, and categorize different requirements for satisfaction. This article discusses the complexity of understanding different types of requirements and demonstrates, through specific case analysis, how to perform architectural design using the RUP 4+1 view … Read more

How to Determine If Cortex-M Processor Is Executing Interrupt Function?

How to Determine If Cortex-M Processor Is Executing Interrupt Function?

Follow+Star Public Account, don’t miss wonderful content Author | strongerHuang WeChat Official Account | Embedded Column Today, I want to share some knowledge I encountered while debugging code: the usage of __get_CONTROL, and the differences between xQueueSend and xQueueSendFromISR; 1 Source of the Problem I previously ported some code written by others on the FreeRTOS … Read more

Getting Started: Bare-Metal Programming on ARM Cortex-M Microcontrollers

Getting Started: Bare-Metal Programming on ARM Cortex-M Microcontrollers

Getting Started: Bare-Metal Programming on ARM Cortex-M Microcontrollers Bare-metal programming typically refers to the process of writing programs to control hardware devices directly without an operating system. For embedded system developers, this is a fundamental and important skill. Today, I will guide you through how to implement bare-metal programming on ARM Cortex-M series microcontrollers. Starting … Read more

Understanding Cortex-M Interrupt Vector Table and Redirection Methods

Understanding Cortex-M Interrupt Vector Table and Redirection Methods

Hello everyone, I am Pi Zi Heng, a serious techie. Today, I will share with you the principles of the Cortex-M interrupt vector table and its redirection methods. Continuing from the previous article “Three Implementations of Critical Section Protection in Embedded Cortex-M Bare Metal Environment”, in embedded code design, sometimes certain special operations (such as … Read more

Comprehensive Guide to ARM GICv3

Comprehensive Guide to ARM GICv3

1 You must have learned about it. Some say it can interrupt the CPU’s sequential execution, which is the essence of microcontroller learning. Others say it helps the CPU achieve asynchronous multitasking, thereby improving CPU efficiency. Some also say it effectively manages various system resources and coordinates relationships between multiple CPUs. The knowledge I am … Read more

Arduino Uno External Interrupt Tutorial with Exercises

Arduino Uno External Interrupt Tutorial with Exercises

Performance Parameters① Main Control Chip: ATmega328P② Digital Input/Output Pins: 14③ PWM Pins: 6④ Storage (Code Space): 32KB⑤ RAM (Runtime Storage): 2KB; EEPROM (Power-off Save Space): 1KB⑥ Crystal Oscillator: 16MHz Online Simulation: https://wokwi.com/ Arduino Uno Tutorial ①: Installing Arduino IDE Arduino Uno Tutorial ②: Development Board and LED Test Arduino Uno Tutorial ③: Button Control LED, … Read more

FreeRTOS Interrupt Testing Guide

FreeRTOS Interrupt Testing Guide

Introduction to FreeRTOS Interrupts The highest interrupt priority that can call interrupt-safe FreeRTOS API functions is determined by the interrupt service routine. Do not call interrupt-safe FreeRTOS API functions from any interrupt with a higher priority than this (the higher the priority, the lower the numerical value). The code is as follows (version FreeRTOS V202107.00): … Read more

FreeRTOS Queue Usage Example

FreeRTOS Queue Usage Example

FreeRTOS Queue Usage Example This article aims to demonstrate the usage of queues in FreeRTOS. According to the description in this article, a simple usage of queues can be implemented. Experimental conditions: Basic knowledge of C language, with an integrated development environment such as Keil uVision5. Design Experiment In this experiment, we will continue to … Read more

Understanding the Cortex-M Interrupt/Exception System and Priority/Nesting

Understanding the Cortex-M Interrupt/Exception System and Priority/Nesting

Follow and star the public account to access wonderful content Compiled by: Technology makes dreams greater | Li Xiaoyao Link: https://itexp.blog.csdn.net/article/details/85029696 Problem Recently, while using the STM32F3 chip, I encountered a problem: If the frequency of external interrupts is fast enough, how to handle the new interrupt if the previous one has not been processed? … Read more

Is RTOS Really a Real-Time Operating System?

Is RTOS Really a Real-Time Operating System?

Follow+Star public number, don’t miss wonderful content Author | strongerHuang WeChat public account | strongerHuang Everyone knows that RTOS (Real Time Operating System) is a real-time operating system. So what exactly is a real-time operating system? Is RTOS really real-time? I believe many beginners have such doubts. What is RTOS RTOS:Real Time Operating System, which … Read more