Benutzer:Siro/i2cprotokoll: Unterschied zwischen den Versionen
Siro (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
Siro (Diskussion | Beiträge) KKeine Bearbeitungszusammenfassung |
||
Zeile 64: | Zeile 64: | ||
SEND DATA<br> | SEND DATA<br> | ||
sends data to current endpoint (default: 0)<br> | sends data to current endpoint (default: 0)<br> | ||
<b> | <b>0x06</b><br> | ||
GET DATA<br> | GET DATA<br> | ||
get data to current endpoint (default: 0)<br> | get data to current endpoint (default: 0)<br> |
Version vom 28. Januar 2010, 21:51 Uhr
I2C Protokoll
Version 0.1
DEFINITIONS
layer0 | Hardwareebene (i2c) |
layer1 | Packetebene |
endpoint | externe Hardware (nicht näher definiert) |
Vorderungen
Packet
Header | Data |
1 Byte | 1-8 Byte |
Header:
Bit 7 | Bit 6 | Bit 5 | Bit 4 | Bit 3 - 0 |
reserved | reserved | Command/!Data | Parity | Packetsize |
Note: Parity can be EVEN, ODD, XOR, NONE, Parity does include packetsize-Bits and all DATA
Note: Command/!DATA marks this packet as COMMAND packet or as DATA packet
COMMAND PACKET
COMMAND PACKET: size >= 1
1. byte: COMMAND
2. - 8. byte:DATA (optional)
handled by layer1
DATA PACKET
handled by userprogram
COMMANDS
0x00
NOP
0x01
GET DEVICE INFO
returns information about the device
max supported protocol version
endpoint count
...
0x02
GET ENDPOINT INFO
2.byte: endpoint
returns information about the endpoint
must be less then max. device endpoints
0x03
SET ENDPOINT
2.byte: endpoint
must be less then max. device endpoints
0x04
GET CURRENT ENDPOINT
return active endpoint (default: 0)
0x05
SEND DATA
sends data to current endpoint (default: 0)
0x06
GET DATA
get data to current endpoint (default: 0)