请问GPIOPinType和GPIOPinConfig这两个函数分别的作用是什么呢?
GPIOPinConfig我认为是在配置引脚相关的外设。
PinType是在做什么呢,是在配置一种外设的典型使用方式吗?
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
请问GPIOPinType和GPIOPinConfig这两个函数分别的作用是什么呢?
GPIOPinConfig我认为是在配置引脚相关的外设。
PinType是在做什么呢,是在配置一种外设的典型使用方式吗?
两者的用法如下所示:
ROM_GPIOPinConfigure(GPIO_PA0_U0RX);
ROM_GPIOPinTypeUART(GPIO_PORTA_BASE, GPIO_PIN_0 | GPIO_PIN_1);
ROM_GPIOPinTypeGPIOOutput(GPIO_PORTF_BASE, GPIO_PIN_2);
ROM_GPIOPinConfigure我认为操作的不是gpio的寄存器,操作的是对应的外设功能的寄存器。
ROM_GPIOPinTypeGPIOOutput、ROM_GPIOPinTypeUART这种操作的是gpio的寄存器,配置IO的方向、电流、模式等。
对应的函数原型可以在库中的gpio.c中可以找到。
我们其实记住常见的用法就好了,配置为特殊功能,非普通IO的话,用下面的配置
ROM_GPIOPinConfigure(GPIO_PA0_U0RX);
ROM_GPIOPinTypeUART(GPIO_PORTA_BASE, GPIO_PIN_0 | GPIO_PIN_1);
配置为普通IO的话,用这个足够了:
ROM_GPIOPinTypeGPIOOutput(GPIO_PORTF_BASE, GPIO_PIN_2);
配置为对应的方式即可。
不同的库函数,操作的寄存器不一样,有时候会有重复的地方,容易造成疑惑。