Thread 中讨论的其他器件:EK-TM4C1294XL
尊敬的技术支持团队:
在 EK-TM4C1294XL Launchpad 上、我很难用作 GPIO PM1、PG1、PK4和 PK5引脚。
我对 PM0引脚使用正确的代码:
#define VO_SER_GPIO_PORT_base GPIO_PORTM_BASE
#define VO_SER GPIO_PIN_0
#define VO_SRCLK_GPIO_PORT_base GPIO_PORTG_base
#define VO_SRCLK GPIO_PIN_1
#define VO_RCLK_GPIO_PORT_base GPIO_PORTK_base
#define VO_RCLK GPIO_PIN_4
#define VO_OE_GPIO_PORT_base GPIO_PORTK_base
#define VO_OE GPIO_PIN_5
#define VO_SRCLR_GPIO_PORT_base GPIO_PORTM_BASE
#define VO_SRCLR GPIO_PIN_1
/*此处的系统时钟初始化*/
ROM_SysCtlPeripheralEnable (SYSCTL_Periph_GPIOA);
ROM_SysCtlPeripheralEnable (SYSCTL_Periph_GPIOB);
ROM_SysCtlPeripheralEnable (SYSCTL_Periph_GPIOC);
ROM_SysCtlPeripheralEnable (SYSCTL_Periph_GPIOD);
ROM_SysCtlPeripheralEnable (SYSCTL_Periph_GPIOE);
ROM_SysCtlPeripheralEnable (SYSCTL_Periph_GPIOF);
ROM_SysCtlPeripheralEnable (SYSCTL_Periph_GPIOG);
ROM_SysCtlPeripheralEnable (SYSCTL_Periph_GPIOH);
ROM_SysCtlPeripheralEnable (SYSCTL_Periph_GPIOJ);
ROM_SysCtlPeripheralEnable (SYSCTL_Periph_GPIOK);
ROM_SysCtlPeripheralEnable (SYSCTL_Periph_GPIOL);
ROM_SysCtlPeripheralEnable (SYSCTL_Periph_GPIOM);
ROM_SysCtlPeripheralEnable (SYSCTL_Periph_GPION);
ROM_SysCtlPeripheralEnable (SYSCTL_Periph_GPIOP);
ROM_SysCtlPeripheralEnable (SYSCTL_Periph_GPIOQ);
MAP_GPIOPinTypeGPIOOutput (VO_SER_GPIO_PORT_BASE、VO_SER);
MAP_GPIOPinTypeGPIOOutput (VO_SRCLK_GPIO_PORT_BASE、VO_SRCLK);
MAP_GPIOPinTypeGPIOOutput (VO_RCLK_GPIO_PORT_BASE、VO_RCLK);
MAP_GPIOPinTypeGPIOOutput (VO_OE_GPIO_PORT_BASE、VO_OE);
MAP_GPIOPinTypeGPIOOutput (VO_SRCLR_GPIO_PORT_BASE、VO_SRCLR);
MAP_GPIOPinWrite (VO_SER_GPIO_PORT_BASE、VO_SER、1);
MAP_GPIOPinWrite (VO_SRCLK_GPIO_PORT_BASE、VO_SRCLK、1);
MAP_GPIOPinWrite (VO_RCLK_GPIO_PORT_BASE、VO_RCLK、1);
MAP_GPIOPinWrite (VO_OE_GPIO_PORT_BASE、VO_OE、1);
MAP_GPIOPinWrite (VO_SRCLR_GPIO_PORT_BASE、VO_SRCLR、1);
使用该代码时、仅 PM0引脚上对应的数据寄存器位(GPIODATA 寄存器的位0)能够正常工作。
您有什么想法可以帮助我吗?
此致
Sylvain