GPIO应用开发指南¶
1. 摘要¶
本篇应用指南主要介绍PAN262x GPIO模块开发方法。
本篇应用指南主要包括:
GPIO 模块介绍
Reset 引脚复用为输入端口
C2 端口复用为 I/O 功能
注意:
本应用指南为PAN262x的应用补充文档,不能代替用户手册,具体功能及寄存器的操作等相关事项请以用户手册为准。
2. 功能介绍¶
GPIO 是通用输入输出模块, MCU 可将一个 IO 设为模拟模式,作为 ADC 输入;设为数字输 入/输出,或是外设端口,供特定外设使用。使用端口功能前,需要先把 GPIO 模块时钟控制 功能打开。
3. GPIO 模块¶
3.1. Reset 引脚复用为输入端口¶
Reset 引脚可以复用为输入端口 P3_6。
如果要使用 Reset 引脚配置为通用的 I/O 引脚,过程如下:
调用gpio.c文件中
void GPIO_DisableRst(void)
函数,禁用Reset功能。
如果要使用 Reset 引脚作为复位引脚,过程如下:
调用gpio.c文件中
void GPIO_EnableRst(void)
函数,禁用Reset功能。
注意:
Reset引脚内部默认集成一个上位电阻,外部可以不接上拉电阻,保持浮空,pan262x也可以正常启动。
在复用 Reset 引脚时候的外围电路设计,在上电时要保证该引脚不能为低电平(LowLevel),否则程序无法运行。
3.2. C2 端口复用为 I/O 功能¶
C2CK (P3_2) 与 C2DATA (P3_4) 引脚可以复用为通用的 I/O 引脚。
C2CK (P3_2) 与 C2DATA (P3_4) 引脚配置为通用的 I/O 引脚,过程如下 :
/** Config P3_2 to GPIO pin */
GPIO_Init(GPIO_P32, GPIO_P32_MUX_IO, GPIO_MODE_OUTPUT_PP, GPIO_NOPULL);
/** Config P3_4 to GPIO pin */
GPIO_Init(GPIO_P34, GPIO_P34_MUX_IO, GPIO_MODE_OUTPUT_PP, GPIO_NOPULL);
C2CK (P3_2) 与 C2DATA (P3_4) 引脚配置为C2功能引脚,过程如下:
/** Config P3_2 to C2 clock function */
GPIO_Init(GPIO_P32, GPIO_P32_MUX_C2CK, GPIO_MODE_OUTPUT_OD, GPIO_PULLUP);
/** Config P3_4 to C2 data function */
GPIO_Init(GPIO_P34, GPIO_P34_MUX_C2DATA, GPIO_MODE_OUTPUT_OD, GPIO_PULLUP);
注意:
当把 C2 端口复用为 I/O 功能,通过 C2 在线调试与下载功能就会失效。
在用户调试时,在将C2口配置为通用I/O之前添加一段延时代码(一般2秒以上),方便下次正常下载程序。
4. 参考样例及驱动¶
通过上述介绍,我们可以了解 Reset 引脚、 C2 引脚复用为输入/输出引脚的方法和注意事项。
pan262x-dk开发包同时提供了该模块的应用样例及驱动库,用户可通过打开样例的 工程进一步直观地熟悉该模块以及驱动库的应用,在实际开发中也可以直接参考样例和使用 驱动库来快速实现对该模块的操作。
样例参考:
01_SDK\example_basic\gpio\gpio_in_out
01_SDK\example_basic\gpio\gpio_irq
01_SDK\example_basic\gpio\gpio_lp_wakeup
驱动库参考
01_SDK\driver\inc\gpio.h
01_SDK\driver\src\gpio.c