DSP28335 GPIO模块分为三类IO口:PORTA(0-31),PORTB(32-63),PORTC(64-87)
对GPIO模块的设置主要通过三类寄存器来完成,分别是:控制寄存器、数据寄存器、中断寄存器。
1、控制寄存器
GPxCTRL;// GPIO x Control Register (GPIO0 to 31)
//设置采样窗周期T=2*GPXCTRL*Tsysclk;
GPxQSEL1;// GPIO x Qualifier Select 1 Register (GPIO0 to 15)(32-47)
GPxQSEL2;// GPIO x Qualifier Select 2 Register (GPIO16 to 31)(48-63)
//每两位控制一个引脚,确定是3周期采样还是6周期采样或者不用采样
GPxMUX1;// GPIO x Mux 1 Register (GPIO0 to 15)(32-47)(64-79)
GPxMUX2;// GPIO x Mux 2 Register (GPIO16 to 31)(48-63)(80-95)
//配置各个引脚的功能,0:I/O功能,1:外设功能。
GPxDIR;// GPIO x Direction Register (GPIO0 to 31)(32-63)(64-95)
//配置每个引脚是输入还是输出,0:数字量输入;1:数字量输出。
GPxPUD;// GPIO x Pull Up Disable Register (GPIO0 to 31)(32-63)(64-95)
//使能或禁止jie口的内部上拉
2、数据寄存器
GPxDAT;// GPIO Data Register (GPIO0 to 31)(32-63)(64-95)
GPxSET;// GPIO Data Set Register (GPIO0 to 31)(32-63)(64-95)
GPxCLEAR;// GPIO Data Clear Register (GPIO0 to 31)(32-63)(64-95)
GPxTOGGLE;// GPIO Data Toggle Register (GPIO0 to 31)(32-63)(64-95)
3、中断寄存器
GPIOXINT1SEL; // XINT1 GPIO Input Selection
GPIOXINT2SEL; // XINT2 GPIO Input Selection
GPIOXNMISEL;// XNMI_Xint13 GPIO Input Selection
GPIOXINT3SEL; // XINT3 GPIO Input Selection
GPIOXINT4SEL; // XINT4 GPIO Input Selection
GPIOXINT5SEL; // XINT5 GPIO Input Selection
GPIOXINT6SEL; // XINT6 GPIO Input Selection
GPIOXINT7SEL; // XINT7 GPIO Input Selection
GPIOLPMSEL;// Low power modes GP I/O input select
可以对GPIO0-63进行外部中断设置。