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 change_frequency
  • open the CC1200 panel and select “Symbolrate 38.4kbps, 2-GFSK, RX BW 100kHz, ETSI Standard (868MHz)” in the typical settings part
  • press the button “Packet RX” in the lower window. Some registers in the register view will change their value
  • in the option length config change variable to fixed.
  • now, choose an appropriate length of the Length field, e.g. 10.
  • export all registers to a file. This means 208 registers must be exported.
  • connect the BeagleBone Black to your computer and login as superuser.
  • copy the export file from SmartRF Studio to the BeagleBone Black
  • import the export file into your program and initialize the registers according the values of the export file.
  • verify that the registers have been written correctly.
  • 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.1590133816.txt.gz · Last modified: 2020/05/22 09:50 by rathke
CC Attribution-Noncommercial-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0