stm32和Zynq的中断抢占机制 - 实践

news/2025/10/20 16:26:19/文章来源:https://www.cnblogs.com/yxysuanfa/p/19152971

stm32和Zynq都支持中断抢占,但它们的搭建机制和细节有所不同。

1. STM32 (基于ARM Cortex-M内核)

STM32微控制器普遍采用ARM Cortex-M系列内核(如M0, M3, M4, M7等),其嵌套向量中断控制器(NVIC)提供了非常强大和灵活的中断管理功能,包括硬件级别的中断抢占。

  1. 优先级配置

    • 通过NVIC中的每个中断源都能够被分配一个可编程的优先级。
    • 优先级数值越小,优先级越高。优先级0是最高优先级。
    • STM32允许你将优先级寄存器分成抢占优先级子优先级两个字段。这是通过NVIC_SetPriorityGrouping()函数或修改SCB->AIRCR寄存器来配置的。
  2. 抢占机制

    • 当处理器正在执行一个中断服务程序(ISR)时,如果一个更高抢占优先级的中断发生,那么当前正在处理的低优先级中断会被挂起,处理器会立即转去执行更高优先级的ISR。
    • 等高优先级ISR执行完毕后,处理器再返回到被挂起的低优先级ISR继续执行。
    • 子优先级不能决定抢占。它只在多个相同抢占优先级的中断同时等待处理时,决定先执行哪一个。它不能打断正在执行的同抢占优先级的ISR。

2. Zynq-7000 SoC

Zynq芯片分为处理系统(PS)和可编程逻辑(PL)两大部分。其中断体系更为复杂,但PS端的ARM Cortex-A9双核处理器也完全支持中断抢占。

  1. 通用中断控制器(GIC)

  2. 抢占机制

  3. 特殊考虑

3. 对比总结

特性STM32 (Cortex-M)Zynq PS (Cortex-A9)
中断控制器NVICGIC-400
是否支持抢占
优先级规则数值越小,优先级越高数值越小,优先级越高
优先级配置分组(抢占优先级/子优先级)每个中断源独立优先级寄存器
特殊模式协助IRQ和FIQ,FIQ优先级最高
典型应用环境裸机、RTOS (FreeRTOS, etc.)裸机、RTOS、Linux等完整OS
复杂度相对容易,直截了当更复杂,功能更强大

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/941328.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2025 年食品级润滑油脂厂家最新推荐榜单:聚焦纳米材料技术突破,甄选核心竞争力突出的企业

引言 在食品、制药、饮料等与民生健康紧密相关的行业中,食品级润滑油脂作为生产设备的 “血液”,其安全性、稳定性与适配性直接决定产品质量安全与生产效率。当前市场存在诸多痛点:部分产品难以平衡极端工况适应性与…

2025 年食品级润滑油源头厂家最新推荐排行榜:聚焦国产标杆企业,54 项专利加持,助力企业精准选品食品级润滑油液压油/食品级润滑油齿轮油/食品级润滑油烘焙设备润滑油厂家推荐

引言 当前食品、制药、饮料等行业高速发展,食品级润滑油作为保障设备稳定运转、守护食品安全的关键产品,其品质与供应稳定性直接影响企业生产效率与产品安全。然而,市场上存在国外品牌垄断推高采购成本、部分小型厂…

2025年精密弹簧厂家权威推荐榜:压缩弹簧、拉伸弹簧、异形弹簧专业制造商实力解析与选购指南

2025年精密弹簧厂家权威推荐榜:压缩弹簧、拉伸弹簧、异形弹簧专业制造商实力解析与选购指南 在现代工业制造体系中,精密弹簧作为基础却关键的机械元件,其性能质量直接影响着整个设备系统的可靠性与精度。随着高端装…

七大排序算法的基本原理 - 教程

七大排序算法的基本原理 - 教程pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco&quo…

牛客刷题-Day15

优先队列、并查集 https://ac.nowcoder.com/acm/contest/22904?from=acdiscuss牛客刷题-Day15 今日刷题:\(1011-1015\) 1011 小A与任务 题目描述 小A手头有 \(n\) 份任务,他可以以任意顺序完成这些任务,只有完成当…

2025年青海视频号运营服务商权威推荐榜:专业内容策划与精准流量投放口碑之选

2025年青海视频号运营服务商权威推荐榜:专业内容策划与精准流量投放口碑之选 在数字经济蓬勃发展的今天,视频号作为内容传播与商业转化的重要阵地,已成为企业品牌建设与营销推广的核心渠道。青海地区依托独特的文化…

数据结构学习(1)——指针、结构体、链表(C语言) - 实践

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

LVDS硬件知识 - 指南

LVDS硬件知识 - 指南pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "…

task 1 improved

task 1 improved#include <stdio.h> #include <stdlib.h> #include <time.h>#define N 5 #define N1 80 #define N2 35 int main(){int cnt;int r;//random_major,random_no;srand(time(NULL)); //n…

rhel v7 v8 local repository setting

---------v7----------- echo -e "[RHEL7-ELS]" > /etc/yum.repos.d/web.repo echo -e "name=RHEL7-ELS" >> /etc/yum.repos.d/web.repo echo -e "enabled=1" >> /etc/y…

2025 年仿石漆厂家最新推荐榜,技术实力与市场口碑深度解析,精选优质企业助力选购水包砂/冠晶石/外墙/多彩/批刮仿石漆厂家推荐

引言 当前仿石漆行业蓬勃发展,但市场品牌繁杂、产品质量良莠不齐,采购方在挑选时常常面临诸多难题。部分产品仿石效果不佳、性能不稳定,甚至存在环保隐患,不仅影响建筑外观与使用寿命,还可能危害环境与人体健康。…

wsl连接 USB 设备

连接 USB 设备2025/06/11本指南将演练使用 USB/IP 开源项目 usbipd-win 将 USB 设备连接到 WSL 2 上运行的 Linux 分发版所需的步骤。 在 Windows 计算机上配置 USB/IP 项目可以实现常见的开发者 USB 场景,例如刷写 A…

完整教程:轻量服务器创建mysql,并配置远程连接

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

【完整版】vcruntime140_1.dll缺失?3步快速修复教程(含官方修复工具+系统适配指南)

当你在运行 Photoshop、Premiere、WPS 或游戏时出现“由于找不到 vcruntime140_1.dll,无法继续执行代码”的提示,不要慌。本文详细讲解 vcruntime140_1.dll 文件的作用、缺失原因,并提供三种权威修复方案:微软官方…

linux 学习平台 arm+x86 搭建 - 详解

linux 学习平台 arm+x86 搭建 - 详解pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monac…

如何系统化掌握 iOS 26 App 耗电管理,多工具协作

本文聚焦 iOS 26 App 耗电管理 /能耗监控 /后台唤醒优化主题,从电量下降速率、资源占用、后台任务、文件 IO/网络访问、版本差异等维度构建监控体系。结合多工具(Xcode Instruments、KeyMob 克魔、APM平台、文件工具…

user read only folder

setfacl -R -m u:iasloguser:r-x /scb/iads/gateway/log/ setfacl -R -m d:u:iasloguser:r-x /scb/iads/gateway/log/ d:u: is default ACL getfacl /scb/iads/gateway/log/

告别重复劳动,MonkeyCode 让你的开发团队拥有永动机

告别重复劳动,MonkeyCode 让你的开发团队拥有"永动机"作为一个在代码海洋里摸爬滚打了多年的开发者,我见过太多团队陷入这样的困境:代码审查耗时耗力、新人培养成本高昂、文档更新永远滞后、重复性工作占…

cpu for rhel8 on vmware

yum install sysstat -y systemctl start sysstat systemctl enable sysstat systemctl status sysstat tuned-adm list tuned-adm profile throughput-performance tuned-adm active echo 1 second,total 3 times mps…

CentOS7安装Python3.10环境

主要步骤:依赖=>下载=>编译=>配置 依赖  常见错误没有安装相关的依赖库The necessary bits to build these optional modules were not found:  _curses  _curses_panel  _dbm  _gdbm  _lzma  …