DSP相关笔记_3:LaunchXL-F28379D的简单教程系列(三)X-Bar与GPIO中断-上
注:
1)这是本人关于Ti的C2000系列的学习笔记,所用工具有官方的开发软件CCS10版本,帮助文库以及函数库软件controlSUITE。硬件部分LaunchXL-F28379D和逻辑分析仪一台。
2)DSP相关笔记_1:LaunchXL-F28379D的简单教程系列(一)GPIO输出
3)DSP相关笔记_2:LaunchXL-F28379D的简单教程系列(二)GPIO输入
前言:如果要介绍GPIO中断首先需要了解F28379D中的X-bar,这是一个非常强大的总线,提供了连接设备输入的灵活性,输出,以及各种配置中的内部资源。还是那句话结构决定功能,先上结构图,然后一起分析理解。
GPIO结构图:
GPIO通过一根线连接X-BAR。注:在图中GPyDAT®寄存器旁边旁边。
X-BAR结构图:
从图上你会发现X-Bar把GPIO和CPU_PIE,CLA,eCAP,ADC,ePWM等等相连接。官方的话就是:在这个设备上,输入X-BAR被用来将信号从GPIO路由到许多不同的IP块,例如ADC(s)、eCAP(s)、ePWM(s)和外部中断。因为我们主要是使用GPIO中断,也就是使用PIE,因此我们会通过INPUT14、INPUT13、INPUT6、INPUT5、INPUT4连接PIE的XINTx(1,2,3,4,5)。
其中的对应关系就是:
INPUT14 -> XINT5
INPUT13 -> XINT4
INPUT6 -> XINT3
INPUT5 -> XINT2
INPUT4 -> XINT1
怎么用或者怎么配置了?当然还是寄存器(所有操作就是端口寄存器操作),这里需要用到一个名为InputXbarRegs的寄存器,其中它包含了每个input的选这寄存器。
如图所示:
input1的选择寄存器
当我们把GPIO通过X-BAR连接PIE完成后,需要配置GPIO触发中断的方式,及对XINT进行配置,这里我无法很科学的给你们解释这个XINT的意义,但要清楚的就是GPIO本身无法产生中断信号,需要借助XINT进行中断信号的产生,然后传递给PIE。
例如我们使用XINT1就需要对XINT1CR进行配置,如图:
这里需要进行使能和中断的方式。中断的触发方式一般为上升沿和下降沿触发,看自己需要选择。
小结一下:主要是说了一下X-Bar的功能,可以把GPIO和其他设备相连,因为我们要与PIE相连接,讲INPUT选择寄存器中选择所需连接的GPIO即可,而要除非中断需要在XINT这个寄存器相连接。下一篇我会将我对PIE的整个流程给大家解释并且把代码一并分享。X-Bar相对比较简单,但是不能缺少。
参考资料:TMS320F2837XD Dual-Core Microcontollers Technical Reference Manual