Overview Of I2C_Boot Function - Texas Instruments Concerto F28M35 Series Technical Reference Manual

Table of Contents

Advertisement

C-Boot ROM Description
I2C_Boot
Set CopyWord function
pointer to
I2C_CopyWord
Enable SDAA and
SCLA pins
Enable pullups on
SDAA and SCLA
Enable I2C-A clock
Set slave address 0x50
I2C prescaler I2CPSC = or 0
100-kHz bit rate
Enable TX/RX FIFOs to
receive 2 bytes.
Place I2C in master
transmitter mode
Set EEPROM address
pointer to 0x0000
The bit-period prescalers (I2CCLKH and I2CCLKL) are configured by the bootloader to run the I2C at a 50
percent duty cycle at 100-kHz bit rate (standard I2C mode) when the system clock is 10 MHz. These
registers can be modified after receiving the first few bytes from the EEPROM. This allows the
communication to be increased up to a 400-kHz bit rate (fast I2C mode) during the remaining data reads.
Arbitration, bus busy, and slave signals are not checked. Therefore, no other master is allowed to control
the bus during this initialization phase. If the application requires another master during I2C boot mode,
that master must be configured to hold off sending any I2C messages until the application software
signals that it is past the bootloader portion of initialization.
The non-acknowledgment bit is checked only during the first message sent to initialize the EEPROM base
address. This is to make sure that an EEPROM is present at address 0x50 before continuing. If an
EEPROM is not present, code will The non-acknowledgment bit is not checked during the address phase
of the data read messages (I2C_Get Word). If a non acknowledgment is received during the data read
messages, the I2C bus will hang.
608
ROM Code and Peripheral Booting
Figure 6-25. Overview of I2C_Boot Function
NACK
received
Read KeyValue
KeyValue
(0x08AA)
Read I2CPSC value
Read I2CCLKH value
Read 12CCLKL value
Read and discard 5
reserved words
Read EntryPoint
address
Call CopyData
Return
EntryPoint
Table 7-3
shows the 8-bit data stream used by the I2C.
Copyright © 2012–2019, Texas Instruments Incorporated
Yes
?
No
Valid
No
?
Yes
Bring I2C-A out of Reset
SPRUH22I – April 2012 – Revised November 2019
www.ti.com
Jump to Flash
Jump to Flash
Put 12c-A in Reset
Set I2CPSC value
Set I2CCLKH value
Set I2CCLKL value
Submit Documentation Feedback

Advertisement

Table of Contents
loading

Table of Contents