Micrel MICRF505BML/YML
August 2006 28
M9999-092904
+1 408-944-0800
Mod_la
Mod_lb
M
od_la > Mod_lb
Figure 21. Two Different Modulator Current Settings
Modulator Attenuator
A third way to set the deviation is by programming
the modulator attenuator, Mod_A2..Mod_A0, the last
being LSB. The purpose of the attenuator is to allow
small deviations when the bit rate is small and/or the
BT is small (these settings will give a relatively slow
modulator clock, and therefore long rise- and fall
times, which in turn results in large frequency
deviations). In addition, the attenuator will improve
the resolution in the modulator.
Mod_Aa
Mod_Ab
M
od_Ab > Mod_Ab
Figure 22. Two Different Modulator Attenuator
Settings
The effect of the attenuator is given by:
Mod_A1
1
f
DEVIATION
+
Figure 22 shows two waveforms with different
attenuator setting:
Mod_Ab Mod_Aa <
. If Mod_A
is increased, the frequency deviation is lowered and
vice versa.
Modulator Filter
To reduce the high-frequency components in the
generated waveform, a filter with programmable cut-
off frequency can be enabled. This is done using
Mod_F2..Mod_F0, the least one being LSB. The
Mod_F should be set according to the formula:
rate Bit
150x10
MOD_F
3
=
Mod_filter on
Mod_filter off
Figure 23. Modulator Waveform with and without
Filtering
Mod_F=0 disables the modulator filter and Mod_F=7
gives most filtering. Figure 23 shows a waveform
with and without the filter.
Calculation of the Frequency Deviation
The parameters influencing the frequency deviation
can be summarized in the following equations:
)(7
XCO
MOD_CLK
2Refclk_K
f
f
Mod_clkS
×
=
()
RF21
MOD_CLK
DEV
fCC
Mod_A1
1
f
Mod_I
f ×+×
+
×=
Where:
f
DEV
: Single sided frequency deviation
[Hz]
f
XCO
: Crystal oscillator frequency [Hz]
f
RF
: Center frequency [Hz]
Refclk_K: 6 bit divider, values between 1
and 63
Mod_clkS: Modulator clock setting, values
between 0 and 7
f
MOD_CLK
: Modulator clock frequency,
derived from the crystal
frequency, Refclk_K and
Mod_clkS
Mod_I: Modulator current setting,
values between 0 and 31
Mod_A: Modulator attenuator setting,
values between 0 and 15
C1: --4.42x10
10
C2: 72
Micrel MICRF505BML/YML
August 2006 29
M9999-092904
+1 408-944-0800
The modulator filter will not influence the frequency
deviation as long as the programmed cut-off
frequency is above the actual bit rate.
The frequency deviation must be programmed so
that the modulation index (2 x single sided frequency
deviation/Baudrate [bps]) always is greater than or
equal to 2 including the total frequency offset
between the receiver and the transmitter:
f
DEV
= Baudrate + f
OFFSET
The calculated f
DEV
should be used to calculate the
needed receiver bandwidth, see chapter Switched
capacitor filter.
Using the XCO-tune Bits
The RF chip has a built-in mechanism for tuning the
frequency of the crystal oscillator and is often used
in combination with the Frequency Error Estimator
(FEE). The XCO tuning is designed to eliminate or
reduce initial frequency tolerance of the crystal
and/or the frequency stability over temperature. If
the value in XCO_tune is increased (adding
capacitance), the frequency will decrease.
The XCO uses two external capacitors (see figure
5). The value of these will strongly affect the tuning
range. With a 16.0 MHz crystal (TN4-26011 from
Toyocom), and external capacitor values of 1.5 pF,
the tuning range will be approximately symmetrical
around the center frequency. A XCO_tune >16 will
decrease the frequency and vice versa (see figure
6).
A procedure for using the XCO_tune feature in
combination with the FEE is given below. The
MICRF505 measures the frequency offset between
the demodulated signal and the LO and tune the
XCO so the LO frequency is equal to received
carrier frequency.
A procedure like this can be called during production
(storing the calibrated XCO_tune value), at regular
intervals or implemented in the communication
protocol when the frequency has changed.
The FEE can count “UP”-pulses and/or “DOWN”-
pulses (pulses out of the demodulator when a logic
“1” or logic “0”, resp.., is received). The FEE can
count pulses for n bits, where n = 8, 16, 32 or 64.
Example: In FEE, count up+down pulses, counting 8
bits:
A perfect case ==> FEE = 0
If FEE > 0: LO is too low, increase LO by decreasing
XCO_tune value
v.v. for FEE < 0
FEE field holds a number in the range -128, … ,
127. However, it keeps counting above/below the
range, which is:
If FEE = -128 and still counting dwn-pulses:
1) =>-129 = +127
2) 126
3) 125
Micrel MICRF505BML/YML
August 2006 30
M9999-092904
+1 408-944-0800
To avoid this situation, always make sure max count
is between limits. Suggestion: Count for 8 (or 16)
bits only.
Procedure description:
In the procedure below, UP+DWN pulses are
counted, and only the sign of the FEE is used. The
value of n is 8 or 16.
Assumption:
A transmitter is sending a 1010… pattern at the
correct frequency and bitrate.
The wanted receiver frequency is the mid-point
between the “0” and “1” frequencies.
Input:
Nothing
Output
The best XCO_tune value (giving the lowest IFEEI)
Local variables:
XCO_Present: (5-bit) holds present value in
XCO_tune bits
XCO_Step: (4-bit) holds increment/decrement of
XCO_tune bits
SCO_Sign: (1 bit) holds POS or NEG
(increment/cerement) increasing LO is done by
reducing the XCO_tune value
XCO TUNE PROCEDURE
INT:
XCO_Present = 0
XCO_Step = 32
XCO_Sign = NEG
Control_Word =
Default RX, clocks match transmitter
LOOP:
XCO_Step = XCO_Step/2
XCO_Sign == POS?
Yes --> XCO_Present- = XCO_Step // increase LO
No --> XCO_Present+ = XCO_Step // decrease LO
XCO_tune bits = CXO_Present
Program RFChip
Delay > n bits
Read FEE
FEE > 0?
Yes --> XCO_Sign = POS
No --> XCO_Sing = NEG // negative or == 0
XCO_Step > 1?
Yes --> Branch to LOOP
No -->
XCO_Sing ==POS?
Yes --> XCO_Present- = 1
Branch to FIN
FIN: RETURN, return-value = XCO_Present

MICRF505LYML-TR

Mfr. #:
Manufacturer:
Microchip Technology / Micrel
Description:
RF Transceiver
Lifecycle:
New from this manufacturer.
Delivery:
DHL FedEx Ups TNT EMS
Payment:
T/T Paypal Visa MoneyGram Western Union

Products related to this Datasheet