//***************************************************************************** // //! I2CInit //! //! \param Delay //! \return None // //***************************************************************************** unsigned long I2CInit() { // Enable I2C Peripheral MAP_PRCMPeripheralClkEnable(PRCM_I2CA0, PRCM_RUN_MODE_CLK); MAP_PRCMPeripheralReset(PRCM_I2CA0); // Configure I2C module, 400 Kbps slow mode MAP_I2CMasterInitExpClk(I2CA0_BASE,80000000,false); // MAP_I2CMasterDisable(I2CA0_BASE); I2CMasterGlitchFilterConfigSet(I2CA0_BASE , I2C_MASTER_GLITCH_FILTER_8); return 0; }
void i2cman_init() { //Enable I2C0 which by default uses PortB[3:2] for SDA and SCL respectively SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOB); SysCtlPeripheralEnable(SYSCTL_PERIPH_I2C0); SysCtlPeripheralReset(SYSCTL_PERIPH_I2C0); GPIOPinConfigure(GPIO_PB2_I2C0SCL); GPIOPinConfigure(GPIO_PB3_I2C0SDA); GPIOPinTypeI2CSCL(GPIO_PORTB_BASE, GPIO_PIN_2); GPIOPinTypeI2C(GPIO_PORTB_BASE, GPIO_PIN_3); I2CMasterInitExpClk(I2C_PORT, SysCtlClockGet(), false); I2CMasterGlitchFilterConfigSet(I2C_PORT, I2C_MASTER_GLITCH_FILTER_32); ROM_I2CMasterIntEnable(I2C_PORT); IntEnable(INT_I2C0); }