made certain library functions private to ensure they aren't improperly called from an arduino sketch
This commit is contained in:
parent
28f1ff016c
commit
c107df93dd
94
HamShield.h
94
HamShield.h
|
@ -258,6 +258,9 @@
|
||||||
|
|
||||||
class HamShield {
|
class HamShield {
|
||||||
public:
|
public:
|
||||||
|
// public singleton for ISRs to reference
|
||||||
|
static HamShield *sHamShield; // HamShield singleton, used for ISRs mostly
|
||||||
|
|
||||||
HamShield();
|
HamShield();
|
||||||
HamShield(uint8_t address);
|
HamShield(uint8_t address);
|
||||||
|
|
||||||
|
@ -268,41 +271,12 @@ class HamShield {
|
||||||
uint16_t readCtlReg();
|
uint16_t readCtlReg();
|
||||||
void softReset();
|
void softReset();
|
||||||
|
|
||||||
// center frequency
|
// restrictions control
|
||||||
void setFrequency(uint32_t freq_khz);
|
void dangerMode();
|
||||||
uint32_t getFrequency();
|
void safeMode();
|
||||||
|
|
||||||
// band
|
|
||||||
void setTxBand2m();
|
|
||||||
void setTxBand1_2m();
|
|
||||||
void setTxBand70cm();
|
|
||||||
bool frequency(uint32_t freq_khz);
|
bool frequency(uint32_t freq_khz);
|
||||||
|
uint32_t getFrequency();
|
||||||
// xtal frequency (kHz)
|
|
||||||
// 12-14MHz crystal: this reg is set to crystal freq_khz
|
|
||||||
// 24-28MHz crystal: this reg is set to crystal freq_khz / 2
|
|
||||||
void setXtalFreq(uint16_t freq_kHz);
|
|
||||||
uint16_t getXtalFreq();
|
|
||||||
|
|
||||||
// adclk frequency (kHz)
|
|
||||||
// 12-14MHz crystal: this reg is set to crystal freq_khz / 2
|
|
||||||
// 24-28MHz crystal: this reg is set to crystal freq_khz / 4
|
|
||||||
void setAdcClkFreq(uint16_t freq_kHz);
|
|
||||||
uint16_t getAdcClkFreq();
|
|
||||||
|
|
||||||
// clk mode
|
|
||||||
// 12-14MHz: set to 1
|
|
||||||
// 24-28MHz: set to 0
|
|
||||||
void setClkMode(bool LFClk);
|
|
||||||
bool getClkMode();
|
|
||||||
|
|
||||||
// clk example
|
|
||||||
// 12.8MHz clock
|
|
||||||
// A1846S_XTAL_FREQ_REG[15:0]= xtal_freq<15:0>=12.8*1000=12800
|
|
||||||
// A1846S_ADCLK_FREQ_REG[12:0] =adclk_freq<15:0>=(12.8/2)*1000=6400
|
|
||||||
// A1846S_CLK_MODE_REG[0]= clk_mode =1
|
|
||||||
|
|
||||||
// TX/RX control
|
|
||||||
|
|
||||||
// channel mode
|
// channel mode
|
||||||
// 11 - 25kHz channel
|
// 11 - 25kHz channel
|
||||||
|
@ -311,13 +285,6 @@ class HamShield {
|
||||||
void setChanMode(uint16_t mode);
|
void setChanMode(uint16_t mode);
|
||||||
uint16_t getChanMode();
|
uint16_t getChanMode();
|
||||||
|
|
||||||
// choose tx or rx
|
|
||||||
void setTX(bool on_noff);
|
|
||||||
bool getTX();
|
|
||||||
|
|
||||||
void setRX(bool on_noff);
|
|
||||||
bool getRX();
|
|
||||||
|
|
||||||
void setModeTransmit(); // turn off rx, turn on tx
|
void setModeTransmit(); // turn off rx, turn on tx
|
||||||
void setModeReceive(); // turn on rx, turn off tx
|
void setModeReceive(); // turn on rx, turn off tx
|
||||||
void setModeOff(); // turn off rx, turn off tx, set pwr_dwn bit
|
void setModeOff(); // turn off rx, turn off tx, set pwr_dwn bit
|
||||||
|
@ -335,6 +302,7 @@ class HamShield {
|
||||||
void setTxSourceNone();
|
void setTxSourceNone();
|
||||||
uint16_t getTxSource();
|
uint16_t getTxSource();
|
||||||
|
|
||||||
|
// PA bias voltage is unused (maybe remove this)
|
||||||
// set PA_bias voltage
|
// set PA_bias voltage
|
||||||
// 000000: 1.01V
|
// 000000: 1.01V
|
||||||
// 000001:1.05V
|
// 000001:1.05V
|
||||||
|
@ -513,11 +481,6 @@ class HamShield {
|
||||||
bool setWXChannel(uint8_t channel);
|
bool setWXChannel(uint8_t channel);
|
||||||
uint8_t scanWXChannel();
|
uint8_t scanWXChannel();
|
||||||
|
|
||||||
|
|
||||||
// restrictions control
|
|
||||||
void dangerMode();
|
|
||||||
void safeMode();
|
|
||||||
|
|
||||||
// utilities
|
// utilities
|
||||||
uint32_t scanMode(uint32_t start,uint32_t stop, uint8_t speed, uint16_t step, uint16_t threshold);
|
uint32_t scanMode(uint32_t start,uint32_t stop, uint8_t speed, uint16_t step, uint16_t threshold);
|
||||||
uint32_t findWhitespace(uint32_t start,uint32_t stop, uint8_t dwell, uint16_t step, uint16_t threshold);
|
uint32_t findWhitespace(uint32_t start,uint32_t stop, uint8_t dwell, uint16_t step, uint16_t threshold);
|
||||||
|
@ -555,16 +518,39 @@ class HamShield {
|
||||||
uint32_t MURS[];
|
uint32_t MURS[];
|
||||||
uint32_t WX[];
|
uint32_t WX[];
|
||||||
|
|
||||||
// public singleton for ISRs to reference
|
// private utility functions
|
||||||
public:
|
// these functions should not be called in the Arduino sketch
|
||||||
static HamShield *sHamShield; // HamShield singleton, used for ISRs mostly
|
// just use the above public functions to do everything
|
||||||
|
|
||||||
// int8_t A1846S::readWord(uint8_t devAddr, uint8_t regAddr, uint16_t *data, uint16_t timeout);
|
void setFrequency(uint32_t freq_khz);
|
||||||
// int8_t A1846S::readBits(uint8_t devAddr, uint8_t regAddr, uint8_t bitStart, uint8_t length, uint16_t *data, uint16_t timeout);
|
void setTxBand2m();
|
||||||
// int8_t A1846S::readBit(uint8_t devAddr, uint8_t regAddr, uint8_t bitNum, uint16_t *data, uint16_t timeout);
|
void setTxBand1_2m();
|
||||||
// int8_t A1846S::writeWord(uint8_t devAddr, uint8_t regAddr, uint16_t *data, uint16_t timeout);
|
void setTxBand70cm();
|
||||||
// bool A1846S::writeBits(uint8_t devAddr, uint8_t regAddr, uint8_t bitStart, uint8_t length, uint16_t data);
|
|
||||||
// bool A1846S::writeBit(uint8_t devAddr, uint8_t regAddr, uint8_t bitNum, uint16_t data);
|
// xtal frequency (kHz)
|
||||||
|
// 12-14MHz crystal: this reg is set to crystal freq_khz
|
||||||
|
// 24-28MHz crystal: this reg is set to crystal freq_khz / 2
|
||||||
|
void setXtalFreq(uint16_t freq_kHz);
|
||||||
|
uint16_t getXtalFreq();
|
||||||
|
|
||||||
|
// adclk frequency (kHz)
|
||||||
|
// 12-14MHz crystal: this reg is set to crystal freq_khz / 2
|
||||||
|
// 24-28MHz crystal: this reg is set to crystal freq_khz / 4
|
||||||
|
void setAdcClkFreq(uint16_t freq_kHz);
|
||||||
|
uint16_t getAdcClkFreq();
|
||||||
|
|
||||||
|
// clk mode
|
||||||
|
// 12-14MHz: set to 1
|
||||||
|
// 24-28MHz: set to 0
|
||||||
|
void setClkMode(bool LFClk);
|
||||||
|
bool getClkMode();
|
||||||
|
|
||||||
|
// choose tx or rx
|
||||||
|
void setTX(bool on_noff);
|
||||||
|
bool getTX();
|
||||||
|
|
||||||
|
void setRX(bool on_noff);
|
||||||
|
bool getRX();
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif /* _HAMSHIELD_H_ */
|
#endif /* _HAMSHIELD_H_ */
|
||||||
|
|
Loading…
Reference in New Issue