本文主要是介绍小猫爪:i.MX RT1050学习笔记28-RT1170之消失的GPIO中断,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
i.MX RT1050学习笔记28-RT1170之消失的GPIO中断
- 1 问题
- 2 解答
- END
1 问题
接触RT1170的时候,会发现一个诡异的现象,发现在M7核中找不到GPIO7~GPIO12的中断向量号,这是咋回事。
2 解答
问:
-
想咨询下RT1170管脚GPIO_EMC_B1_33(IOMUXC_GPIO_EMC_B1_33_GPIO8_IO01),GPIO_SD_B1_04(IOMUXC_GPIO_SD_B1_04_GPIO10_IO07)这两个管脚可以作为输入中断吗? 从手册和sdk看貌似RT1170不支持GPIO8和GPIO10 IO中断,只支持截图中的那些,是这样吗,谢谢 ?
-
在《iMXRT1170_RM_Rev_H》文档 Table 4-2. CM7 domain interrupt summary中找到
但在<<i.MXRT1170_Pin_MUX_v1.18>>文档中找不到GPIO5具体对应哪个管脚?方便时能否帮忙看下? -
GPIO_MUX5属于M4还是M7,还是两个核都可以用?那具体中断差异在哪里?
答:
- 是这样的,因为RT1170有两个核,M7和M4,但是因为这两个核使用GPIO会有一些差异(主要体现在外部中断上),所以在名字上就会有一些差异,对于GPIO5来说,其实就是GPIO_MUX5。
- 对于M7来说,带有mux的GPIO,GPIO13都有自己专属的中断号,但是对于不带MUX的GPIO,即GPIO7~GPIO12,它们共用一个中断号99。而对M4来说,跟M7差不多,GPIO7到GPIO11共用中断号99,其他GPIO除了GPIO6都有自己专属的中断号,可参考RM手册。
- 造成GPIO差异是因为这些GPIO外设的所处的电源域不同导致的,以至于这些IO与两个核之间的连接是不一样的,GPIO1 ~GPIO6处在SOC电源域中,即和M7相连,GPIO7 ~GPIO12在LPSR电源域中,即和M4相连,GPIO13在SNVS电源域中。当M7访问M4上的GPIO时,速度会稍稍的慢一点。
- 强烈建议对于M7核来说,尽量将其复用成带MUX的GPIO。因为除了SNVS域的几个IO,其他引脚既可以复用成M7的GPIO1 ~GPIO6,也可以复用成M4的GPIO7 ~ GPIO12。这样速度不仅快,还有独立的中断号。
END
这篇关于小猫爪:i.MX RT1050学习笔记28-RT1170之消失的GPIO中断的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!