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.

TIIVA 配置为IO为特殊外设的时的设置步骤


1.使能某外设的时钟【当这个外设不占用引脚的时候,比如定时器时,直接使能这步就OK了】
SysCtlPeripheralEnable(SYSCTL_PERIPH_UART0);
2.使能这个外设所在端口的IO时钟
SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOA);
3.配置IO为特殊功能引脚
GPIOPinConfigure(GPIO_PA0_U0RX);
GPIOPinConfigure(GPIO_PA1_U0TX)
4.设置IO为特殊功能引脚时的IO模式
GPIOPinTypeUART(GPIO_PORTA_BASE, GPIO_PIN_0 | GPIO_PIN_1);

  • 比如串口的初始化,需要占用IO引脚,代码如下:

        SysCtlPeripheralEnable(SYSCTL_PERIPH_UART0);
        SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOA);
        GPIOPinConfigure(GPIO_PA0_U0RX);
        GPIOPinConfigure(GPIO_PA1_U0TX);
        GPIOPinTypeUART(GPIO_PORTA_BASE, GPIO_PIN_0 | GPIO_PIN_1);

    比如I2C的初始化,需要占用IO引脚,代码如下:

        SysCtlPeripheralEnable(SYSCTL_PERIPH_I2C0);
        SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOB);
        GPIOPinConfigure(GPIO_PB2_I2C0SCL);
        GPIOPinConfigure(GPIO_PB3_I2C0SDA);
        GPIOPinTypeI2CSCL(GPIO_PORTB_BASE, GPIO_PIN_2);
        GPIOPinTypeI2C(GPIO_PORTB_BASE, GPIO_PIN_3);
  • 比如定时器,不占用IO的引脚,有第一句就够了

    SysCtlPeripheralEnable(SYSCTL_PERIPH_TIMER0);