fsfw-hal/stm32h7/interrupts.c

36 lines
956 B
C

#include "interrupts.h"
#include <stddef.h>
void Default_Handler();
void (*dma2_stream3_user_handler) (void* args) = NULL;
void * dma2_stream3_user_args = NULL;
void (*dma2_stream2_user_handler) (void* args) = NULL;
void * dma2_stream2_user_args = NULL;
void assign_dma2_stream2_user_handler(user_handler_t user_handler, user_args_t user_args) {
dma2_stream2_user_handler = user_handler;
dma2_stream2_user_args = user_args;
}
void assign_dma2_stream3_user_handler(user_handler_t user_handler, user_args_t user_args) {
dma2_stream3_user_handler = user_handler;
dma2_stream3_user_args = user_args;
}
void DMA2_Stream3_IRQHandler() {
if(dma2_stream3_user_handler != NULL) {
dma2_stream3_user_handler(dma2_stream3_user_args);
}
Default_Handler();
}
void DMA2_Stream2_IRQHandler() {
if(dma2_stream2_user_handler != NULL) {
dma2_stream2_user_handler(dma2_stream2_user_args);
}
Default_Handler();
}