コード例 #1
0
ファイル: i2c_bitbang.c プロジェクト: mtarek/BeRTOS
static void i2c_bitbang_stop_1(struct I2c *i2c)
{
	if (old_api)
	{
		SDA_LO;
		SCL_HI;
		I2C_HALFBIT_DELAY();
		SDA_HI;
	}
	else
	{
		i2c_sdaLo(I2C_DEV(i2c));
		i2c_sclHi(I2C_DEV(i2c));
		i2c_halfbitDelay(I2C_DEV(i2c));
		i2c_sdaHi(I2C_DEV(i2c));
	}
}
コード例 #2
0
ファイル: i2c_bitbang.c プロジェクト: mtarek/BeRTOS
INLINE bool i2c_bitbang_start_1(struct I2c *i2c)
{
	bool ret;
	/* Clear all error, we restart */
	i2c->errors &= ~(I2C_NO_ACK | I2C_ARB_LOST);

	if (old_api)
	{
		SDA_HI;
		SCL_HI;
		I2C_HALFBIT_DELAY();
		SDA_LO;
		I2C_HALFBIT_DELAY();

		ret = !SDA_IN;
	}
	else
	{
		i2c_sdaHi(I2C_DEV(i2c));
		i2c_sclHi(I2C_DEV(i2c));
		i2c_halfbitDelay(I2C_DEV(i2c));
		i2c_sdaLo(I2C_DEV(i2c));
		i2c_halfbitDelay(I2C_DEV(i2c));

		ret = !i2c_sdaIn(I2C_DEV(i2c));
	}

	return ret;
}
コード例 #3
0
ファイル: i2c_1.c プロジェクト: A-Paul/RIOT
void I2C_1_ISR(void)
{
    irq_handler(I2C_DEV(1));
}
コード例 #4
0
ファイル: i2c_1.c プロジェクト: A-Paul/RIOT
void I2C_0_ISR(void)
{
    irq_handler(I2C_DEV(0));
}