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 
33  int16_t begin();
34 
44  int16_t tone(uint16_t freq, bool autoStart = true);
45 
51  int16_t noTone();
52 
53 #ifndef RADIOLIB_GODMODE
54  private:
55 #endif
56  PhysicalLayer* _phy;
57  RADIOLIB_PIN_TYPE _pin;
58 
59  // allow specific classes access the private PhysicalLayer pointer
60  friend class RTTYClient;
61  friend class MorseClient;
62  friend class HellClient;
63  friend class SSTVClient;
64  friend class AX25Client;
65 };
66 
67 #endif
68 
69 #endif
HellClient
Client for Hellschreiber transmissions.
Definition: Hellschreiber.h:89
AFSKClient
Client for audio-based transmissions. Requires Arduino tone() function, and a module capable of direc...
Definition: AFSK.h:17
AX25Client
Client for AX25 communication.
Definition: AX25.h:279
AFSKClient::noTone
int16_t noTone()
Stops transmitting audio tone.
Definition: AFSK.cpp:26
AFSKClient::tone
int16_t tone(uint16_t freq, bool autoStart=true)
Start transmitting audio tone.
Definition: AFSK.cpp:12
AFSKClient::AFSKClient
AFSKClient(PhysicalLayer *phy, RADIOLIB_PIN_TYPE pin)
Default contructor.
Definition: AFSK.cpp:4
MorseClient
Client for Morse Code communication. The public interface is the same as Arduino Serial.
Definition: Morse.h:89
PhysicalLayer
Provides common interface for protocols that run on LoRa/FSK modules, such as RTTY or LoRaWAN....
Definition: PhysicalLayer.h:14
RTTYClient
Client for RTTY communication. The public interface is the same as Arduino Serial.
Definition: RTTY.h:88
SSTVClient
Client for SSTV transmissions.
Definition: SSTV.h:120
AFSKClient::begin
int16_t begin()
Initialization method.
Definition: AFSK.cpp:8