let HSTone be generated by HamShield itself
This commit is contained in:
parent
1d0eb281e2
commit
12fd074aed
|
@ -74,6 +74,7 @@ void loop() {
|
|||
//Serial.println(messagebuff);
|
||||
prepMessage();
|
||||
msgptr = 0;
|
||||
messagebuff = "";
|
||||
Serial.print("!!");
|
||||
}
|
||||
else {
|
||||
|
@ -140,7 +141,6 @@ void prepMessage() {
|
|||
}
|
||||
Serial.println("Done sending");
|
||||
radio.setModeReceive();
|
||||
messagebuff = "";
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -1062,6 +1062,24 @@ void HamShield::setDTMFCode(uint16_t code){
|
|||
|
||||
}
|
||||
|
||||
// Tone Transmission
|
||||
|
||||
|
||||
void HamShield::HStone(uint8_t pin, unsigned int frequency) {
|
||||
HSwriteBitsW(devAddr, 0x79, 15, 2, 0x3); // transmit single tone (not dtmf)
|
||||
HSwriteBitsW(devAddr, A1846S_DTMF_ENABLE_REG, 15, 2, 0x1); // transmit single tone (not dtmf)
|
||||
|
||||
// bypass pre/de-emphasis
|
||||
HSwriteBitsW(devAddr, A1846S_FILTER_REG, A1846S_EMPH_FILTER_EN, 1, 1);
|
||||
|
||||
HSwriteWord(devAddr, A1846S_TONE1_FREQ, frequency*10);
|
||||
setTxSourceTone1();
|
||||
}
|
||||
void HamShield::HSnoTone(uint8_t pin) {
|
||||
HSwriteBitsW(devAddr, A1846S_DTMF_ENABLE_REG, 15, 2, 0x0); // disable tone and dtmf
|
||||
setTxSourceMic();
|
||||
}
|
||||
|
||||
// Tone detection
|
||||
void HamShield::lookForTone(uint16_t t_hz) {
|
||||
float tone_hz = (float) t_hz;
|
||||
|
|
|
@ -398,6 +398,8 @@ class HamShield {
|
|||
void setDTMFCode(uint16_t code);
|
||||
|
||||
// Tone
|
||||
void HStone(uint8_t pin, unsigned int frequency);
|
||||
void HSnoTone(uint8_t pin);
|
||||
void lookForTone(uint16_t tone_hz);
|
||||
uint8_t toneDetected();
|
||||
|
||||
|
|
|
@ -145,23 +145,3 @@ void HSdelay(unsigned long ms) {
|
|||
void HSdelayMicroseconds(unsigned int us) {
|
||||
delayMicroseconds(us);
|
||||
}
|
||||
|
||||
void HStone(uint8_t pin, unsigned int frequency) {
|
||||
#if defined(ARDUINO_ARCH_NRF52)
|
||||
//TODO
|
||||
#elif defined(ARDUINO)
|
||||
tone(pin, frequency);
|
||||
#else
|
||||
softToneCreate(pin);
|
||||
softToneWrite(pin, frequency);
|
||||
#endif
|
||||
}
|
||||
void HSnoTone(uint8_t pin) {
|
||||
#if defined(ARDUINO_ARCH_NRF52)
|
||||
//TODO
|
||||
#elif defined(ARDUINO)
|
||||
noTone(pin);
|
||||
#else
|
||||
softToneWrite(pin, 0);
|
||||
#endif
|
||||
}
|
|
@ -41,8 +41,5 @@ unsigned long HSmillis();
|
|||
void HSdelay(unsigned long ms);
|
||||
void HSdelayMicroseconds(unsigned int us);
|
||||
|
||||
void HStone(uint8_t pin, unsigned int frequency);
|
||||
void HSnoTone(uint8_t pin);
|
||||
|
||||
|
||||
#endif /* _HAMSHIELD_COMMS_H_ */
|
||||
|
|
Loading…
Reference in New Issue