embeded/Cortex-M4 Ti

lm3s -> tm4c i2c 마이그레이션... 망할!

구차니 2016. 9. 22. 11:17

master_slave_loopback.c 파일을 보고 따라해보니 이제야 되는 기분


예전 lm3s 에서는 GPIOPinConfigure() 요런거 쓴적이 없는데 tm4c로 오면서 생긴건가?...

마이그레이션 문서에도 크게 언급된게 없어서 넘어갔었는데

이걸 추가해주니 이제야 i2c가 되네 ㅠㅠ


    //

    // The I2C0 peripheral must be enabled before use.

    //

    SysCtlPeripheralEnable(SYSCTL_PERIPH_I2C0);


    //

    // For this example I2C0 is used with PortB[3:2].  The actual port and

    // pins used may be different on your part, consult the data sheet for

    // more information.  GPIO port B needs to be enabled so these pins can

    // be used.

    // TODO: change this to whichever GPIO port you are using.

    //

    SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOB);


    //

    // Configure the pin muxing for I2C0 functions on port B2 and B3.

    // This step is not necessary if your part does not support pin muxing.

    // TODO: change this to select the port/pin you are using.

    //

    GPIOPinConfigure(GPIO_PB2_I2C0SCL);

    GPIOPinConfigure(GPIO_PB3_I2C0SDA);


    //

    // Select the I2C function for these pins.  This function will also

    // configure the GPIO pins pins for I2C operation, setting them to

    // open-drain operation with weak pull-ups.  Consult the data sheet

    // to see which functions are allocated per pin.

    // TODO: change this to select the port/pin you are using.

    //

    GPIOPinTypeI2CSCL(GPIO_PORTB_BASE, GPIO_PIN_2);

    GPIOPinTypeI2C(GPIO_PORTB_BASE, GPIO_PIN_3);