| поискавой системы для электроныых деталей |
|
ST72344 датащи(PDF) 130 Page - STMicroelectronics |
|
|
|||||||||||||||||||||||||||||
ST72344 датащи(HTML) 130 Page - STMicroelectronics |
|
130 / 191 page ![]() ST72340, ST72344, ST72345 130/191 I2C3S INTERFACE (Cont’d) 11.7.4 Functional Description The three slave addresses 1, 2 and 3 can be used as general purpose I2C slaves. They also support all features of standard I2C EEPROMs like the ST M24Cxx family and are able to fully emulate them. Slaves 1 and 2 are mapped on the same interrupt vector. Slave 3 has a separate interrupt vector with higher priority. The three slave addresses are defined by writing the 7 MSBs of the address in the I2C3SSAR1, I2C3SSAR2 and I2C3SSAR3 registers. The slaves are enabled by setting the enable bits in the same registers. Each slave has its own RAM buffer at a fixed loca- tion in the ST7 RAM area. – Slaves 1 and 2 have 256-byte buffers which can be individually protected from I2C master write accesses. – Slave 3 has a 128-byte RAM buffer without write protection feature. All three slaves have individual read flags (RF) and write flags (WF) with maskable interrupts. These flags are set when the I2C master has com- pleted a read or write operation. 11.7.4.1 Paged operation To allow emulation of Standard I2C EEPROM de- vices, pages can be defined in the RAM buffer. The pages are configured using the PL[1:0] bits in the I2C3SCR1 register. 8/16-Byte page length has to be selected depending on the EEPROM device to emulate. The Full Page option is to be used when no paging of the RAM buffer is required. The configuration is common to the 3 slave addresses. The Full Page configuration corresponds to 256 bytes for address 1 and 2 and to 128 bytes for ad- dress 3. Paging affects the handling of rollover when write operations are performed. In case the bottom of the page is reached, the write continues from the first address of the same page. Page length does not affect read operations: rollover is done on the whole RAM buffer whatever the configured page length. The Byte count register is reset when it reaches 256 bytes, whatever the page length, for all slave addresses, including slave 3. 11.7.4.2 DMA The I2C slaves use a DMA controller to write/read data to/from their RAM buffer. A DMA request is issued to the DMA controller on reception of a byte or just before transmission of a byte. When a byte is written by DMA in RAM, the CPU is stalled for max. 2 cycles. When several bytes are transferred from the I2C bus to RAM, the DMA re- leases between each byte and the CPU resumes processing until the DMA writes the next byte. 11.7.4.3 RAM Buffer Write Protection By setting the WP1/WP2 bits in the I2C3SCR2 register it is possible to protect the RAM buffer of Slaves 1/2 respectively against write access from the master. If a write operation is attempted, the slave address is acknowledged, the current address register is overwritten, data is also acknowledged but it is not written to the RAM. Both the current address and byte count registers are incremented as in normal operation. In case of write access to a write protected ad- dress, no interrupt is generated and the BusyW bit in the I2C3SCR2 register is not set. Only write operations are disabled/enabled. Read operations are not affected. 11.7.4.4 Byte-pair coherency for I2C Read operations Byte-pair coherency allows the I2C master to read a 16-bit word and ensures that it is not corrupted by a simultaneous CPU update. Two mechanisms are implemented, covering the two possible cases: 1. CPU updates a word in RAM after the first byte has been transferred to the I2C shift register from RAM. In this case, the first byte read from RAM would be the MSB of the old word and 2nd byte would be the LSB of the new word. To prevent this corruption, the I2C3S uses DMA to systematically read a 2-byte word when it receives a read command from the I2C mas- ter. The MSB of the word should be at address 2n. Using DMA, the MSB is moved from RAM address 2n to the I2C shift register and the LSB from RAM address 2n+1 moved to a shadow register in the I2C3S peripheral. The CPU is stalled for a maximum of 2 cycles during word transfer. In case only one byte is read, the unused con- tent of the shadow register will be automatically overwritten when a new read operation is per- formed. In case a second byte is read in the same I2C message (no Stop or Restart condition) the content of the shadow register is transferred to the shift register and transmitted to the master. |
|
ссылки URL |
| Вашему бизинису помогли Аллдатащит? [ DONATE ] |
Что такое Аллдатащит | реклама | контакт | Конфиденциальность | Ссылка на техническое описание | обмен ссыками | поиск по производителю All Rights Reserved©Alldatasheet.com |
| Russian : Alldatasheetru.com | Korean : Alldatasheet.co.kr | Spanish : Alldatasheet.es | French : Alldatasheet.fr | Italian : Alldatasheetit.com Portuguese : Alldatasheetpt.com | Polish : Alldatasheet.pl | Vietnamese : Alldatasheet.vn Indian : Alldatasheet.in | Mexican : Alldatasheet.com.mx | British : Alldatasheet.co.uk | New Zealand : Alldatasheet.co.nz |
|
Family Site : ic2ic.com |
icmetro.com |