This is an old revision of the document!


Exercise: Changing the frequency

It is obvious, that changing the RF frequency is a fundamental requirement of frequency hopping systems. Therefor programming the RF frequency is the aim of this exercise. Programming the RF frequency is done according chapter 9.1.2 of CC1200 Users Guide.

In detail, the HF $f_{RF}$ frequency is computed by:

$$ f_{RF}=\frac{f_{VCO}}{LO\ Divider} $$

where $f_{VCO}$ is the frequency of the “Voltage Controlled Oscillator (VCO)” and will be computed by $$ f_{VCO} = \frac{FREQ}{2^{16}} . f_{XOSC} + \frac{FREQOFF}{2^{18}} . f_{XOSC}$$

In this two equations $f_{XOSC}$ is the crystal frequency of the TI boards and equals to $40 MHz$. LO Divider determines the frequency band of the CC1200 and can be obtained in the FSD_BANDSELECT part of the “Frequency Synthesizer Configuration” register (FS_CFG register).

FREQ is the 24 bit VCO frequency and computed by the FREQ0 (bits 16-23 of VCO frequency), FREQ1 (bits 8-16 of VCO frequency) and FREQ2 (bits 0-7 of VCO frequency) registers. FEQOFF is intended for fine tuning the RF frequency caused by tolerances of the crystal and can be neglected.

Requirements

This task requires

  • a ready BeagleBone Black equipped with the CC1200
  • one TI Development Kit for the CC1200
  • Smart RF Studio.

Tasks

  • the programming is done by reusing the source files of lesson 2. Exercise: Packet Reception. Make a copy of the files.
  • Read chapter 8 about the packet handling of the CC1200 Users Guide and implement it.
  • Bring SmartRF Studio in “Packet TX” mode, change the length config to fixed and change the Length field to the value used in the export file
  • start the transmitter. At the receiver, the BeagleBone Black, You should now receive the packets.

If you are able to receive packets in fixed length mode, the next step will be to receive packets in variable length mode:

  • go back to SmartRF Studio and change the length config to variable
  • look, which registers have been changed.
  • modify the changed registers in your program. You do not need to reexport the complete registers.
  • now, implement variable length packets and test it.
network_protocol_programming_lab/change_frequency.1590134007.txt.gz · Last modified: 2020/05/22 09:53 by rathke
CC Attribution-Noncommercial-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0