Files
slhal/X7/hal_pressure_wrapper.c
T

136 lines
2.3 KiB
C
Raw Normal View History

2020-10-18 19:46:38 +08:00
/*
* Include Files
*
*/
#if defined(MATLAB_MEX_FILE)
#include "tmwtypes.h"
#include "simstruc_types.h"
#else
#include "rtwtypes.h"
#endif
#include "hal_api.h"
/* %%%-SFUNWIZ_wrapper_includes_Changes_BEGIN --- EDIT HERE TO _END */
#ifdef HAL_IMPL
#include "spi_devs.h"
#endif
#include <stdint.h>
/* %%%-SFUNWIZ_wrapper_includes_Changes_END --- EDIT HERE TO _BEGIN */
#define y_width 1
/*
* Create external references here.
*
*/
/* %%%-SFUNWIZ_wrapper_externs_Changes_BEGIN --- EDIT HERE TO _END */
int pres_inited[3];
void initialize_pressure(uint8_t id)
{
switch (id)
{
case 0:
if (!pres_inited[0])
{
#ifdef HAL_IMPL
// TODO initialize pressure No.0
pres_inited[0] = 1;
#endif
}
break;
case 1:
if (!pres_inited[1])
{
#ifdef HAL_IMPL
// TODO initialize pressure No.0
pres_inited[1] = 1;
#endif
}
break;
case 2:
if (!pres_inited[2])
{
#ifdef HAL_IMPL
// TODO initialize pressure No.0
pres_inited[2] = 1;
#endif
}
break;
default:
break;
}
}
/* %%%-SFUNWIZ_wrapper_externs_Changes_END --- EDIT HERE TO _BEGIN */
/*
* Start function
*
*/
void hal_pressure_Start_wrapper(const uint8_T *id, const int_T p_width0)
{
/* %%%-SFUNWIZ_wrapper_Start_Changes_BEGIN --- EDIT HERE TO _END */
initialize_pressure(id[0]);
/* %%%-SFUNWIZ_wrapper_Start_Changes_END --- EDIT HERE TO _BEGIN */
}
/*
* Output function
*
*/
void hal_pressure_Outputs_wrapper(HAL_pressure_SI_t *pres,
int32_T *ErrorCode,
const uint8_T *id, const int_T p_width0)
{
/* %%%-SFUNWIZ_wrapper_Outputs_Changes_BEGIN --- EDIT HERE TO _END */
ErrorCode[0] = -1;
switch (id[0])
{
case 0:
if (pres_inited[0])
{
#ifdef HAL_IMPL
// TODO read pressure
ErrorCode[0] = -1;
#endif
}
break;
case 1:
if (pres_inited[id[0]])
{
#ifdef HAL_IMPL
pres->pressure = baro_ms5611_1.pressure;
pres->temperature = baro_ms5611_1.temp*0.01f;
pres->seq = baro_ms5611_1.seq;
ErrorCode[0] = 0;
#endif
}
break;
case 2:
if (pres_inited[id[0]])
{
#ifdef HAL_IMPL
pres->pressure = baro_ms5611_2.pressure;
pres->temperature = baro_ms5611_2.temp*0.01f;
pres->seq = baro_ms5611_2.seq;
ErrorCode[0] = 0;
#endif
}
break;
default:
break;
}
/* %%%-SFUNWIZ_wrapper_Outputs_Changes_END --- EDIT HERE TO _BEGIN */
}