|
如何配置Stellaris系列处理的端口复用功能
[复制链接]
大多数Stellaris®系列微控制器提供了一个以上的布局和外设模块的信号引脚。GPIO信号引脚的复用功能也为系统设计提供了多种可能。本应用笔记提供引脚实现多路复用的概述,并举例说明了系统设计师如何定义了引脚配置和复用功能的使用。
简介
Stellaris®系列微控制器对多种外设提供了引脚的复用功能。这些微处理器可以将引脚配置成通用GPIO口也可以配置成复用功能,这样,能为不同的系统设计自定义最好的引脚使用方案。其余的引脚,例如VDD,GND,晶振输入输出引脚或是USB等功能引脚,这些引用只有各自的独占功能及固定引脚位置。
本应用笔记提供实现引脚多路复用的概述,举例说明了设计师在使用不同的Stellaris®微控制器该如何定义了引脚配置和引脚复用功能。
引脚复用概述
多数GPIO引脚在配置前处于复位状态,以下引脚处在各自的默认状态:
- JTAG/SWD引脚在上电时默认配置为debugger模式;
- UART0 Rx/Tx 引脚在Bootloader时可以操作ROM;
- SSI0引脚在Bootloader时可以操作ROM;
- I2C引脚在Bootloader时可以操作ROM;
设计师可以通过配置GPIO Port Control(GPIOPCTLx)寄存器来选择多达11个引脚复用功能的一个。配置引脚及第二功能如下图所示(图参考附件1)。
通过以下4步配置引脚第二功能:
- 调用SysCtlPeripheralEnable()使能引脚的时钟;
- 调用SysCtlPeripheralEnable()使能外设时钟;
- 调用GPIOPinConfigure()来配置第二功能;
- 调用GPIOPinTypexxx()来配置引脚的复用功能的属性配置。
引脚分配
当对引脚进行再分配时,建议首先对系统需要做一个列表,而且我们必须考虑以下三个重要因素:
- 每个引脚可以重新配置的可能位置。有些引脚功能只能配置为固定的一个引脚,而有些可以配置给很多引脚;
- 有些引脚功能最好分配给相同的GPIO端口,这样也方便数据写入。
- 一些具有相似功能的引脚具有可替代性。例如,如果需要4个CCP功能,我们可以选择CCPx中任何的一个或几个。
在开始重分配引脚时,要先分配功能引脚只有一个的,然后,是那些有两个的,三个的……。要充分考试上面提到的三个重要因素。在分配功能对应引脚后,再开始编程。
|
|