2390149_zh-CN

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

2390149_zh-CN

2390149_zh-CN

我能否使用任意一个 GPIO 引脚作为中断输入信号,并使其在边沿检测模式下工作?

你好,

因为 6 个专用 IRQ(0~5) 引脚对我来说不够用,我需要其他 GPIO 引脚作为中断输入信号。所以,我有以下两个问题:

1. 是否可以将任意 GPIO 用作中断信号输入,并使其工作在边沿检测模式下?

2. 如果上述第 1 题的答案是肯定的,那么专用 IRQ 和 GPIO 之间有什么区别?或许响应优先级更高?

提前感谢!


顺祝商祺!

杰森

Re: Could I use any GPIO pin as interrupt input signal which worked at edge detection mode?

您好,

这个问题与LS1021A有关。欢迎任何回复!


顺祝商祺!

杰森

Re: Could I use any GPIO pin as interrupt input signal which worked at edge detection mode?

是的,只要引脚在您的电路板配置中实际被复用/用作 GPIO 输入,LS1021A GPIO 就可以用作中断输入,包括边沿检测模式。

  • GPIO 作为边沿中断输入
    GPIO 块具有中断控制/状态/掩码寄存器:GPIER、GPIMR 和 GPICR;GPICR 配置事件检测,包括边沿触发行为,GPIO 中断逻辑向系统输出合并的 gpio_int 请求。对于每个 GPIO 端口线,EDn 位选择中断是在任何状态变化时产生还是在高到低转换时产生。因此,GPIO 中断输入是受支持的,但请注意,文档中记录的边沿选择与完全独立的上升/下降/双边沿选择器不同:引用的模式是“任何变化”或“高到低”。
  • 专用的IRQ与GPIO中断
    主要区别在于中断路径和粒度:
    • 专用的 IRQ0–IRQ5 引脚是直接连接到中断控制器线路的外部 I/O 信号;它们的中断状态可在相应的 GIC-400 寄存器中找到,并且它们的极性可通过 SCFG_INTPCR 进行可编程。
    • GPIO 中断并非每个引脚的独立 GIC 输入。GPIO 模块检测引脚事件并将其存储在 GPIER 中,通过 GPIO 寄存器进行屏蔽/控制,然后驱动一个合并的 GPIO 中断请求。参考手册还指出,所有 GPIO 中断都经过逻辑或运算,作为 GPIO 中断源。

因此,实际的软件区别在于,专用 IRQ 可以在 GIC 级别作为其自身的中断源进行处理,而 GPIO 中断通常需要 ISR 进入 GPIO 块,读取 GPIER 以确定哪个引脚引起了该事件,然后清除/处理它。

对于延迟最敏感或优先级最高的外部中断,请使用专用 IRQ 引脚;当需要更多输入且可以容忍共享 GPIO 中断处理时,请使用 GPIO 中断。

タグ(1)
評価なし
バージョン履歴
最終更新日:
水曜日
更新者: