问题
在做一个STM32F1的I2C相关实验时,需要更改IO对应相关引脚序号,如下图所示。
资料上说在drv_gpio.h里寻找对应IO口序号,类似于如下格式。
查看自己的drv_gpio.c文件发现却没有相关代码,原来最新的官方bsp把该代码优化掉了。
解决方法
使用FinSH控制台或串口打印将指定IO口的序号输出,即可得到相关参数,利用GET_PIN(C, 12)宏定义即可得到,FinSH控制台代码如下↓
#include "board.h"
void test_hello(void)
{
rt_kprintf("C12 = %d,C11 = %d\r\n",GET_PIN(C, 12),GET_PIN(C, 11));
}
MSH_CMD_EXPORT(test_hello, say hello to RT - Thread);
输出结果
利用Xshell输出结果如下↓
得到C12,C11对应引脚序号。