From 3b5a0ef169821fbab146aa6f987322c7a2724ac7 Mon Sep 17 00:00:00 2001 From: Avon Gingell <fishandmicrochips@disroot.org> Date: Mon, 5 Dec 2022 16:23:27 +0000 Subject: [PATCH] Implemented callback --- src/rfm12.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/rfm12.c b/src/rfm12.c index ec74b25..f2ff9cb 100644 --- a/src/rfm12.c +++ b/src/rfm12.c @@ -55,7 +55,7 @@ //for uart debugging #if RFM12_UART_DEBUG - #include "../examples/uart_lib/uart.h" + #include "../../uart.h" #endif #if RFM12_USE_RX_CALLBACK @@ -135,7 +135,7 @@ rfm12_control_t ctrl; #if (RFM12_USE_POLLING) void rfm12_poll(void) #else -ISR(RFM12_INT_VECT, ISR_NOBLOCK) +ISR(RFM12_INT_VECT) #endif { #ifdef USE_INT_PIN_CHECK @@ -278,6 +278,13 @@ ISR(RFM12_INT_VECT, ISR_NOBLOCK) UART_DEBUG_PUTC('D'); rf_rx_buffers[ctrl.buffer_in_num].status = STATUS_OCCUPIED; + /* Call the callback function */ + #if RFM12_USE_RX_CALLBACK + if (rfm12_rx_callback_func != 0x0000) { + rfm12_rx_callback_func(ctrl.rf_buffer_in->len, + ctrl.rf_buffer_in.buffer); + } + #endif //switch to other buffer ctrl.buffer_in_num ^= 1; -- GitLab