• 嵌入式学习笔记(33)S5PV210的第二阶段处理过程


    (1)第一个过程,怎么找到具体是哪个中断:S5PV210中因为支持的中断源很多,所以直接设计了4个中断寄存器,每个32位,每位对应一个中断源。(理论上210最多可以支持128个中断源,实际支持不足128个,有些位是空的);210没有子中断寄存器,每个中断源都是并列的。当中断发生时,在irq_handler中依次去查询4个中断源寄存器,看哪一个的哪一位被置1,则这个位对应的寄存器就发生中断,即找到了中断编号。

    (2)第二个问题,怎么找到对应的isr的问题:210中支持的中断源多了很多,如果还是用2440那一套来寻找isr地址就太慢了,太影响实时性了。于是210开拓了一种全新的寻找isr的机制。210提供了很多寄存器来解决每个中断源对应isr的寻找问题,具体寻找过程和建立过程见下节,实现的效果是当发生相应中断时,硬件会自动将相应isr推入一定的寄存器中,我们软件只要去这个寄存器中执行函数就行了。

    第一个阶段都相同,第二个阶段各不同

    (1)第一极端(异常向量表阶段)2440和210几乎是完全相同的。实际上几乎所有的CPU在第一阶段都是相同的。

    (2)第二阶段就彼此不同了。各个SoC更具自己对实时性的要求,和支持中断源的多少,各自发明了各自处理中断,找到中断编号,进一步找到对应isr地址的方式。

      嵌入式物联网的学习之路非常漫长,不少人因为学习路线不对或者学习内容不够专业而错失高薪offer。不过别担心,我为大家整理了一份150多G的学习资源,基本上涵盖了嵌入式物联网学习的所有内容。点击这里

  • 相关阅读:
    1.Vue—简介、实例与容器、MVVM模型
    Linux关于gittee的远端仓库的连接和git三板斧
    Android 中字符串空格占位
    计算机毕设(附源码)JAVA-SSM基于疫情防控的物资管理与发放系统
    进程死锁的处理策略之预防死锁,避免死锁以及死锁的检测和解除
    如何评价一门编程语言的难易程度?
    SpringBoot2.4框架
    以太网的概念
    MySQL学习(六)
    SpringBoot-自定义转换器
  • 原文地址:https://blog.csdn.net/m0_70888041/article/details/132871074