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检查

相关推荐
每天题库3 小时前
危险货物道路运输从业资格证题库刷题重点与错题梳理
学习·安全·考试·题库·考证
m4Rk_3 小时前
【论文阅读】Agent 记忆机制(86):Skill-Pro——用 Non-Parametric PPO 将交互经验演化为可复用技能
论文阅读·人工智能·学习·开源·github
AOI小白新手上路3 小时前
从 Keil 调试视角看 51 指针,到 Cortex-M 内存映射访问寄存器 · 学习笔记
笔记·学习
Joe_Wang54 小时前
【从0到1学习JVM · 15】对象在堆里来回倒腾,究竟怎样才会进老年代?
java·jvm·学习·垃圾回收
软件开发技术深度爱好者5 小时前
中学生学习工具:多学科自学启导者(轻量版)实现
学习·ai·技术实践
Joe_Wang56 小时前
【从0到1学习JVM · 13】点进JDK源码只有一个分号?搞懂本地方法栈与JNI机制
java·jvm·学习·本地方法栈
~光~~6 小时前
【嵌入式Linux学习】GFP_NOIO / GFP_NOFS(Linux 内核 gfp 分配标志)
linux·运维·学习
坤坤子吖6 小时前
ELF加载、动态链接、GOT与PLT
linux·笔记·学习
71-38 小时前
MySQL密码重置
数据库·笔记·学习·mysql
我命由我123458 小时前
Photoshop - Photoshop 快速共享作品
学习·ui·职场和发展·求职招聘·职场发展·学习方法·photoshop