硬件基础中断

中断方式:

1.定义:能打断当前正在进行的工作,去处理更为紧急的任务,并且在处理完中断任务后,能回到

原先的地方继续工作。

2.流程:

(1)中断源发出中断请求。

(2)CPU检查是否响应中断以及该中断是否被屏蔽。

(3)检查当前产生的中断的中断优先级。

(4)保护现场

(5)执行中断服务函数

(6)恢复现场

1.硬件介绍

(1)两红一黄三个开关,中间是复位按钮,左边低功耗按钮,右边为允许用户独立控制的试验按

(2)原理图分析:开关断开高电平,开关按下低电平

2.编写按键代码(轮训方式)

(1)封装代码,注册回调函数

(2)中断模块

(3)GPIO模块封装

extern void gpio_init(GPIO_Type *gpio, int pin, gpio_config_t *config);

extern int gpio_read(GPIO_Type *gpio, int pin);

extern void gpio_write(GPIO_Type *gpio, int pin, int value);

3.中断控制器GIC(通用的中断控制器)

(1)23.page

V2.0设计可以为8个内核提供中断控制服务,但我们使用的IMX6ULL只有一个内核,图中所示只有

processor 0

每个内核能够相应1020个中断源,其中0~15是SGI,16~31是PPI,能够作为外设中断源的是

SPI32~1019

(2)Distributor(分发器):

(1)SGI(Software-generated Interrupt),软件中断:

由软件触发引起的中断,通过向寄存器GICD_SGIR 写入数据来触发,系统会使用 SGI 中断来完成

多核之间的通信。

(2)PPI(Private Peripheral Interrupt),私有中断:

GIC 是支持多核的,每个核肯定有自己独有的中断。这些独有的中断肯定是要指定的核心处理,

因此这些中断就叫做私有中断;

(3) SPI(Shared Peripheral Interrupt),共享中断:

相关推荐
ThornArmor13 天前
【工具篇·番外】跨语言生态的主权回收:基于 ISA 说明书的 4-bit 双向汇编系统全线封顶
c语言·开发语言·汇编·c++·重构·架构
Fcy64814 天前
Linux下 信号的保存与捕捉
linux·中断·信号的捕捉·信号的保存
是星辰吖~14 天前
WIN32_线程(下)
汇编
千流出海14 天前
软通动力向沙特交付机械革命硬件项目 智能业务进入中东合作阶段
硬件·千流出海·沙特
是星辰吖~14 天前
WIN32_线程(上)
汇编
AI科技星15 天前
数术工坊 · 第四卷 橡皮泥江湖(拓扑学)【完整定稿】
c语言·开发语言·汇编·electron·概率论·拓扑学
iCxhust15 天前
C# 生成命令行程序 将hex格式烧录程序转换成bin烧录格式
开发语言·汇编·单片机·嵌入式硬件·c#·微机原理
iCxhust16 天前
C#进程管理程序
开发语言·汇编·stm32·单片机·c#·微机原理
hhcgchpspk16 天前
汇编语言传递数据和地址的误区
汇编·笔记·nasm·masm
anew___16 天前
计算机组成原理:指令系统——软硬件交互的桥梁
计算机·寻址·硬件·指令系统