Tänkte höra om det är någon här på forumet som har erfarenhet av 1-wire bussen. Håller på att försöka få igång en ibutton(www.ibutton.com). Där jag vill initiera kretsen, skicka ett ROM kommando och läsa av det unika serienummret. Har använt mig av en Atmel at90s2313 och sedan är ibutton kretsen kopplad direkt mot UART:en. Har följt atmels blad för 1-wire stöd: http://www.atmel.com/dyn/resources/prod ... oc2579.pdf för signalering och transistor koppling.
En lite förenklad beskrivning över vad jag försöker göra i mitt program:
1. Uart initieras i 9600 baud.
2. UDR = 0xf0, 0xf0 skickas på uarten.
3. Får någon typ av svar från ibutton kretsen i UART avbrottet , 0xe0.
4. Byter till 115200 baud
5. UDR = 0xff (2x) för att representera kommandot 0x33(ReadROM)
6. UDR = 0x00 (2x) för att representera kommandot 0x33(ReadROM)
7. UDR = 0xff (2x) för att representera kommandot 0x33(ReadROM)
8. UDR = 0x00(2x) för att representera kommandot 0x33(ReadROM)
9. UDR = 0xff, skickar det 8x gånger för att sedan kunna läsa av "family" koden i avbrotts rutinen.
Problemet är att inget vettigt kommer tillbaka från ibutton kretsen. Möjligt att jag har missuppfattat hur bussen fungerar eller så har jag kodat fel. Är det någon av er som har fått igång någon enhet över 1-wire bussen och har någon C kod att dela med er av ? Alla andra tips som kan vara av intresse mottages gladligen
