From 23b2750e189e4e5b2fe86d63ee64b5f8595b7c59 Mon Sep 17 00:00:00 2001 From: polymurph Date: Sat, 11 Mar 2023 11:19:19 +0100 Subject: [PATCH] created HANDLE_INT_FLAG makro --- csl/stm32f042k6t6/implementation/imp_timer.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/csl/stm32f042k6t6/implementation/imp_timer.c b/csl/stm32f042k6t6/implementation/imp_timer.c index e182f8d..71eea97 100644 --- a/csl/stm32f042k6t6/implementation/imp_timer.c +++ b/csl/stm32f042k6t6/implementation/imp_timer.c @@ -3,6 +3,14 @@ #define BASE ((TIM_TypeDef *)timerBase_Addr_List[timer]) +#define HANDLE_INT_FLAG(flagReg, flagMask, intType) \ + do { \ // do{ ... }while(1) is used to insure that this makro acts as a function call + if ((flagReg) & (flagMask)) { \ // check if flag is set + (flagReg) &= ~(flagMask); \ // clear flag + ((intHandler_t)(intHandlerList[intType]))(); \ // eecute handler + } \ + } while (0) + void timerReset(timerNo_t timer) { if(timerBus_No[timer]==1)