Difference between revisions of "DcAN I/O Interface"

From eMDeeWiki
Jump to navigationJump to search
Line 21: Line 21:
 
|-
 
|-
 
! width="100" bgcolor="#CCCCCC" |Byte Offset
 
! width="100" bgcolor="#CCCCCC" |Byte Offset
! width="280" bgcolor="#CCCCCC" |Element
+
! width="220" bgcolor="#CCCCCC" |Element
 +
! width="320" bgcolor="#CCCCCC" |Notes
  
 
|-
 
|-
 
! bgcolor="#CCCCCC" |0
 
! bgcolor="#CCCCCC" |0
 
| bgcolor="#FFBBBB" |0x301
 
| bgcolor="#FFBBBB" |0x301
 +
| bgcolor="#CCCCCC" |
  
 
|-
 
|-
 
! bgcolor="#CCCCCC" |2
 
! bgcolor="#CCCCCC" |2
 
| bgcolor="#FFBBBB" |Request ID
 
| bgcolor="#FFBBBB" |Request ID
 +
| bgcolor="#CCCCCC" |Arbitrary value that will be sent back in the response
  
 
|-
 
|-
 
! bgcolor="#CCCCCC" |4
 
! bgcolor="#CCCCCC" |4
 
| bgcolor="#FFBBBB" |I2C Bus ID
 
| bgcolor="#FFBBBB" |I2C Bus ID
 +
| bgcolor="#CCCCCC" |0=I2C Bus 'A'<br>1=I2C Bus 'B'
  
 
|-
 
|-
 
! bgcolor="#CCCCCC" |6
 
! bgcolor="#CCCCCC" |6
 
| bgcolor="#FFBBBB" |# Bytes to Read
 
| bgcolor="#FFBBBB" |# Bytes to Read
 +
| bgcolor="#CCCCCC" |
  
 
|-
 
|-
 
! bgcolor="#CCCCCC" |8
 
! bgcolor="#CCCCCC" |8
 
| bgcolor="#FFBBBB" |I2C Address
 
| bgcolor="#FFBBBB" |I2C Address
 +
| bgcolor="#CCCCCC" |
  
 
|-
 
|-
 
! bgcolor="#CCCCCC" |10
 
! bgcolor="#CCCCCC" |10
| bgcolor="#FFBBBB" |Read Mode:<br>0 = One-time read<br>1 = Periodic<br>2 = On Change + Periodic
+
| bgcolor="#FFBBBB" |Read Mode
 +
| bgcolor="#CCCCCC" |0=One-time read<br>1=Periodic<br>2=On Change + Periodic
  
 
|-
 
|-
 
! bgcolor="#CCCCCC" |12
 
! bgcolor="#CCCCCC" |12
| bgcolor="#FFBBBB" |Periodic Read Frequency (milliseconds)
+
| bgcolor="#FFBBBB" |Periodic Read Frequency
 +
| bgcolor="#CCCCCC" |millseconds
  
 
|}
 
|}

Revision as of 09:46, 26 March 2019

Data can be passed between a client and a DcAN I/O device through the DcAN I/O Interface. Packets are sent through a TCP/IP port. The following rules apply:

  • The I/O device shall listen for TCP/IP connections on IP port number 33001
  • A maximum of 3 clients can simultaneously connect to the DcAN I/O Interface port
  • All elements of each packet shall be in network byte order

The following sections define the packets that are valid for the DcAN I/O Interface


I2C Read Request

  • Each element of the I2C Read Request Packet is a 16 bit unsigned integer
  • The first 16 bit word of the packet represents the unique identifier and must be equal to 0x301
  • An I2C Read Response Packet with the requested data will be sent back to the client in response to each I2C Read Request


Byte Offset Element Notes
0 0x301
2 Request ID Arbitrary value that will be sent back in the response
4 I2C Bus ID 0=I2C Bus 'A'
1=I2C Bus 'B'
6 # Bytes to Read
8 I2C Address
10 Read Mode 0=One-time read
1=Periodic
2=On Change + Periodic
12 Periodic Read Frequency millseconds

I2C Read Response

  • Each element of the I2C Read Response Packet is a 16 bit unsigned integer
  • The first 16 bit word of the packet represents the unique identifier and must be equal to 0x302
  • An I2C Read Response Packet is sent to the client in response to an I2C Read Request


Byte Offset Element
0 0x302
2 Request ID
4 I2C Bus ID
6 # Bytes Returned
8 Data Returned from I2C