Jag har spenderat den del av min jul till att implementera ett C#-ramverk för Dallas/Maxim's TMEX API. Ja, jag vet att de har ett liknande bibliotek, men den kräver Java och deras "Pure C#"-bibiliotek har varit i Alpha stadiet sedan 2004! - jag har tröttnat vänta på att de ska tillhandahålla något användbart.
Tyvärr är deras dokumentation inte av den bästa kvaliteten så det har tagit längre än jag först hade hoppats på. Hursomhelst har jag nu ett grundläggande ramverk att stå på så det börjar bli dags att implementera stöd för olika sensorer.
Dock så har jag en fråga som jag ännu inte fått ett svar på, nämligen denna:
Edit: Kom på att man måste registrera sig för att läsa, klipper in frågan här istället:
Är det någon här som kan svara på den?In the documentation for TMTouchBit() (http://files.dalsemi.com/auto_id/softde ... i767i.html) the following return values are stated:
0,1 => bit returned from 1-Wire network while sending bit
0x01 => 1-wire bus is shorted
<0 => TMEX Hardware Specific Error Return Code
What I don't understand is how are we supposed to differentiate between a shorted network and an actual return value of 1, the same as 0x01?
The same goes for TMTouchByte(), see below. 0xFF fits in a byte, so how are we to determine if we've got the value 0xFF back or a shorted network?
>=0 => byte returned from 1-Wire network while sending byte
0xFF => 1-wire bus is shorted.
<0 => TMEX Hardware Specific Error Return Code