|
GPIO之CSL库 使用CSL库的API函数配置DSP显然比逐一配置寄存器方面且容易理解。下面介绍一下如何使用CSL库把DSP的GPIO4配置成中断模式。
第一步:使能GPIO模块
使能之前,首先要解除锁,即向PERLOCK寄存器写入0x0F0A0B00,然后把PERCFG0寄存器中GPIO对应位置1。代码如下:
Bool gpioEn;
CSL_FINST(((CSL_DevRegs*)CSL_DEV_REGS)->PERLOCK,DEV_PERLOCK_LOCKVAL, UNLOCK);
CSL_FINST(((CSL_DevRegs*)CSL_DEV_REGS)->PERCFG0, DEV_PERCFG0_GPIOCTL, ENABLE);
do {
gpioEn = (Bool)CSL_FEXT(((CSL_DevRegs*)CSL_DEV_REGS)->PERSTAT0,
DEV_PERSTAT0_GPIOSTAT);
} while (gpioEn != TRUE);
Bool gpioEn;CSL_FINST(((CSL_DevRegs*)CSL_DEV_REGS)->PERLOCK,DEV_PERLOCK_LOCKVAL, UNLOCK); CSL_FINST(((CSL_DevRegs*)CSL_DEV_REGS)->PERCFG0, DEV_PERCFG0_GPIOCTL, ENABLE);do { gpioEn = (Bool)CSL_FEXT(((CSL_DevRegs*)CSL_DEV_REGS)->PERSTAT0, DEV_PERSTAT0_GPIOSTAT);} while (gpioEn != TRUE);
第二步:初始化GPIO模块
CSL_Status status;
CSL_GpioContext pContext;
status = CSL_gpioInit(&pContext);
CSL_Status status;CSL_GpioContext pContext;status = CSL_gpioInit(&pContext);
第三步:打开GPIO模块
第四步:使能GPIO管脚作为中断源的功能
第五步:配置GPIO-PIN4的属性:方向,中断触发方式
|
|