TC63 AT Command Set

19.7 AT^SSPI

s

Message syntax:

Each Message consists of a Start and Stop character, a Message-ID, further protocol data and user data. The notation of all elements is explained below:

Notation of Message-ID:

All ASCII characters between 0x00...0x7F. It is recommended to use only the characters 0...9, A...Z, a...z.

Length of the Message-ID: only one character

Notation of protocol data (except Message-ID) and user data:

Hex (0...9, a...f, A...F)

Without "0x" (0x01 01)

Each hex value consists of 2 characters (1 01)

Without delimiters such as comma, semicolon, space etc. (0xAE 0x01 0xA5 AE01A5)

In a Transfer Message, the number of the I²C Slave Address and all subsequent written user data shall be even. If it is odd, a protocol error will be reported. (Keep in mind that the number of all characters transmitted between Start "<" and Stop ">" of the Transfer Frame shall always be odd because the ID is one character only.)

Length of I²C Slave Address and user data: 2048 bytes

The first element of each message is the Start character ("<" for Transfer, "{" for the Response). Accordingly, the last character of a message is the Stop character (">" for Transfer, "}" for the Response).

The second element of each message is the Message ID (1 character). The Message ID serves the user to dis- tinguish between different messages. It is only relevant on protocol level (between AT interface and I²C device driver), i.e. it is not sent to the I²C slave device.

Each transfer to the device is followed by a Response Message sent from the driver to the AT interface. The response includes the Message ID and either OK ("+") or error characters ("-" or "!"). A successful response to a Read Message contains the OK character and the read data. If an error occurs on the I²C bus, the response consists of an error character followed by a 16 bit code specifying the faulty byte.

After each Transfer Message, wait for the Response Message before sending the next Transfer Message.

All characters entered outside a valid message (i.e. not input between Start character "<" and Stop character ">") are ignored.

19.7.2.1 Structure of Messages on the I²C Bus

Table 19.4: Structure of Transfer and Response Messages on the I²C bus

Frame

Format

Write Transfer Message

< ID SlaveAddress Data >

 

Maximum length: 2048 bytes for I²C Slave Address

 

and written data. LSB of I²C Slave Address = "0".

Read Transfer Message

< ID SlaveAddress ReadLength >

 

Read Length 2048 bytes. LSB I²C of Slave Address

 

= "1".

Response Message

 

Write OK

{ID + }

Read of x bytes OK

{ID + Data }

NAK for xth byte if Read or Write

{ID - xxxx }

Protocol error in xth byte

{ID ! xxxx }

On the I²C bus, read and write data are handled in two separate frames transmitted one after the other. This is because the I²C bus has only two bus lines, I2CDAT for the serial data and I2CCLK for the serial clock. Write data are packed into a Transfer Frame. Read data are packed into a Response Frame. The Transfer Frame con- tains a Receive or Transmit Request (R/W Request) for the I²C master.

TC63_ATC_V00.490

Page 454 of 501

5/24/05

Confidential / Draft - Do not copy

 

 

Page 454
Image 454
Siemens TC63 manual Structure of Messages on the I²C Bus, Message syntax