[CC1101] Added methods to clear GDO action
This commit is contained in:
parent
fdb8993336
commit
dedcd4163f
2 changed files with 21 additions and 0 deletions
|
@ -191,6 +191,10 @@ void CC1101::setGdo0Action(void (*func)(void), uint8_t dir) {
|
|||
attachInterrupt(digitalPinToInterrupt(_mod->getIrq()), func, dir);
|
||||
}
|
||||
|
||||
void CC1101::clearGdo0Action() {
|
||||
detachInterrupt(digitalPinToInterrupt(_mod->getIrq()));
|
||||
}
|
||||
|
||||
void CC1101::setGdo2Action(void (*func)(void), uint8_t dir) {
|
||||
if(_mod->getGpio() != RADIOLIB_PIN_UNUSED) {
|
||||
return;
|
||||
|
@ -199,6 +203,13 @@ void CC1101::setGdo2Action(void (*func)(void), uint8_t dir) {
|
|||
attachInterrupt(digitalPinToInterrupt(_mod->getGpio()), func, dir);
|
||||
}
|
||||
|
||||
void CC1101::clearGdo2Action() {
|
||||
if(_mod->getGpio() != RADIOLIB_PIN_UNUSED) {
|
||||
return;
|
||||
}
|
||||
detachInterrupt(digitalPinToInterrupt(_mod->getGpio()));
|
||||
}
|
||||
|
||||
int16_t CC1101::startTransmit(uint8_t* data, size_t len, uint8_t addr) {
|
||||
// check packet length
|
||||
if(len > CC1101_MAX_PACKET_LENGTH) {
|
||||
|
|
|
@ -601,6 +601,11 @@ class CC1101: public PhysicalLayer {
|
|||
*/
|
||||
void setGdo0Action(void (*func)(void), uint8_t dir = FALLING);
|
||||
|
||||
/*!
|
||||
\brief Clears interrupt service routine to call when GDO0 activates.
|
||||
*/
|
||||
void clearGdo0Action();
|
||||
|
||||
/*!
|
||||
\brief Sets interrupt service routine to call when GDO2 activates.
|
||||
|
||||
|
@ -610,6 +615,11 @@ class CC1101: public PhysicalLayer {
|
|||
*/
|
||||
void setGdo2Action(void (*func)(void), uint8_t dir = FALLING);
|
||||
|
||||
/*!
|
||||
\brief Clears interrupt service routine to call when GDO0 activates.
|
||||
*/
|
||||
void clearGdo2Action();
|
||||
|
||||
/*!
|
||||
\brief Interrupt-driven binary transmit method.
|
||||
Overloads for string-based transmissions are implemented in PhysicalLayer.
|
||||
|
|
Loading…
Add table
Reference in a new issue