Micrel
MICRF506BML/YML
Writing to the control registers in MICRF506
Writing: A number of octets are entered into
MICRF506 followed by a load-signal to activate the
new setting. Making these events is referred to as a
“write sequence.” It is possible to update all, 1, or n
control registers in a write sequence. The address to
write to (or the first address to write to) can be any
valid address (0-21). The IO line is always an input
to the MICRF506 (output from user) when writing.
What to write:
•
The address of the control register to write
to (or if more than 1 control register should
be written to, the address of the 1
st
control
register to write to).
•
A bit to enable reading or writing of the
control registers. This bit is called the R/W
bit.
•
The values to write into the control
register(s).
July 2006
10
M9999-092904
+1 408-944-0800
What to write:
Field Comments
Address:
A 7-bit field, ranging from 0 to 21. MSB is
written first.
R/W bit:
A 1-bit field, = “0” for writing
Values:
A number of octets (1-22 octets). MSB in
every octet is written first. The first octet is
written to the control register with the
specified address (=”Address”). The next
octet (if there is one) is written to the control
register with address = “A 1” and so
on.
Table 2.
How to write:
Bring CS active to active to start a write sequence.
The active state of the CS line is “high.” Use the
SCLK/IO serial interface to clock “Address” and
“R/W” bit and “Values” into the MICRF506.
MICRF506 will sample the IO line at negative edges
of SCLK. Make sure to change the state of the IO
line before the negative edge. Refer to figures
below.
Bring CS inactive to make an internal load-signal
and complete the write-sequence. Note: there is an
exception to this point. If the programming bit called
“load_en” (bit0 in ControlRegister0) is “0”, then no
load pulse is generated.
The two different ways to “program the chip” are:
•
Write to a number of control registers (0-22)
when the registers have incremental
addresses (write to 1, all or n registers)
•
Write to a number of control registers when
the registers have non-incremental
addresses.
Writing to a Single Register
Writing to a control register with address “A6. A5,
…A0” is described here. During operation, writing to
1 register is sufficient to change the way the
transceiver works. Typical example: Change from
receive mode to power-down.
What to write:
Field Comments
Address:
7 bit = A6, A5, …A0 (A6 = msb. A0 = lsb)
R/W bit:
“0” for writing
Values:
8 bits = D7, D6, …D0 (D7 = msb, D0 = lsb)
Table 3.
“Address” and “R/W bit” together make 1 octet.
In addition, 1 octet with programming bits is entered. In
total, 2 octets are clocked into the MICRF506.
How to write:
•
Bring CS high
•
Use SCLK and IO to clock in the 2 octets
•
Bring CS low
CS
SCLK
IO
A6
A5
A0
RW
D7
D6
D2
D1
D0
Address of register i RW
Data to write into register i
Internal load pulse made here
Figure 1.
In Figure 1, IO is changed at positive edges of SCLK. The
MICRF506 samples the IO line at negative edges. The
value of the R/W bits is always “0” for writing.