赞
踩
本文是根据哔哩哔哩网站上“正点原子[第二期]Linux之ARM(MX6U)裸机篇”视频的学习笔记,在这里会记录下正点原子 I.MX6ULL 开发板的配套视频教程所作的实验和学习笔记内容。本文大量引用了正点原子教学视频和链接中的内容。
ARM中断异常处理的返回_为什么预取中止是减4-CSDN博客
ARM异常中断返回的几种情况_fiq中断的返回地址-CSDN博客
ARM处理器异常返回地址_arm下触发软中断返回地址出错-CSDN博客
嵌入式系统Linux内核开发实战指南(ARM平台)_7.4 ARM处理器的中断(IRQ或FIQ)在线阅读-QQ阅读
本文是 “正点原子[第二期]Linux之ARM(MX6U)裸机篇--第15.4 讲” 的读书笔记。第15讲主要是介绍I.MX6U处理器GPIO中断控制实验。本节将参考正点原子的视频教程第15讲和配套的正点原子开发指南文档进行学习。在第15.4讲视频教程中,正点原子会讲解如何实现自己的 IRQ中断服务函数。
也可以参考ARM手册《ARM ArchitectureReference Manual ARMv7-A and ARMv7-R edition.pdf》手册,在手册里搜索 "sub pc, lr' 就可以找到对 'subs pc, lr, #<const>' 的解释。
subs pc, lr, #4
参考ARMv7的指令手册,在ARMv7指令手册中明确说明在IRQ中断(异常)返回的时候需要使用 'subs pc, lr, #4' 注意这里用的是 'subs' 指令 。 'subs pc, lr, #4' 不仅仅会跟新pc=lr-4 调到被中断指令现场急促执行同时也会讲 spsr 恢复到cpsr,这样被中断现场的CPSR寄存器就恢复了。
关于ARM的PC指针(什么时候PC+8,PC+4,PC-4,PC-8)_pc指针 -8 -4-CSDN博客
也可以百度搜索 "subs pc, lr, #4" 这个关键字,
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。