paradoxfx

【原创】TI C2833x介绍---系统的初始化(8)

0
阅读(2690)

步骤7:选择外部中断源

这个步骤主要是配置GPIO管脚来接收外部中断事件的;比如某个GPIO管脚上接收到一个上升沿的故障信号时,立即触发故障保护中断服务子程序,完成PWM封锁、系统停机、反馈故障信息等动作。中断源可以是XINT1 - XINT7以及XNMI,端口A可以配置XNMI以及XINT1/2/3,端口B可以配置XINT4/5/6/7,通过GPIOXINTnSEL与GPIOXNMISEL寄存器来配置。(复习一下:端口A为GPIO0-GPIO31,端口B为GPIO32-GPIO63,端口C为GPIO64-87)中断源的极性可以由XINTnCR与XNMICR寄存器来配置。需要注意的是,在写入GPIOXINTnSEL与GPIOXNMISEL这两个寄存器所需要的配置之后,需要两个SYSCLKOUT周期的延时才能生效。

八个外部中断信号XINT1 - XINT7以及XNMI可以分别映射到不同的引脚上面,同时有以下几个原则可以作为提示:

1.      XNMI以及XINT1/2/3可以分别配置到GPIO0-31里面的任何一个;

2.      XINT4/5/6/7可以分别配置到GPIO32-63里面的任何一个;

3.      eCAP模块的管脚及它们的中断在需要的时候也可以作为单独的外部中断(当然存在优先级别高低的问题);

4.      XNMI, XINT1与XINT2都具有单独存在运行的16位计数器,可以用来计算不同次中断事件发送之间的时间间隔。这些计数器的值在每次新的中断发生之后被清零,然后重新开始计数。(不然很容易就会计满溢出了)。

讲了半天,还是把配置GPIO的整个过程用个图来表示并总结一下比较形象。清楚了整个流程之后,在使用的时候只要根据需要去看一下数据手册里面寄存器各个位的定义就好了。

图1 GPIO配置示意图