S3C2440系统通过异常向量表安装异常中断处理程序。即将异常向量表指向异常中断处理程序的入口,实现面向异常中断的跳转,异常向量中断的的入口地址时固定的(0x00-0x1C),系统运行到满足异常中断时,系统将自动跳入相应的异常中断向量表中,而在异常向量表中保存的正是利用跳转指令或LDR指令指向该中断的异常中断处理程序,这就实现了异常中断处理程序的安装。
1).利用跳转指令实现异常中断的安装
将BL指令放置到中断向量表的特定位置,跳转目标地址为中断处理程序的首地址,便可直接实现异常中断的安装。其优点是BL指令可以直接保存地址,缺点是BL的跳转范围只有32MB的地址空间。
2).利用ldr指令实现异常中断的安装
利用ldr直接向程序计数器PC中赋值也可以实现中断处理程序的安装。先要将异常中断处理程序首地址的绝对地址放在临近的一个存储单元中,然后用ldr命令将该内存单元中的地址读取到PC中。其优点是可调用程序的范围不受限制。
异常的进入和退出部分可以参考ARM系列书籍,上面有具体的处理过程,该过程必须掌握。
ARM处理器支持大小端模式,但ADS仅支持小端模式,所以常用的为小端模式。
英语如果很好这部分内容可以看2440用户手册的第2章,具体的内容就是上边部分。这些是以后的基础,有些要求了解下,但大部分应该掌握,但不能花很长时间一般就2天左右。
学习ARM尽量把以前在学校学习的课程复习一下,C 谭浩强版,重点是字符,数组,指针,结构体,位运算,文件操作,宏定义。微机原理。数电 ,模电,后边用到操作系统时把操作系统相关章节看下