RadioLib
Universal wireless communication library for Arduino
AFSK.h
1 #if !defined(_RADIOLIB_AFSK_H)
2 #define _RADIOLIB_AFSK_H
3 
4 #include "../../TypeDef.h"
5 
6 #if !defined(RADIOLIB_EXCLUDE_AFSK)
7 
8 #include "../../Module.h"
9 
10 #include "../PhysicalLayer/PhysicalLayer.h"
11 
17 class AFSKClient {
18  public:
26  AFSKClient(PhysicalLayer* phy, RADIOLIB_PIN_TYPE pin);
27 
37  int16_t tone(uint16_t freq, bool autoStart = true);
38 
44  int16_t noTone();
45 
46 #ifndef RADIOLIB_GODMODE
47  private:
48 #endif
49  PhysicalLayer* _phy;
50  RADIOLIB_PIN_TYPE _pin;
51 
52  // allow specific classes access the private PhysicalLayer pointer
53  friend class RTTYClient;
54  friend class MorseClient;
55  friend class HellClient;
56  friend class SSTVClient;
57  friend class AX25Client;
58 };
59 
60 #endif
61 
62 #endif
Client for audio-based transmissions. Requires Arduino tone() function, and a module capable of direc...
Definition: AFSK.h:17
int16_t noTone()
Stops transmitting audio tone.
Definition: AFSK.cpp:22
Client for Hellschreiber transmissions.
Definition: Hellschreiber.h:89
AFSKClient(PhysicalLayer *phy, RADIOLIB_PIN_TYPE pin)
Default contructor.
Definition: AFSK.cpp:4
Provides common interface for protocols that run on LoRa/FSK modules, such as RTTY or LoRaWAN...
Definition: PhysicalLayer.h:13
Client for RTTY communication. The public interface is the same as Arduino Serial.
Definition: RTTY.h:88
Client for SSTV transmissions.
Definition: SSTV.h:120
Client for AX25 communication.
Definition: AX25.h:279
Client for Morse Code communication. The public interface is the same as Arduino Serial.
Definition: Morse.h:89
int16_t tone(uint16_t freq, bool autoStart=true)
Start transmitting audio tone.
Definition: AFSK.cpp:8