APPLICATION NOTE AND9313/D AX5043 Use as Analog FM Transceiver Revision 2 2 Table of Contents 1. Introduction................................................................................................ 3 2. The AX5043_analog_FM_demo Project ....................................................... 4 3. Receive side ................................................................................................ 6 3.1. Hardware setup ............................................................................................. 6 3.2. Software configuration ................................................................................... 6 4. Transmit side .............................................................................................. 9 4.1. Hardware setup ............................................................................................. 9 4.2. Software configuration ................................................................................... 9 5. Conclusion ................................................................................................ 11 www.onsemi.com AX5043ND9313/D Introduction 1. Introduction This application note describes how to use the AX5043 as an analog FM half-duplex transceiver. A modified AX-RadioLAB project, ax5043_analog_FM_demo, is used to demonstrate FM operation. www.onsemi.com AND9313/D 3 4 The AX5043_analog_FM_demo Project 2. The AX5043_analog_FM_demo Project The AX5043_analog_FM_demo_v1.1 project is a modified AX-RadioLAB_v2.3g project. The SLAVE firmware demonstrates analog FM receive, whereas MASTER firmware demonstrates analog FM transmit. AX-RadioLAB and the AXRadioV2API provide a basic setup, allowing to check for the AX5043 IC, to set some general parameters (e.g. carrier frequency) and to range the PLL. The default configuration is for 200kHz wideband (broadcast) FM. For narrow band FM the following changes should be made: The RX bandwidth should be adjusted using AXRadioLAB. The TX deviation should be adjusted by changing AX5043_FSKDEV0 in COMMON/fm.c according to the formula in 4.2. The following tables list those input parameters of AX-RadioLAB which are relevant here and the derived AX5043 registers relevant for FM operation. Parameter Panel Comment Ref Osc Config Pin Configuration A TCXO should be used for narrow band FM (25kHz channels). An XTAL is sufficient for common FM radio reception. PA Config Pin Configuration Single ended or differential VCO Config Pin Configuration Internal or external L, depending of carrier frequency. Carrier frequency PHY RFDIV PHY Depending of carrier frequency Symbol Rate PHY AX5043_RXDATARATE is computed from this parameter. In FM RX mode this determines the rate at which the baseband signal is sampled. Typically 100kS/s. Channel Spacing PHY Fxtal PHY XTALCAP PHY Transmit Power PHY RX Bandwidth PHY Register AX5043_FREQA3 AX5043_FREQA2 AX5043_FREQA1 AX5043_FREQA0 AX5043_DECIMATION AX5043_RXDATARATE2 AX5043_RXDATARATE1 AX5043_RXDATARATE0 AX5043_AGCGAIN0 AX5043_AGCTARGET0 www.onsemi.com AND9313/D The AX5043_analog_FM_demo Project AX5043_PHASEGAIN0 AX5043_AMPLITUDEGAIN0 AX5043_FREQDEV10 AX5043_FREQDEV00 AX5043_BBOFFSRES0 AX5043_MODCFGF AX5043_MODCFGA AX5043_TXPWRCOEFFB1 AX5043_TXPWRCOEFFB0 AX5043_PLLRNGCLK AX5043_BBTUNE AX5043_BBOFFSCAP AX5043_TMGRXBOOST AX5043_TMGRXSETTLE AX5043_TMGRXOFFSACQ AX5043_RSSIREFERENCE AX5043_0xF10 AX5043_0xF11 AX5043_0xF1C AX5043_0xF21 AX5043_0xF22 AX5043_0xF23 AX5043_0xF26 AX5043_0xF34 AX5043_0xF35 AX5043_0xF44 AX5043_PLLLOOP AX5043_PLLCPI AX5043_PLLVCODIV AX5043_PLLVCOI AX5043_XTALCAP AX5043_0xF00 AX5043_REF AX5043_0xF18 Further AX5043 register settings relevant for analog FM operation are hard coded in the COMMON/set_fm_tx() and COMMON/set_fm_rx() routines. They are described in the further sections of this document. AX5043 registers related to preamble matching and the packet engine are irrelevant for analog FM operation. www.onsemi.com AND9313/D 5 6 Receive side 3. Receive side 3.1. Hardware setup Pin: PWRAMP or ANTSEL Low pass filter AX5043 Amplifier The AX5043 features a bitstream DAC, which can output a demodulated baseband signal. The output can be configured to be on pin ANTSEL or PWRAMP. On the AXSEM DVK2b modules PWRAMP is used. To convert the bitstream into an audio signal a low pass filter and an amplifier are required. The low pass filter on the DVK2b modules is first order with a cutoff frequency of 1.8 kHz. For better audio quality a higher order filter is required. 3.2. Software configuration Analog FM mode is selected by setting AX5043_MODULATION = 0x0B. The following points have to be considered: 1. RX bandwidth and IF configuration function as in other receive modes. 2. The formula for AX5043_RXDATARATE is the same as for digital receive modes, except that BITRATE is replaced by fSR, the sampling rate of the baseband signal. 3. AX5043_RXPARAMSETS = 0x00 ensures that the RX parameter set 0 is used at all times. Therefore receiver parameter sets 1, 2 and 3 are not used. Registers related to preamble matching and the packet engine are not used. 4. Bit timing recovery should be disabled by AX5043_DRGAIN0 and AX5043_MAXDROFFSET to 0. setting AX5043_TIMEGAIN0, 5. The AFC loop controlled by AX5043_FREQGAINA and AX5043_FREQGAINB (TRKFREQ) us used as an FM demodulator. The AFC loop controlled by AX5043_FREQGAINC and AX5043_FREQGAIND (TRKRFFREQ) is used for tracking static frequency offsets. AX5043_FREQUENCYLEAK > 0 prevents the demodulator loop from tracking static frequency offsets. www.onsemi.com AND9313/D Receive side 6. In the formulas for AX5043_IFFREQ, AX5043_DECIMATION and AX5043_RXDATARATE listed in the AX5043 Programming Manual, the quantity fxtal should be replaced by fxtal/2^(ADCCLKMUX), where ADCLKMUX = 0xF35[1:0]. www.onsemi.com AND9313/D 7 8 Receive side The following table shows register settings for FM radio reception with a 16 MHz reference. Register Value Calculation / Comment AX5043_MODULATION 0x0B Analog FM AX5043_IFFREQ 0x0666 25kHz (f_xtal = 16MHz) AX5043_RXPARAMSETS 0x00 only use receiver parameter set 0 AX5043_TIMEGAIN0 0x00 disable bit timing recovery, which would only add jitter AX5043_DRGAIN0 0x00 off AX5043_MAXDROFFSET 0x000000 off AX5043_MAXRFOFFSET2 0x80CCCC track at LO1, max 50kHz @ f_xtal = 16MHz AX5043_FREQUENCYGAINA0 0x0F off AX5043_FREQUENCYGAINB0 0x02 bandwidth of “inner” AFC loop used for FM demodulation. f_3dB = 0.115*BR. This is the fastest setting available AX5043_FREQUENCYGAINC0 0x1F off AX5043_FREQUENCYGAIND0 0x08 bandwidth of “outer” AFC loop (tracking frequency mismatch), 78Hz @ BR=100kbps, f_xtal=16MHz AX5043_FREQUENCYLEAK 0x04 FREQUENCYGAINB0 + 2, prevents the demodulator AFC loop from tracking static frequency offsets AX5043_DACCONFIG 0x03 output TRKFREQUENCY (=demodulated signal) on DAC AX5043_DACVALUE1 0x00 AX5043_DACVALUE0 0x0c DACSHIFT = 12 bit. This gives maximum volume, downshifting further gives smaller volume AX5043_PINFUNCPWRAMP 0x05 Use PWRAMP pin as DAC output AX5043_PWRMODE 0x09 FULL RX With this settings the AX5043 will output a FM radio channel at the set frequency. It is possible to connect a standard high impedance ear piece directly to the pins on the DVK2b module to listen to the radio. www.onsemi.com AND9313/D Transmit side 4. Transmit side 4.1. Hardware setup Low pass filter Microphone Amplifier Pins GPADC1 & GPADC2 AX5043 The baseband (audio) signal should be applied differentially to pins GPADC1 and GPADC2 (Pins 25 and 26) when using the standalone AX5043. The baseband (audio) signal should be applied differentially to pins TST2 and TST1 (Pins 27 and 28) when using the SoC AX8052F143. The two single ended GPADC input signals should swing around the common mode voltage of 800mV. The maximum common mode range is +/- 100mV. The maximum differential input signal is 1Vpp. Thus the maximum negative input signal is ((800mV – 250mV) – (800mV + 250mV)) = -500mV, the maximum positive input signal is ((800mV + 250mV) – (800mV - 250mV)) = 500mV. The single ended input impedance of each GPADC pin is 50kOhm. A microphone signal should be amplified to +/- 500mVpp differential signal. 4.2. Software configuration Analog FM mode is selected by setting AX5043_MODULATION = 0x0B. The register FSKDEV has a special meaning when FM modulation is selected. It defines the conditioning of the ADC signal prior modulation. AX5043_GPADCPERIOD controls the rate at which the analog baseband signal is sampled. AX5043_TXRATE has no meaning in FM mode. www.onsemi.com AND9313/D 9 10 Transmit side Register Value Calculation / Comment AX5043_MODULATION 0x0B Analog FM AX5043_FSKDEV2 0x00 AX5043_FSKDEV1 0xC0 GPADC13, enable sign extension and offset (=midcode) subtraction. AX5043_FSKDEV0 0x07 fdeviation = +/- 65kHz [max / min ADC value gives fdeviation = +/fxtal / 2^(AX5043_FSKDEV0[2:0]+1), allowed values are 0..7 AX5043_GPADCPERIOD 0x07 Fs = fxtal/32/GPADCPERIOD 5 gives 100kHz @ fxtal=16MHz. This determines the sampling rate, AX5043_TXRATE has no meaning in FM mode. AX5043_GPADCCTRL 0x06 continuous sampling of GPADC13 AX5043_PINFUNCDATA 0x04 Enables continuous TX operation, rather than powering up the PA only if there is committed FIFO data. This is similar to wire mode, except that no data is read from the pin in FM mode. AX5043_PWRMODE 0x0D FULL TX www.onsemi.com AND9313/D Conclusion 5. Conclusion It is possible to implement FM audio and data transceivers with the AX5043. www.onsemi.com AND9313/D 11