English
Language : 

PIC18F97J60_11 Datasheet, PDF (256/492 Pages) Microchip Technology – 64/80/100-Pin, High-Performance, 1-Mbit Flash Microcontrollers with Ethernet
PIC18F97J60 FAMILY
19.6 Duplex Mode Configuration and
Negotiation
The Ethernet module does not support Automatic
Duplex mode negotiation. If it is connected to an auto-
matic duplex negotiation-enabled network switch or
Ethernet controller, the module will be detected as a
half-duplex device. To communicate in full duplex, the
module and the remote node (switch, router or Ethernet
controller) must be manually configured for full-duplex
operation.
19.6.1 HALF-DUPLEX OPERATION
The Ethernet module operates in Half-Duplex mode
when the FULDPX (MACON3<0>) and PDPXMD
(PHCON1<8>) bits are cleared (= 0). If only one of
these two bits is set, the module will be in an indetermi-
nate state and not function correctly. Since switching
between Full and Half-Duplex modes may result in this
indeterminate state, it is recommended that the appli-
cation not transmit any packets (maintain the TXRTS
bit clear), and disable packet reception (maintain the
RXEN bit clear) during this period.
In Half-Duplex mode, only one Ethernet controller may
be transmitting on the physical medium at any time. If
the application requests a packet to be transmitted by
setting the TXRTS bit while another Ethernet controller
is already transmitting, the Ethernet module will delay,
waiting for the remote transmitter to stop. When it
stops, the module will attempt to transmit its packet.
Should another Ethernet controller start transmitting at
approximately the same time, the data on the wire will
become corrupt and a collision will occur.
The hardware will handle this condition in one of two
ways. If the collision occurs before 64 bytes have been
transmitted, the following events occur:
1. The TXRTS bit remains set
2. The transmit error interrupt does not occur
3. A random exponential backoff delay elapses, as
defined by the IEEE 802.3 specification
4. A new attempt to transmit the packet from the
beginning occurs. The application does not
need to intervene.
If the number of retransmission attempts reaches 15 and
another collision occurs, the packet is aborted and the
TXRTS bit is cleared. The application will then be
responsible for taking appropriate action. The applica-
tion will be able to determine that the packet was aborted
instead of being successfully transmitted by reading the
TXABRT flag. For more information, see Section 19.5.2
“Transmitting Packets”.
If the collision occurs after 64 bytes have already been
transmitted, the packet is immediately aborted without
any retransmission attempts. Ordinarily, in IEEE 802.3
compliant networks which are properly configured, this
late collision will not occur. User intervention may be
required to correct the issue. This problem may occur
as a result of a full-duplex node attempting to transmit
on the half-duplex medium. Alternately, the module
may be attempting to operate in Half-Duplex mode
while it may be connected to a full-duplex network.
Excessively long cabling and network size may also be
a possible cause of late collisions.
19.6.2 FULL-DUPLEX OPERATION
The Ethernet module operates in Full-Duplex mode
when the FULDPX (MACON3<0>) and PDPXMD
(PHCON1<8>) bits are both set (= 1). If only one of
these two bits is clear, the module will be in an indeter-
minate state and not function correctly. Again, since
switching between Full and Half-Duplex modes may
result in this indeterminate state, it is recommended
that the application not transmit any packets and
should disable packet reception during this period.
In Full-Duplex mode, packets will be transmitted while
simultaneously packets may be received. Given this, it
is impossible to cause any collisions when transmitting
packets.
DS39762F-page 256
 2011 Microchip Technology Inc.