Skip to content

Instantly share code, notes, and snippets.

View la3pna's full-sized avatar

Thomas S. Knutsen la3pna

  • Drammen, NORWAY
View GitHub Profile
[00:06] <LA3PNA2> NT7S, when you find a break, would you mind sketchin out how you determined the PLL parameters for the Si? I kinda would like to use that if I do a beacon
[00:09] <NT7S> my algorithm?
[00:12] <LA3PNA2> more like, if we could figure out a program that determines the PLL freq and such when you input your wanted frequency
[00:13] <NT7S> ah
[00:14] <LA3PNA2> basicaly I'd like to be able to use that in the beacon
[00:14] <LA3PNA2> but, you should get on the JT9 first
[00:14] <NT7S> the general strategy is find a PLL frequency that is the highest integer divisor for the output frequency
[00:15] <NT7S> then tweak the PLL frequency the PPB to correct for the ref osc error
[00:15] <NT7S> so the divider for the PLL synth will not be an integer divider, but in many cases the multisynth will be
[00:16] <LA3PNA2> ah, so you aim for the multisynt to be a integer
#include "si5351.h"
#include "Wire.h"
Si5351 si5351;
unsigned long long n = 600;
bool set_phase90(unsigned long long frequency)
{
unsigned long long pll_freq = frequency * n;
@la3pna
la3pna / sweeper
Last active October 31, 2021 17:06
Si5351 Simple Sweep Generator
/*
Si5351 Simple Sweep Generator
connect Si5351 to I2C
Sweep out is on pin 5, ranging from 0-5V (3.3V).
Use a filter on sweep out voltage. 100K + 1uF should be a good start.
A op-amp can be used to improve the filtering of the DC voltage.
Copyright (c) 2016 Thomas S. Knutsen <[email protected]>
%-- 02.11.2017 00.02 --%
f = -300:1:300
c = (f-32)/1.8
c_t = f/2
c_r = (f/10)*3
err_t = c_t-c
err_r = c_r-c
err_c = c-c
plot(c,err_t)
hold on