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.

RTOS/LAUNCHXL-CC1350: I2c Change pinout LAUNCHXL-CC1350

Part Number: LAUNCHXL-CC1350
Other Parts Discussed in Thread: CC1310

Tool/software: TI-RTOS

Hello,

I'm currently facing problems with the I2C,how can i change default i2c pin DIO4 &DIO5 LaunchPADXL to DIO8 & DIO 9,i can read i2c using default pin,below is my example code,any example code i2c changing pin is very appreciate. 

as hardware i already pull out resistor .

extern void *DS1341(void *arg0){


    IOCPinTypeI2c(I2C0_BASE, IOID_9, IOID_8);
    IOCPortConfigureSet(IOID_8, IOC_PORT_MCU_I2C_MSSCL,IOC_CURRENT_2MA | IOC_STRENGTH_AUTO | IOC_IOPULL_UP |
                        IOC_SLEW_DISABLE | IOC_HYST_DISABLE | IOC_NO_EDGE |
                        IOC_INT_DISABLE | IOC_IOMODE_OPEN_DRAIN_NORMAL |
                        IOC_NO_WAKE_UP | IOC_INPUT_ENABLE);

    IOCPortConfigureSet(IOID_9, IOC_PORT_MCU_I2C_MSSDA,IOC_CURRENT_2MA | IOC_STRENGTH_AUTO | IOC_IOPULL_UP |
                        IOC_SLEW_DISABLE | IOC_HYST_DISABLE | IOC_NO_EDGE |
                        IOC_INT_DISABLE | IOC_IOMODE_OPEN_DRAIN_NORMAL |
                        IOC_NO_WAKE_UP | IOC_INPUT_ENABLE);
    /* Call driver init functions */
    I2C_init();
    /* Create I2C for usage */
    I2C_Params_init(&i2cParams);
    i2cParams.bitRate = I2C_400kHz;
    i2c = I2C_open(Board_I2C_TMP, &i2cParams);
    if (i2c == NULL) {
        printf("Error Initializing I2C\n");
    }
    else {
        printf("I2C Initialized!\n");
    }
////    IOCPortConfigureSet(IOID_9, IOC_PORT_MCU_I2C_MSSDA,IOC_INPUT_DISABLE|IOC_SLEW_DISABLE|IOC_HYST_DISABLE|
////                        IOC_INT_DISABLE);
//    IOCPortConfigureSet(IOID_8, IOC_PORT_MCU_I2C_MSSCL,IOC_INPUT_DISABLE|IOC_SLEW_DISABLE|IOC_HYST_DISABLE|
//                            IOC_INT_DISABLE);
//    ui32IOConfig = IOC_CURRENT_2MA | IOC_STRENGTH_AUTO | IOC_IOPULL_UP |
//            IOC_SLEW_DISABLE | IOC_HYST_DISABLE | IOC_NO_EDGE |
//            IOC_INT_DISABLE | IOC_IOMODE_OPEN_DRAIN_NORMAL |




//    WriteTime();
//    set_alarm_1_at_minute(15, 20);
//    Clear_Alarm();
//    Enable_Alarm_1();
    Off_Alarm();
    while(1){

        CPUdelay(100000*50);
        ReadTime();
        printf("Time>>%d :%d :%d: %d\n",rtc.days,rtc.hours,rtc.minutes,rtc.seconds);
    }
//    return (NULL);
}

uint8_t ReadTime(){
    uint8_t WriteSecond[1];
    uint8_t readSecond[8];
    WriteSecond[0] = 0x00;
    i2cTransaction.slaveAddress = DS1341_Addr;
    i2cTransaction.writeBuf = WriteSecond;
    i2cTransaction.writeCount = 1;
    i2cTransaction.readBuf = readSecond;
    i2cTransaction.readCount = 7;
    if (I2C_transfer(i2c, &i2cTransaction)){
        rtc.seconds = BCDToDecimal(readSecond[0]);
        rtc.minutes = BCDToDecimal(readSecond[1]);
        if((readSecond[1]) & (0x01 << 6)){
            rtc.hours = ((readSecond[1] >> 4) & 0x01) * 12 + ((readSecond[1] >> 5) & 0x01) * 12;
        }else{
            rtc.hours = BCDToDecimal(readSecond[2]);
        }
        rtc.days = BCDToDecimal(readSecond[4]);
        rtc.months = BCDToDecimal(readSecond[5] & 0x1F);
        rtc.years = 100 * ((readSecond[5] >> 7) & 0x01) + BCDToDecimal(readSecond[6]);
    }else{
        printf("Can't Read Time\n");
    }
    return (0);
}