|
Listing 4: ow_read_byte () and ow_write_byte()
|
int ow_read_byte(void) {
int rval = 0, bit;
for (bit = 0; bit < 8; bit++)
if (ow_read_bit(1))
rval = 0x80 | (rval >> 1);
else
rval = (rval >> 1);
}
void ow_write_byte(int data) {
int bit;
for (bit = 0; bit < 8; bit++) {
ow_read_bit(data & 1);
data >>= 1;
}
return rval
}
|
|
|
|
|