cube-kl/firmware/include/wspr.h

46 lines
1.2 KiB
C

#ifndef __WSPR_H__
#define __WSPR_H__ __WSPR_H__
#include <stdint.h>
#include "si5351.h"
// For PLL with 800MHz
static const struct si5351_params WSPR_SYMBOLS[4] = {
// 7040100.000000: 113 + 44687 / 70401
// actual: 7040100.000000
{14033, 17455, 70401},
// 7040101.464844: 113 + 447801 / 705503
// actual: 7040101.464844
{14033, 172785, 705503},
// 7040102.929688: 113 + 38515 / 60682
// actual: 7040102.929688
{14033, 14678, 60682},
// 7040104.394531: 113 + 123233 / 194166
// actual: 7040104.394531
{14033, 46378, 194166},
};
static const uint8_t WSPR_LENGTH = 162;
static const uint16_t WSPR_PERIOD = 683;
// DL1SSK at JN39we
static uint8_t default_wspr_msg[162] = {
1, 1, 0, 0, 2, 0, 0, 2, 1, 0, 0, 0, 1, 3, 3, 2, 2, 2, 3, 2, 0, 1, 0, 3, 1, 1, 1, 0, 2,
2, 0, 2, 2, 0, 3, 0, 0, 1, 0, 3, 2, 0, 0, 0, 0, 0, 3, 0, 1, 1, 0, 0, 3, 1, 2, 1, 0, 2,
2, 3, 1, 2, 1, 2, 2, 2, 2, 3, 3, 2, 1, 2, 1, 2, 1, 2, 3, 2, 0, 3, 2, 0, 1, 0, 3, 3, 0,
2, 2, 1, 1, 2, 1, 0, 1, 0, 2, 0, 1, 2, 2, 2, 0, 0, 3, 2, 2, 3, 0, 0, 1, 3, 3, 2, 3, 3,
0, 2, 3, 1, 2, 1, 0, 2, 2, 3, 3, 3, 0, 2, 2, 0, 2, 1, 2, 1, 2, 0, 1, 3, 0, 0, 0, 0, 0,
2, 0, 3, 1, 0, 1, 2, 3, 1, 2, 2, 2, 1, 1, 0, 0, 2
};
void wspr_transmit(enum si5351_multisynth synth, uint8_t *msg);
#endif