76 #define LTC6948_CS QUIKEVAL_CS 81 #define LTC6948_ALCCAL 1 82 #define LTC6948_ALCEN 2
83 #define LTC6948_ALCHI 3
84 #define LTC6948_ALCLO 4
85 #define LTC6948_ALCMON 5
86 #define LTC6948_ALCULOK 6
87 #define LTC6948_AUTOCAL 7
88 #define LTC6948_AUTORST 8
90 #define LTC6948_BST 10
91 #define LTC6948_CAL 11
93 #define LTC6948_CPCHI 13
94 #define LTC6948_CPCLO 14
95 #define LTC6948_CPDN 15
96 #define LTC6948_CPINV 16
97 #define LTC6948_CPLE 17
98 #define LTC6948_CPMID 18
99 #define LTC6948_CPRST 19
100 #define LTC6948_CPUP 20
101 #define LTC6948_CPWIDE 21
102 #define LTC6948_DITHEN 22
103 #define LTC6948_FILT 23
104 #define LTC6948_INTN 24
105 #define LTC6948_LDOEN 25
106 #define LTC6948_LDOV 26
107 #define LTC6948_LKCT 27
108 #define LTC6948_LKWIN 28
109 #define LTC6948_LOCK 29
110 #define LTC6948_MTCAL 30
111 #define LTC6948_ND 31
112 #define LTC6948_NUM 32
113 #define LTC6948_OD 33
114 #define LTC6948_OMUTE 34
115 #define LTC6948_PART 35
116 #define LTC6948_PDALL 36
117 #define LTC6948_PDFN 37
118 #define LTC6948_PDOUT 38
119 #define LTC6948_PDPLL 39
120 #define LTC6948_PDVCO 40
121 #define LTC6948_POR 41
122 #define LTC6948_RD 42
123 #define LTC6948_REV 43
124 #define LTC6948_RFO 44
125 #define LTC6948_RSTFN 45
126 #define LTC6948_SEED 46
127 #define LTC6948_THI 47
128 #define LTC6948_TLO 48
129 #define LTC6948_UNLOK 49
133 #define LTC6948_NUM_REGADDR 15 134 #define LTC6948_NUM_REGFIELD 50
141 #define OneMHz 1000000L 143 #define LTC6948_1_MAXFREQ 3740 144 #define LTC6948_2_MAXFREQ 4910
145 #define LTC6948_3_MAXFREQ 5790
146 #define LTC6948_4_MAXFREQ 6390
148 #define LTC6948_1_MINFREQ 2240 149 #define LTC6948_2_MINFREQ 3080
150 #define LTC6948_3_MINFREQ 3840
151 #define LTC6948_4_MINFREQ 4200
153 #define LTC6948_MIN_REF_FREQ 10 154 #define LTC6948_MAX_REF_FREQ 425
392 void HZto64(
unsigned long an[],
393 unsigned long MHzPart,
403 void init64(
unsigned long an[],
404 unsigned long bigPart,
405 unsigned long littlePart
411 void shl64(
unsigned long an[]
417 void shl64by(
unsigned long an[],
424 void shr64(
unsigned long an[]
430 void shr64by(
unsigned long an[],
437 void add64(
unsigned long an[],
444 void sub64(
unsigned long an[],
451 boolean eq64(
unsigned long an[],
458 boolean lt64(
unsigned long an[],
465 void div64(
unsigned long num[],
473 void mul64(
unsigned long an[],
480 void prt(
unsigned long an[]
uint8_t get_LTC6948_SPI_FIELD_RW(uint8_t f)
returns if the given field name is (0)read/write or (1)read_only field
void LTC6948_init()
Initializes the SPI MAP arrays The values set in initialization are used all the LTC6948 SPI/WRITE an...
void shr64by(unsigned long an[], uint8_t shiftnum)
Multi Bit shift right of equivalent 64 bit number (an[] = an[]>>shiftnum)
void LTC6948_set_frf(char part_version[])
FUNCTION: LTC6948_set_frf Calculates the integer (N), fractional (NUM) and output divider (OD) SPI va...
void prt(unsigned long an[])
Prints HEX representation of 64 bit an.
boolean lt64(unsigned long an[], unsigned long ann[])
64 bit, if an < ann, then true
void LTC6948_write(uint8_t cs, uint8_t address, uint8_t Data)
LTC6948 Write Single Address writes 8 bit Data field to LTC6948.
void shl64by(unsigned long an[], uint8_t shiftnum)
Multi Bit shift left of equivalent 64 bit number (an[] = an[]<<shiftnum)
boolean eq64(unsigned long an[], unsigned long ann[])
64 bit, if an == ann, then true
uint8_t get_LTC6948_SPI_FIELD_NUMBITS(uint8_t f)
returns the number of bits for a given field name in the SPI map
void shl64(unsigned long an[])
Single Bit shift left of equivalent 64 bit number (an[] = an[]<<1)
uint8_t LTC6948_read(uint8_t cs, int8_t address)
LTC6948 Read Single Address reads 8 bit Data field to LTC6948.
void set_LTC6948_global_fref(unsigned long fref_MHz, unsigned long fref_Hz)
sets globals LTC6948_Fref_MHz and LTC6948_Fref_Hz
unsigned long get_LTC6948_global_fref_Hz()
returns global LTC6948_Fref_Hz
void set_LTC6948_global_frf(unsigned long frf_MHz, unsigned long frf_Hz)
sets globals LTC6948_Frf_MHz and LTC6948_Frf_Hz
void set_LTC6948_ALLREGS(uint8_t cs, uint8_t reg01, uint8_t reg02, uint8_t reg03, uint8_t reg04, uint8_t reg05, uint8_t reg06, uint8_t reg07, uint8_t reg08, uint8_t reg09, uint8_t reg0A, uint8_t reg0B, uint8_t reg0C, uint8_t reg0D)
Writes values to ALL LTC6948 RW address.
void shr64(unsigned long an[])
Single Bit shift right of equivalent 64 bit number (an[] = an[]<<1)
void div64(unsigned long num[], unsigned long den[])
64 bit Divide, num=num/div
long get_LTC6948_SPI_FIELD(uint8_t cs, uint8_t f)
Gets the LTC6948 SPI field value calls function LTC6948_read_field, which reads specific address loca...
void mul64(unsigned long an[], unsigned long ann[])
64 bit multiply, an=an*ann
void init64(unsigned long an[], unsigned long bigPart, unsigned long littlePart)
Creates a equivalent 64 bit number from 2 32 bit numbers.
long LTC6948_read_field(uint8_t cs, uint8_t address, uint8_t MSB_loc, uint8_t numbits)
LTC6948 Read Single Field For SPI FIELDS located in 1 or multiple address locations reads specific ad...
unsigned long get_LTC6948_global_fref_MHz()
returns global LTC6948_Fref_MHz
uint8_t LTC6948_write_field(uint8_t cs, long field_data, uint8_t address, uint8_t MSB_loc, uint8_t numbits)
LTC6948 Write Single Field For SPI FIELDS in 1 or multiple address locations reads specific address/f...
void set_LTC6948_SPI_FIELD(uint8_t cs, uint8_t f, long field_data)
Sets the LTC6948 SPI field value calls function LTC6948_read_field, which reads specific address/fiel...
void add64(unsigned long an[], unsigned long ann[])
64 bit Add ann to an (an[] = an[] + ann[])
unsigned long get_LTC6948_global_frf_MHz()
returns global LTC6948_Frf_MHz
unsigned long get_LTC6948_global_frf_Hz()
returns global LTC6948_Frf_Hz
void sub64(unsigned long an[], unsigned long ann[])
64 bit Subtract ann from an (an[] = an[] - ann[])
uint8_t get_LTC6948_REGSIZE()
returns # of addresses in parts register map (array size)
unsigned long LTC6948_calc_odiv(char part_version[], unsigned long frf[2])
calculates the output divider setting based on the frf and version of LTC6948
void HZto64(unsigned long an[], unsigned long MHzPart, unsigned long HzPart)
create a 64 bit Hz number from 32 bit xxxx MHz number and 32 bit yyy yyy Hz number.