Jag vet inte vem som gjort porten dock, eller var jag hittade den..
Här är Atmels orginaldokument dock: http://www.atmel.com/Images/AVR318.zip
i min kod har jag en
static oneWireDevice devices[MAX_DEVICES];
och för att hitta enheterna gör jag
while (oneWireSearchBuses(devices, MAX_DEVICES, BUS) != ONEWIRE_SEARCH_COMPLETE);
och sen för att prata med den DS2413 jag har gör jag bara
Kod: Markera allt
int16_t status;
// Reset, presence.
if (!oneWireDetectPresence(BUS))
return -1;
// Match the id found earlier.
oneWireMatchRom(id, BUS);
// Send set
oneWireSendByte(DS2413_WRITE_PIO, BUS);
oneWireSendByte(value, BUS);
oneWireSendByte(~value, BUS);
status = oneWireReceiveByte(BUS);
status |= (oneWireReceiveByte(BUS) << 8);
return status;