209 lines
		
	
	
		
			4.4 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			209 lines
		
	
	
		
			4.4 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| /**
 | |
|  * @file	   map_hal.c
 | |
|  *
 | |
|  * @copyright  Nehemis SARL reserves all rights even in the event of industrial
 | |
|  *             property rights. We reserve all rights of disposal such as
 | |
|  *             copying and passing on to third parties.
 | |
|  *
 | |
|  * @brief	   Mapping of the hardware interfaces.
 | |
|  *
 | |
|  */
 | |
| 
 | |
| /******************************************************************************
 | |
|  * Include Header Files
 | |
|  ******************************************************************************/
 | |
| #include "nms_types.h"
 | |
| #include "map_hal.h"
 | |
| #include "stm32g4xx_hal_tim.h"
 | |
| /******************************************************************************
 | |
|  * Macro constant declarations
 | |
|  ******************************************************************************/
 | |
| extern TIM_HandleTypeDef htim7;
 | |
| /******************************************************************************
 | |
|  * Extern Function Declarations
 | |
|  ******************************************************************************/
 | |
| uint32 MapHalGpio( MapHalGpioPin_en pin_en, uint16* targetPin_pu16,  GPIO_TypeDef** targetPort_ppst)
 | |
| {
 | |
|     uint32 error_u32 = NMS_ERR_DEFAULT;
 | |
| 
 | |
|     if(targetPin_pu16 == NULL || targetPort_ppst == NULL)
 | |
|     {
 | |
|         error_u32 = NMS_ERR_UNKNOWN;
 | |
|     }
 | |
|     else
 | |
|     {
 | |
|         switch (pin_en)
 | |
|         {
 | |
|         case MAP_HAL_PMP_ENABLE:
 | |
| 
 | |
|             *targetPin_pu16     = GPIO_PIN_15;
 | |
|             *targetPort_ppst    = GPIOB;
 | |
|             error_u32           = NMS_ERR_NONE;
 | |
| 
 | |
|             break;
 | |
| 
 | |
|         default:
 | |
| 
 | |
|             error_u32 = NMS_ERR_UNKNOWN;
 | |
| 
 | |
|             break;
 | |
|         }
 | |
|     }
 | |
| 
 | |
|     return error_u32;
 | |
| }
 | |
| 
 | |
| 
 | |
| uint32 MapHalGpioCallback(uint16 targetPin_u16, MapHalGpioPin_en * pin_pen)
 | |
| {
 | |
|     uint32 error_u32 = NMS_ERR_DEFAULT;
 | |
| 
 | |
|     switch (targetPin_u16)
 | |
|     {
 | |
|     case GPIO_PIN_15:
 | |
| 
 | |
|         *pin_pen  = MAP_HAL_PMP_ENABLE;
 | |
|         error_u32 = NMS_ERR_NONE;
 | |
| 
 | |
|         break;
 | |
| 
 | |
|     default:
 | |
| 
 | |
|         error_u32 = NMS_ERR_UNKNOWN;
 | |
| 
 | |
|         break;
 | |
|     }
 | |
| 
 | |
|     return error_u32;
 | |
| }
 | |
| 
 | |
| 
 | |
| uint32 MapHalTimerModule(MapHalTimerModule_en timer_en, TIM_HandleTypeDef ** targetModule_ppst)
 | |
| {
 | |
|     uint32 error_u32 = NMS_ERR_DEFAULT;
 | |
| 
 | |
|     if(targetModule_ppst != NULL)
 | |
|     {
 | |
|         switch(timer_en)
 | |
|         {
 | |
|             case MAP_HAL_TIMER_RTOS:
 | |
|                 *targetModule_ppst = &htim7;
 | |
|                 error_u32 = NMS_ERR_NONE;
 | |
|                 break;
 | |
| 
 | |
|             default:
 | |
|                 error_u32 = NMS_ERR_UNKNOWN;
 | |
|                 break;
 | |
|         }
 | |
|     }
 | |
|     else
 | |
|     {
 | |
|         error_u32 = NMS_ERR_UNKNOWN;
 | |
|     }
 | |
| 
 | |
|     return error_u32;
 | |
| }
 | |
| 
 | |
| 
 | |
| uint32 MapHalTimerCallback(TIM_HandleTypeDef ** targetModule_ppst, MapHalTimerModule_en * timer_pen)
 | |
| {
 | |
|     uint32 error_u32 = NMS_ERR_DEFAULT;
 | |
| 
 | |
|     if(*targetModule_ppst != NULL)
 | |
|     {
 | |
|         if (*targetModule_ppst == &htim17)
 | |
|         {
 | |
|             *timer_pen = MAP_HAL_TIMER_RTOS;
 | |
|             error_u32  = NMS_ERR_NONE;
 | |
|         }
 | |
| 
 | |
|     }
 | |
|     else
 | |
|     {
 | |
|         error_u32 = NMS_ERR_UNKNOWN;
 | |
|     }
 | |
| 
 | |
|     return error_u32;
 | |
| }
 | |
| 
 | |
| 
 | |
| uint32 MapHalAdcModule(MapHalAdcModule_en adc_en, ADC_HandleTypeDef ** targetModule_ppst)
 | |
| {
 | |
|     uint32 error_u32 = NMS_ERR_DEFAULT;
 | |
| 
 | |
|     if(targetModule_ppst != NULL)
 | |
|     {
 | |
|         switch(adc_en)
 | |
|         {
 | |
|             case MAP_HAL_ADC_1:
 | |
|                 *targetModule_ppst = &hadc1;
 | |
|                 error_u32 = NMS_ERR_NONE;
 | |
|                 break;
 | |
| 
 | |
| 
 | |
|             default:
 | |
|             	error_u32 = NMS_ERR_UNKNOWN;
 | |
|                 break;
 | |
|         }
 | |
|     }
 | |
|     else
 | |
|     {
 | |
|     	error_u32 = NMS_ERR_UNKNOWN;
 | |
|     }
 | |
| 
 | |
|     return error_u32;
 | |
| }
 | |
| 
 | |
| 
 | |
| extern uint32 MapHalAdcCallback(ADC_HandleTypeDef *targetModule_pst, MapHalAdcModule_en *adcModule_en)
 | |
| {
 | |
|     uint32 error_u32 = NMS_ERR_DEFAULT;
 | |
| 
 | |
|     if (targetModule_pst != NULL)
 | |
|     {
 | |
|         if (targetModule_pst == &hadc1)
 | |
|         {
 | |
|             *adcModule_en = MAP_HAL_ADC_1;
 | |
|             error_u32 = NMS_ERR_NONE;
 | |
|         }
 | |
|         else
 | |
|         {
 | |
|             error_u32 = NMS_ERR_UNKNOWN;
 | |
|         }
 | |
|     }
 | |
|     else
 | |
|     {
 | |
|         error_u32 = NMS_ERR_UNKNOWN;
 | |
|     }
 | |
| 
 | |
|     return error_u32;
 | |
| }
 | |
| 
 | |
| 
 | |
| uint32 MapHalI2cModule(MapHalI2cModule_en module_en, I2C_HandleTypeDef ** targetModule_ppst)
 | |
| {
 | |
|     uint32 error_u32 = NMS_ERR_DEFAULT;
 | |
| 
 | |
|     if(targetModule_ppst != NULL)
 | |
|     {
 | |
|         switch(module_en)
 | |
|         {
 | |
|             case MAP_HAL_GRUNDFOS_PMP_I2C_HANDLE:
 | |
|                 *targetModule_ppst = &hi2c4;
 | |
|                 error_u32 = NMS_ERR_NONE;
 | |
|                 break;
 | |
| 
 | |
| 
 | |
|             default:
 | |
|             	error_u32 = NMS_ERR_UNKNOWN;
 | |
|                 break;
 | |
|         }
 | |
|     }
 | |
|     else
 | |
|     {
 | |
|     	error_u32 = NMS_ERR_UNKNOWN;
 | |
|     }
 | |
| 
 | |
|     return error_u32;
 | |
| }
 |