紅色地方修改再試試看吧!!!
/* SDA = GP1.4, CLK = GP1.5 */
#define I2C_SW_SDA P34
#define I2C_SW_CLK P35
uint32_t u32_I2C_SW_Delay;
/**
* @brief Prepare to start software I2C
* @param u32BusClock I2C Bus Clock (Hz)
* @retval 0 Success
*/
int32_t I2C_SW_Open(uint32_t u32BusClock)
{
if(u32BusClock>500000)
u32_I2C_SW_Delay = 1;
else
u32_I2C_SW_Delay =500000/u32BusClock; /* Compute proper divider for I2C clock */
/* Configure P1.4 and P1.5 as open-drain mode */
GPIO_SetMode(P3, 0x30, GPIO_PMD_OPEN_DRAIN);
I2C_SW_SDA = 1;
I2C_SW_CLK = 1;
return 0;
} |