English
Language : 

AN334 Datasheet, PDF (26/44 Pages) Silicon Laboratories – ANSI C REFERENCE DESIGN WITH OPTIONAL NON-VOLATILE OUTPUT FREQUENCY
AN334
// Global VARIABLES
//-----------------------------------------------------------------------------
bit NEXT = 0;
// Flag bit that is set ISR after 'next'
// button is pressed
U8 INITIAL_HSDIV;
// HSDIV value read from the Si57x/598/599 when it
// when it is turned on
U8 INITIAL_N1;
// N1 value read from the Si57x/598/599 when it
// when it is turned on
U8 REG[6];
// Array of bits that holds the initial
// values read from the Si57x/598/599
U16 CURR_FREQ;
// Holds the index of the current frequency
// being output
U32 INITIAL_RFREQ_LONG;
// RFREQ value read from the Si57x/598/599 when it
// when it is turned on
float RFREQ;
// Fractional mulitplier used to achieve
// correct output frequency
float FXTAL;
// Will hold the value of the internal crystal
// frequency
U8* pSMB_DATA_IN;
U8 SMB_SINGLEBYTE_OUT;
U8* pSMB_DATA_OUT;
U8 SMB_DATA_LEN;
U8 WORD_ADDR;
U8 TARGET;
//U32 FRAC_BITS;
volatile bit SMB_BUSY = 0;
bit SMB_RW;
bit SMB_SENDWORDADDR;
// Global pointer for SMBus data
// All receive data is written here
// Global holder for single byte writes.
// Global pointer for SMBus data.
// All transmit data is read from here
// Global holder for number of bytes
// to send or receive in the current
// SMBus transfer.
// Global holder for the word
// address that will be accessed in
// the next transfer
// Target SMBus slave address
// Double Floating Point Precision Method
// Software flag to indicate when the
// I2C_ByteRead() or
// I2C_ByteWrite()
// functions have claimed the SMBus
// Software flag to indicate the
// direction of the current transfer
// When set, this flag causes the ISR
// to send the 8-bit <WORD_ADDR>
// after sending the slave address.
bit SMB_RANDOMREAD;
// When set, this flag causes the ISR
// to send a START signal after sending
// the word address.
26
Rev. 0.4