Christophe OE1CGS provided the following script for controlling the QRP Labs Si5351A Synth kit. Christophe writes:
What is different?
- Covers the full frequency range from 7900 Hz to 200 MHz [See note below]
- The code is in one file, i.e. no messing around with .h and .c
- Allows to select the output power between 4 levels
- Makes use of the wire-library supported by the Arduino IDE for I2C
As you can see the code specifically adresses coding newbies (like me :)) as it runs on the Arduino IDE (tested in 1.6.5) without any further hassles. It is easy to read as it makes use of the wire-library instead of bit banging the I2C on the code level. And I tried my best to write a lot of comments in the lines.... Downside? You'll need the Arduino IDE.
The code calls on and provides the following functions:
SetFrequency(freq)...Sets "freq" [in Hz] as output frequency
SetPower(x)..........Selects the output power level (1 <= x <= 4)
TX_ON()..............Switches transmitter on
TX_OFF().............Switches transmitter off (and park mode on)
SetParkMode()........Initializes park mode at 150 Mhz
NOTE: QRP Labs tested the actual frequency range of the Si5351A outputs. The minimum frequency configuration with 27MHz crystal produces 3.515kHz output. The maximum frequency appears to be an internal limitation (not limited by the configuration) and was approximately 292MHz. Of course, outside the specified range of the datasheet, there are no guarantees...