|
比如ADC1 ,其中有引脚名字叫 GPIO_AD_B1_11, GPIO_AD_B0_12等等, 网络接口GPIO_B1_07。。。。
第一眼看上去,感觉就是这个引脚名字怎么这么长?这个引脚从名字上就可以看出其功能吗?后面得知其实并没有, 因为一个引脚多半是有复用的。
不知道这是传统还是咋的, 看着特别难受,怎么不直接将IO口分组,比如PAx,PBx。。。。
看下面代码:‘
void BOARD_InitPins(void) {
CLOCK_EnableClock(kCLOCK_Iomuxc); /* iomuxc clock (iomuxc_clk_enable): 0x03u */
IOMUXC_SetPinMux(
IOMUXC_GPIO_AD_B0_02_GPIO1_IO02, /* GPIO_AD_B0_02 is configured as GPIO1_IO02 */
0U); /* Software Input On Field: Input Path is determined by functionality */
IOMUXC_SetPinMux(
IOMUXC_GPIO_AD_B0_12_LPUART1_TX, /* GPIO_AD_B0_12 is configured as LPUART1_TX */
0U); /* Software Input On Field: Input Path is determined by functionality */
IOMUXC_SetPinMux(
IOMUXC_GPIO_AD_B0_13_LPUART1_RX, /* GPIO_AD_B0_13 is configured as LPUART1_RX */
0U); /* Software Input On Field: Input Path is determined by functionality */
IOMUXC_SetPinMux(
IOMUXC_GPIO_B0_00_LCD_CLK, /* GPIO_B0_00 is configured as LCD_CLK */
0U); /* Software Input On Field: Input Path is determined by functionality */
IOMUXC_SetPinMux(
IOMUXC_GPIO_B0_01_LCD_ENABLE, /* GPIO_B0_01 is configured as LCD_ENABLE */
0U); /* Software Input On Field: Input Path is determined by functionality */
IOMUXC_SetPinMux(
IOMUXC_GPIO_B0_02_LCD_HSYNC, /* GPIO_B0_02 is configured as LCD_HSYNC */
0U); /* Software Input On Field: Input Path is determined by functionality */
IOMUXC_SetPinMux(
IOMUXC_GPIO_B0_03_LCD_VSYNC, /* GPIO_B0_03 is configured as LCD_VSYNC */
0U);
只是想把 GPIO_AD_B0_02 配置成 GPIO1_IO02 // GPIO_AD_B0_02 is configured as GPIO1_IO02
GPIO_AD_B0_02 配置成 GPIO1_IO02只是这个引脚的功能之一,还可以配置成很多其他功能 。那这样命名是不是会造成疑惑,为什么这里加个AD, B0_B2又是什么意思了?
如果命名简短一点,代码写起来看起来是不是要轻松一点?
之前没用过飞思卡尔的芯片,不知道其他的飞思卡尔芯片是不是也是这种命名方式。
才疏学浅,请各位不吝赐教[s:130] |
|