Испугавшись за МК или устройство таргет, хочу сделать вот так:
Код
#include <iotiny85.h>
#include <intrinsics.h>
#define i2c_port PORTB
#define i2c_ddr DDRB
#define i2c_scl DDB0
#define i2c_sda DDB1
void i2c_init(void)
{
//ставим порт в Tri-state (Hi-Z)
i2c_port=(0<<i2c_scl | 0<<i2c_sda);
__no_operation();
i2c_ddr=(0<<i2c_scl | 0<<i2c_sda);
}
int main()
{
i2c_init();
while(1)
{
//дрыгаю ногами
i2c_ddr=1<<i2c_scl; // Output Low (Sink)
__delay_cycles(50);
i2c_ddr=0<<i2c_scl; // Tri-state (Hi-Z)
__delay_cycles(50);
}
}
#include <intrinsics.h>
#define i2c_port PORTB
#define i2c_ddr DDRB
#define i2c_scl DDB0
#define i2c_sda DDB1
void i2c_init(void)
{
//ставим порт в Tri-state (Hi-Z)
i2c_port=(0<<i2c_scl | 0<<i2c_sda);
__no_operation();
i2c_ddr=(0<<i2c_scl | 0<<i2c_sda);
}
int main()
{
i2c_init();
while(1)
{
//дрыгаю ногами
i2c_ddr=1<<i2c_scl; // Output Low (Sink)
__delay_cycles(50);
i2c_ddr=0<<i2c_scl; // Tri-state (Hi-Z)
__delay_cycles(50);
}
}
В общем-то вопрос: не сожжет ли такой вариант "дрыгания ногами" МК или устройство таргет. Читать буду тоже в режиме Tri-state (Hi-Z).