ARM学习之中断,按键

低电平发声

按键

按下,连通GND,KEY0为低电平;松开,不连通GND,KEY0为高电平

12~15保持与上拉(拉才考虑)

|----|----|----|----|----|----|---|---|---|---|---|---|---|---|---|-------|
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| | | | | | | | | SPEED || DSE ||| | | SRE |
| | | | | | | | | | | 驱动强度配置 ||| | | 压摆率设置 |

迟滞比较器

消除抖动(小),增加延时

PUS

上拉下拉

中断处理流程

GIC

IRQ普通中断

SPI:(32!1019)

PPI:私有外设中断(16~31)

SGI:软中断(0~15),中断来自CPU,自我打断

cp0~cp15:协助处理器
The main functions of the CP15 system registers are:

  • Overall system control and configuration.
  • Memory Management Unit (MMU) configuration and management.
  • Cache configuration and management.
  • Virtualization and security.
  • System performance monitoring.

mrc mcr

ISR 中断状态寄存器

步骤

  1. 解除中断屏蔽:GPIOx_IMR
  2. 配置中断触发方式:GPIOx_ICR2
  3. 中断状态标志判断:GPIOx_ISR

if((GPIO1->ISR & (1<<18)) !=0)

{

led_on();

GPIO1->ISR |= (1<<18);

}

GIC初始化 GIC_Init();

设置GIC中对应中断优先级 GIC_SetPriority(GPIO1_Combined_16_31_IRQn,0);

设置GIC中对应中断使能

获取GIC寄存器组的基地址

获取中断通知寄存器的值

清楚中断结束寄存器的标志

异常向量表基地址重映射

打开icache

irq异常处理函数

irq中断处理函数

GIC检查

相关推荐
Canmag 兴隆磁性35 分钟前
中大型钕铁硼产品的磁通测量与自动分选:一条产线自动化的工程实现思路
运维·学习·自动化·永磁材料
小黄人软件3 小时前
桌面需要整理吗?有工具自动分类
学习
老衲不用@飘柔3 小时前
SFP与SFP+学习知识整理
学习
X54先生(人文科技)4 小时前
社会嵌入式终身学习机器与修复时代-ELR架构和技术演化探讨
人工智能·深度学习·学习·架构·开源协议
电子云与长程纠缠4 小时前
UE5魂系游戏开发教程05
开发语言·学习·游戏·ui·ue5
syagain_zsx5 小时前
BRpc 二次封装:Channel 管理、服务管理与回调工厂
c++·学习·程序人生·rpc·谷歌
其实防守也摸鱼5 小时前
Cylab在线靶场——CTF中的通用技能
linux·数据库·学习·算法·靶场·ctf·学习网络安全
我命由我123455 小时前
Python 开发 - Python 的 pathlib
java·开发语言·后端·python·学习·java-ee·学习方法
kkkkkkkkkk_Z6 小时前
新手自学嵌入式 | 学习日记:Linux驱动复习之系统移植(U-Boot篇)
linux·运维·学习
Rabitebla6 小时前
【系统性学习笔记】Linux 权限篇(二):文件属性、权限修改与目录权限的底层逻辑
linux·c++·笔记·学习·算法