Si5351 Clock Generator Programming

Introduction

Six years ago I designed a zero IF direct conversion receiver to be used with my HF Radio Ebook (Ref.1). For flexibility, I used an IQ VFO. At the time, the best choice for my VFO was the Si514. In order to get coswct & sinwct waveforms, I had to run the VFO at 4xFc and feed a divider network that gave me the 90deg phase shift. Recently I have been amazed at how versatile the NanoVNA network analyzer is and I noticed that it is based on the Si5351 IC. So I thought I better have a closer look. It has 4 independent outputs that can be programmed separately, two of which can be used as I & Q outputs.

Si5351 Clock Gen Module

FIg.1 Si5351 Clock Gen Module Connection to Arduino Uno
Fig.2 Si5351 Clock Gen Module Connection to Arduino Uno & Spec Analyzer

The easiest way to get going with the Si5351 is to use an existing module such as the Adafruit Si5351 Clock Gen module (Ref.2). Adafruit supplies all the necessary information such as board manual, data sheet, circuit diagrams, pcb layouts, and demo Arduino sketch software. Figure 1 shows the connection diagram of the module to the Arduino Uno. The SCL/SDA connections are to the top header and the power/ground to the bottom header. A Picoscope is used to monitor the clock outputs on ChA & ChB. The scope probes are coaxial 50ohm terminated to match the Zo of the board. HiZ scope probes can be used but the waveforms will have considerable reflection overshoot depending on the frequency. Figure 2 shows a closeup of the Spec Analyzer connection.

Si5351A Programming Arduino Sketch

Fig.3 Arduino IDE 2.03 Adding Si5351 Library
Fig.4 Arduino IDE 2.03 Opening SI5351 Example Sketch Code
Fig.5 Arduino IDE 2.03 Loading Si5351 Code & Serial Monitor

The first step to using the Si5351, is to get the Adafruit Library. You can download it from Github or connect the Arduino IDE to the internet and download it as shown in Figure 3. Next from File/Examples locate and load the si5351 example. Then set the board type ‘Uno’ and port number. Finally, load/compile/upload the sketch. Enable the Serial Monitor which should show Output #0/#1/#2 as shown in Figure 4.

Si5351 Measurements

The outputs on the Si5351 are spec’d as 3.3VDC 50ohms impedance. Since the frequency can go as high as 160MHz (200MHz on later models), connections must be treated as transmission lines in order not to have reflections. The scope connection is via a coaxial cable terminated in 50ohms (a better connection on the pcb would be an sma pcb connector). Figures 6/7/8 show the scope/spec view at 112.5MHz on Output #0, 13.56MHz on Output #1 and 10.706KHz on Output #2. The Picoscope 3205D is sped’d at BW=100MHz, so only an attenuated primary component is shown at 112.5MHz. The display at 13.56MHz and 10.706KHz shows a square wave. The terminated voltage theoretically is Voc/2 = 3.3/2 = 1.65V.

Square Wave Spectrum

Fig,9 Fourier Series Rectangular Pulse Train
Fig.11 Spectrum 10.706KHz Square Wave & Odd Harmonics

The NanoVNA uses the harmonics of the Si5351 in order reach frequencies up to the L band. It is instructive to review the properties of square wave (Ref. 3). Figure 9 shows the Fourier series of a RPT Rectangular Pulse Train. A square wave is a special case where the duty cycle d = 0.5. Note that all even harmonics are = 0 for a square wave. Figure 10 shows the waveform for 3/20/100 components. Note that you need about 100 components to get a very “square” looking square wave. Figure 11 shows the odd components of the 10.706KHz square wave on Output #2.

Fig.12 YouTube Video Si5351 Clock Generator Programming

Please send your comments, questions and suggestions to:
contact:

YouTube Channel
YouTube Channel

References

#1. – “SDR_U Design, Simulation and Assembly of a Direct Conversion High Frequency SDR Software Defined Receiver”
https://www.clarktelecommunications.com/images/sdr_u_short.pdf

#2. -“Adafruit Si5351 Clock Gen Module 8KHz – 160MHz”
https://www.adafruit.com/product/2045

#3. – “Dirac Delta Function – del(t)”
https://jeremyclark.ca/wp/telecom/dirac-delta-function

By Jeremy Clark

Jeremy Clark is a Senior Telecommunications Engineer and Advanced Amateur Radio Operator VE3PKC. He is the author of E-Books on Telecommunications, Navigation & Electronics.