
Inter-Integrated Circuit Bus Controller Module (I
2
C)
PXN20 Microcontroller Reference Manual, Rev. 1
32-18
Freescale Semiconductor
rx_count --
// decrease the rx counter
if (rx_count ==1)
// 2nd last byte to be read ?
bit 4, IBCR = 1
// disable ACK
if (rx_count == 0)
// last byte to be read ?
bit 6, IBCR = 0
// generate stop signal
else
data_received = IBDR
// read RX data and store
32.5.1.5
Generation of Repeated START
At the end of data transfer, if the master wants to remain communicating on the bus, it can generate another
START signal followed by another slave address without first generating a STOP signal. A program
example is as shown.
bit 5, IBCR = 1
// generate another start ( restart)
IBDR == calling_address
// transmit the calling address
32.5.1.6
Slave Mode
In the slave interrupt service routine, the module addressed as slave bit (IAAS) must be tested to check if
a calling of its own address has been received. If IAAS is set, software sets the transmit/receive mode
select bit (TX bit of IBCR) according to the R/W command bit (SRW). Writing to the IBCR clears IAAS
automatically. IAAS is read as set when it is from the interrupt at the end of the address cycle where an
address match occurred. Interrupts resulting from subsequent data transfers have IAAS cleared. A data
transfer may be initiated by writing information to IBDR for slave transmits or dummy reading from IBDR
in slave receive mode. The slave drives SCL low in-between byte transfers SCL is released when the IBDR
is accessed in the required mode.
In slave transmitter routine, the received acknowledge bit (RXAK) must be tested before transmitting the
next byte of data. Setting RXAK means an end of data signal from the master receiver, after which it must
be switched from transmitter mode to receiver mode by software. A dummy read then releases the SCL
line so the master can generate a STOP signal.
32.5.1.7
Arbitration Lost
If several masters try to engage the bus simultaneously, one master wins and the others lose arbitration.
The devices that lost arbitration are immediately switched to slave receive mode by the hardware. Their
data output to the SDA line is stopped, but SCL remains generated until the end of the byte during which
arbitration was lost. An interrupt occurs at the falling edge of the ninth clock of this transfer with IBAL = 1
and MS = 0. If one master attempts to start transmission while the bus is being engaged by another master,
the hardware inhibits the transmission, switches the MS bit from 1 to 0 without generating a STOP
condition, generates an interrupt to CPU, and sets the IBAL to indicate that the attempt to engage the bus
is failed. When considering these cases, the slave service routine should test the IBAL first and the
software should clear the IBAL bit if it is set.
Содержание PXN2020
Страница 1: ...PXN20 Microcontroller Reference Manual Devices Supported PXN2020 PXN2120 PXN20RM Rev 1 06 2011...
Страница 42: ...PXN20 Microcontroller Reference Manual Rev 1 lxiv Freescale Semiconductor...
Страница 64: ...Introduction PXN20 Microcontroller Reference Manual Rev 1 1 22 Freescale Semiconductor...
Страница 112: ...Signal Description PXN20 Microcontroller Reference Manual Rev 1 3 44 Freescale Semiconductor...
Страница 118: ...Resets PXN20 Microcontroller Reference Manual Rev 1 4 6 Freescale Semiconductor...
Страница 162: ...Clocks Reset and Power CRP PXN20 Microcontroller Reference Manual Rev 1 6 30 Freescale Semiconductor...
Страница 182: ...Frequency Modulated Phase Locked Loop FMPLL PXN20 Microcontroller Reference Manual Rev 1 7 20 Freescale Semiconductor...
Страница 268: ...Boot Assist Module BAM PXN20 Microcontroller Reference Manual Rev 1 9 14 Freescale Semiconductor...
Страница 318: ...Interrupts and Interrupt Controller INTC PXN20 Microcontroller Reference Manual Rev 1 10 50 Freescale Semiconductor...
Страница 326: ...General Purpose Static RAM SRAM PXN20 Microcontroller Reference Manual Rev 1 11 8 Freescale Semiconductor...
Страница 372: ...e200z6 Core Z6 PXN20 Microcontroller Reference Manual Rev 1 13 8 Freescale Semiconductor...
Страница 412: ...e200z0 Core Z0 PXN20 Microcontroller Reference Manual Rev 1 14 14 Freescale Semiconductor...
Страница 460: ...Memory Protection Unit MPU PXN20 Microcontroller Reference Manual Rev 1 18 20 Freescale Semiconductor...
Страница 478: ...Error Correction Status Module ECSM PXN20 Microcontroller Reference Manual Rev 1 19 18 Freescale Semiconductor...
Страница 488: ...Software Watchdog Timer SWT PXN20 Microcontroller Reference Manual Rev 1 20 10 Freescale Semiconductor...
Страница 494: ...System Timer Module STM PXN20 Microcontroller Reference Manual Rev 1 21 6 Freescale Semiconductor...
Страница 821: ...Media Local Bus MLB PXN20 Microcontroller Reference Manual Rev 1 Freescale Semiconductor 27 49...
Страница 822: ...Media Local Bus MLB PXN20 Microcontroller Reference Manual Rev 1 27 50 Freescale Semiconductor...
Страница 926: ...Controller Area Network FlexCAN PXN20 Microcontroller Reference Manual Rev 1 29 42 Freescale Semiconductor...
Страница 990: ...Deserial Serial Peripheral Interface DSPI PXN20 Microcontroller Reference Manual Rev 1 30 64 Freescale Semiconductor...
Страница 1044: ...Enhanced Serial Communication Interface eSCI PXN20 Microcontroller Reference Manual Rev 1 31 54 Freescale Semiconductor...
Страница 1080: ...Cross Triggering Unit CTU PXN20 Microcontroller Reference Manual Rev 1 33 12 Freescale Semiconductor...
Страница 1134: ...Analog to Digital Converter ADC PXN20 Microcontroller Reference Manual Rev 1 34 54 Freescale Semiconductor...
Страница 1150: ...IEEE 1149 1 Test Access Port Controller JTAGC PXN20 Microcontroller Reference Manual Rev 1 35 16 Freescale Semiconductor...
Страница 1257: ...Nexus Development Interface NDI PXN20 Microcontroller Reference Manual Rev 1 Freescale Semiconductor 36 107...
Страница 1258: ...Nexus Development Interface NDI PXN20 Microcontroller Reference Manual Rev 1 36 108 Freescale Semiconductor...
Страница 1376: ...Memory Map PXN20 Microcontroller Reference Manual Rev 1 A 118 Freescale Semiconductor...