コード例 #1
0
void i2c_writebit( unsigned char c )
{
    if ( c > 0 ) {
        I2C_DATA_HI();
    } else {
        I2C_DATA_LO();
    }

    I2C_CLOCK_HI();
    _delay_us(i2cbitdelay);

    I2C_CLOCK_LO();
    _delay_us(i2cbitdelay);

    if ( c > 0 ) {
        I2C_DATA_LO();
    }
    _delay_us(i2cbitdelay);
}
コード例 #2
0
ファイル: i2cbang.c プロジェクト: headrotor/attiny-thermostat
void I2C_WriteBit( unsigned char c )
{
  if ( c > 0 ){
    I2C_DATA_HI();
  }
  else {
    I2C_DATA_LO();
  }

  I2C_CLOCK_HI();
  _delay_ms(1);

  I2C_CLOCK_LO();
  _delay_ms(1);

  if ( c > 0 ) 
    I2C_DATA_LO();

  _delay_ms(1);

}
コード例 #3
0
ファイル: bitbang_i2c.c プロジェクト: kehribar/xmegaE5
void I2C_WriteBit( unsigned char c )
{
	if ( c > 0 )
	{
		I2C_DATA_HI();
	}
	else
	{
		I2C_DATA_LO();
	}

	I2C_CLOCK_HI();
	I2C_DELAY();
	
	I2C_CLOCK_LO();
	I2C_DELAY();

	if ( c > 0 )
	{
		I2C_DATA_LO();
	}
}