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

相关推荐
果果燕2 小时前
ARM嵌入式学习(一)---ARM基础概念学习
arm开发·学习
码喽7号2 小时前
Vue学习三:element-plus组件和FontAwesome图标组件
前端·vue.js·学习
墨^O^2 小时前
并发控制策略与分布式数据重排:锁机制、Redis 分片与 Spark Shuffle 简析
java·开发语言·c++·学习·spark
艾莉丝努力练剑3 小时前
【Linux信号】Linux进程信号
linux·运维·服务器·学习·操作系统·进程·信号
m0_564876843 小时前
微调学习。
学习
学工科的皮皮志^_^3 小时前
RS485学习
经验分享·笔记·单片机·嵌入式硬件·学习
lisw053 小时前
生成式学习:AI时代的学习新范式!
人工智能·学习·机器学习
C^h3 小时前
RT thread中断管理学习记录
单片机·嵌入式硬件·学习