beautypg.com

broadcast address, reset addresses, Table 15.) – Rainbow Electronics T89C51RD2 User Manual

Page 34

background image

Rev. F - 15 February, 2001

34

T89C51RD2

The SADEN byte is selected so that each slave may be addressed separately.
For slave A, bit 0 (the LSB) is a don’t-care bit; for slaves B and C, bit 0 is a 1. To communicate with slave A
only, the master must send an address where bit 0 is clear (e.g.

1111

0000b

).

For slave A, bit 1 is a 1; for slaves B and C, bit 1 is a don’t care bit. To communicate with slaves B and C, but
not slave A, the master must send an address with bits 0 and 1 both set (e.g.

1111

0011b

).

To communicate with slaves A, B and C, the master must send an address with bit 0 set, bit 1 clear, and bit 2
clear (e.g.

1111

0001b

).

6.6.4. Broadcast Address

A broadcast address is formed from the logical OR of the SADDR and SADEN registers with zeros defined as
don’t-care bits, e.g.:

SADDR

0101 0110b

SADEN

1111 1100b

Broadcast =SADDR OR SADEN

1111 111Xb

The use of don’t-care bits provides flexibility in defining the broadcast address, however in most applications, a
broadcast address is FFh. The following is an example of using broadcast addresses:

Slave A:

SADDR

1111 0001b

SADEN

1111 1010b

Broadcast

1111 1X11b,

Slave B:

SADDR

1111 0011b

SADEN

1111 1001b

Broadcast

1111 1X11B,

Slave C:

SADDR=

1111 0010b

SADEN

1111 1101b

Broadcast

1111 1111b

For slaves A and B, bit 2 is a don’t care bit; for slave C, bit 2 is set. To communicate with all of the slaves, the
master must send an address FFh. To communicate with slaves A and B, but not slave C, the master can send
and address FBh.

6.6.5. Reset Addresses

On reset, the SADDR and SADEN registers are initialized to 00h, i.e. the given and broadcast addresses are

XXXX

XXXXb

(all don’t-care bits). This ensures that the serial port will reply to any address, and so, that it is backwards

compatible with the 80C51 microcontrollers that do not support automatic address recognition.

SADEN - Slave Address Mask Register (B9h)

Reset Value = 0000 0000b
Not bit addressable

SADDR - Slave Address Register (A9h)

Reset Value = 0000 0000b
Not bit addressable

Table 15. SCON Register

7

6

5

4

3

2

1

0

7

6

5

4

3

2

1

0