4communications, 1 introduction – Matrix Orbital GLK19264-7T-1U User Manual
Page 19
4
Communications
4.1
Introduction
The commands listed in this chapter describe how to configure data flow on the GLK19264-7T-1U.
4.1.1
I
2
C Communication Summary
The GLK19264-7T-1U is capable of communicating at 100 KHz in I
2
C mode, with 127 units addressable
on a single I
2
C communication line. However, in order to communicate via I
2
C you must first ensure that
pull up resistors, with a nominal value of 1K to 10K, are placed on the SCL and SDA communication lines
coming from pins two and three of the Data / Power Connector respectively. Data responses by the module
are automatically output via RS232, in case the host will be querying the module, it is necessary for the host
to inform the module that its responses are to be output via I
2
C. This can be done by sending command
254 /160 / 0 to turn off auto transmission of data in RS232. This will keep the data in the buffer until the
master clocks a read of the slave. The I
2
C data lines operate at 5V normally or 3.3V for -1U style units. The
GLK19264-7T-1U uses 8-bit addressing, with the 8th or Least Significant Bit (LSB) bit designated as the
read/write bit, a 0 designates a write address and a 1 designates a read address. The default read address of
the display module will be 0x51, whereas the write address is 0x50 by default. This address may be changed
by using cmd 254 / 51 /
is 0). When the I
2
C master wishes to write to the display, the effective address is $50 (0101 0000) , since
the LSB has to be 0 for an I
2
C master write. When the I
2
C master wishes to read the GLK19264-7T-1U, the
effective address is $51 (0101 0001), since the LSB has to be 1 for an I
2
C master read.
If we take a standard Phillips 7 bit address of $45 (100 0101), Matrix Orbital’s GLK19264-7T-1U would
describe this Phillips I
2
C address as $8A (1000 1010). The read address would be $8B (1000 1011).
The unit does not respond to general call address ($00).
When communicating in I
2
C the GLK19264-7T-1U will send an ACK on the 9th clock cycle when
addressed. When writing to the display module, the display will respond with a ACK when the write has
successfully been completed. However if the buffer has been filled, or the module is too busy processing
data it will respond with a NAK. When performing a multiple byte read within one I
2
C transaction, each
byte read from the slave should be followed by an ACK to indicate that the master still needs data, and a
NAK to indicate that the transmission is over.
The GLK19264-7T-1U has some speed limitations, especially when run in I
2
C mode. Here are some
considerations when writing I
2
C code:
* to be able to read the replies of query commands (eg. cmds 54, 55) the following command must be
sent (only needs to be sent once, so this can be done somewhere in init): 254 / 160 / 0 this command puts
the reply data in the I
2
C output buffer instead of the RS232 output buffer. Please note that due to a 16 byte
output buffer, query commands that reply with more than 16 bytes cannot be read (eg cmd Get FileSystem
Directory)
* 3ms delay between the read commands
* 625us delay in between data bytes within a transaction is necessary
* 375us between transactions is necessary
Matrix Orbital
GLK19264-7T-1U
14