Microchip Technology MCP3421DM-WS Data Sheet

Page of 438
PIC18F2455/2550/4455/4550
DS39632E-page 260
 
© 2009 Microchip Technology Inc.
20.3
EUSART Synchronous 
Master Mode
The Synchronous Master mode is entered by setting
the CSRC bit (TXSTA<7>). In this mode, the data is
transmitted in a half-duplex manner (i.e., transmission
and reception do not occur at the same time). When
transmitting data, the reception is inhibited and vice
versa. Synchronous mode is entered by setting bit,
SYNC (TXSTA<4>). In addition, enable bit, SPEN
(RCSTA<7>), is set in order to configure the TX and RX
pins to CK (clock) and DT (data) lines, respectively. 
The Master mode indicates that the processor
transmits the master clock on the CK line. 
Clock polarity (CK) is selected with the TXCKP bit
(BAUDCON<4>). Setting TXCKP sets the Idle state on
CK as high, while clearing the bit sets the Idle state as
low. Data polarity (DT) is selected with the RXDTP bit
(BAUDCON<5>). Setting RXDTP sets the Idle state on
DT as high, while clearing the bit sets the Idle state as
low. DT is sampled when CK returns to its idle state.
This option is provided to support Microwire devices
with this module.
20.3.1
EUSART SYNCHRONOUS MASTER 
TRANSMISSION
The EUSART transmitter block diagram is shown in
Figure 20-3. The heart of the transmitter is the Transmit
(Serial) Shift Register (TSR). The Shift register obtains
its data from the Read/Write Transmit Buffer register,
TXREG. The TXREG register is loaded with data in
software. The TSR register is not loaded until the last
bit has been transmitted from the previous load. As
soon as the last bit is transmitted, the TSR is loaded
with new data from the TXREG (if available). 
Once the TXREG register transfers the data to the TSR
register (occurs in one T
CY
), the TXREG is empty and
the TXIF flag bit (PIR1<4>) is set. The interrupt can be
enabled or disabled by setting or clearing the interrupt
enable bit, TXIE (PIE1<4>). TXIF is set regardless of
the state of enable bit, TXIE; it cannot be cleared in
software. It will reset only when new data is loaded into
the TXREG register. 
While flag bit, TXIF, indicates the status of the TXREG
register, another bit, TRMT (TXSTA<1>), shows the
status of the TSR register. TRMT is a read-only bit which
is set when the TSR is empty. No interrupt logic is tied to
this bit so the user has to poll this bit in order to deter-
mine if the TSR register is empty. The TSR is not
mapped in data memory so it is not available to the user.
To set up a Synchronous Master Transmission:
1.
Initialize the SPBRGH:SPBRG registers for the
appropriate baud rate. Set or clear the BRG16
bit, as required, to achieve the desired baud rate.
2.
Enable the synchronous master serial port by
setting bits, SYNC, SPEN and CSRC.
3.
If interrupts are desired, set enable bit, TXIE.
4.
If 9-bit transmission is desired, set bit, TX9.
5.
Enable the transmission by setting bit, TXEN.
6.
If 9-bit transmission is selected, the ninth bit
should be loaded in bit, TX9D.
7.
Start transmission by loading data to the TXREG
register.
8.
If using interrupts, ensure that the GIE and PEIE
bits in the INTCON register (INTCON<7:6>) are
set.
FIGURE 20-11:
SYNCHRONOUS TRANSMISSION       
 bit 0
 bit 1
 bit 7
Word 1
Q1 Q2 Q3Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1Q2 Q3 Q4 Q1Q2 Q3 Q4
Q3 Q4 Q1 Q2 Q3 Q4 Q1Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4
 bit 2
 bit 0
 bit 1
 
bit 7
RC6/TX/CK pin
Write to
TXREG Reg
TXIF bit
(Interrupt Flag)
TXEN bit ‘1’
‘1’
 Word 2
TRMT bit
Write Word 1
Write Word 2
Note: Sync Master mode, SPBRG = 0, continuous transmission of two 8-bit words.
RC6/TX/CK pin
(TXCKP = 0)
(TXCKP = 1)
RC7/RX/DT/
SDO pin