Compare commits

..

5 Commits

5 changed files with 46 additions and 24 deletions

View File

@ -32,8 +32,9 @@ typedef enum
FRT_REGISTER_HUMIDITY = 7, /* 大气湿度 */
FRT_REGISTER_PRESSURE = 8, /* 大气压 */
FRT_REGISTER_RAIN = 9, /* 雨量 */
FRT_REGISTER_LIGHT_INTENSITY_HIGH = 10, /* 光照强度高位 */
FRT_REGISTER_LIGHT_INTENSITY_LOW = 11, /* 光照强度低位 */
FRT_REGISTER_IRRADIANCE = 10, /* 光辐射 */
// FRT_REGISTER_LIGHT_INTENSITY_HIGH = 10, /* 光照强度高位 */
// FRT_REGISTER_LIGHT_INTENSITY_LOW = 11, /* 光照强度低位 */
FRT_REGISTER_THROUGH_WIND_DIRECTION = 12, /* 极小风向 */
FRT_REGISTER_INSTANTANEOUS_WIND_DIRECTION = 13, /* 瞬时风向 */
FRT_REGISTER_PEAK_WIND_DIRECTION = 14, /* 极大风向 */

View File

@ -1079,6 +1079,7 @@ static void getTempHumiPress(void)
//置错误标志位
g_error_log.temp_error_HP203B = 1;
//错误处理
g_stMcs_Para.pressure = 0;
}
else
{

View File

@ -32,8 +32,11 @@ static u_int16_t FRT_ReadRegTemperature(void *pMsg);
static u_int16_t FRT_ReadRegHumidity(void *pMsg);
static u_int16_t FRT_ReadRegPressure(void *pMsg);
static u_int16_t FRT_ReadRegRain(void *pMsg);
static u_int16_t FRT_ReadRegLightHigh(void *pMsg);
static u_int16_t FRT_ReadRegLightLow(void *pMsg);
static u_int16_t FRT_ReadRegirradiance(void *pMsg);
//static u_int16_t FRT_ReadRegLightHigh(void *pMsg);
//static u_int16_t FRT_ReadRegLightLow(void *pMsg);
/* 读 */
static u_int16_t FRT_ReadRegDeviceAddr(void *pMsg);
static u_int16_t FRT_ReadRegCommuBaudRate(void *pMsg);
@ -131,8 +134,9 @@ FRT_RegProcTable_s g_RegTbl[] =
{ FRT_REGISTER_HUMIDITY, FRT_ReadRegHumidity }, /* 大气湿度 */
{ FRT_REGISTER_PRESSURE, FRT_ReadRegPressure }, /* 大气压 */
{ FRT_REGISTER_RAIN, FRT_ReadRegRain }, /* 雨量 */
{ FRT_REGISTER_LIGHT_INTENSITY_HIGH, FRT_ReadRegLightHigh }, /* 光照高位 */
{ FRT_REGISTER_LIGHT_INTENSITY_LOW, FRT_ReadRegLightLow }, /* 光照低位 */
{ FRT_REGISTER_IRRADIANCE, FRT_ReadRegirradiance }, /* 光辐射 */
// { FRT_REGISTER_LIGHT_INTENSITY_HIGH, FRT_ReadRegLightHigh }, /* 光照高位 */
// { FRT_REGISTER_LIGHT_INTENSITY_LOW, FRT_ReadRegLightLow }, /* 光照低位 */
{ FRT_REGISTER_DEVICE_ADDR, FRT_ReadRegDeviceAddr }, /* 设备地址 */
{ FRT_REGISTER_COMMU_BAUDRATE, FRT_ReadRegCommuBaudRate }, /* 波特率 */
{ FRT_REGISTER_SPEED_AVERAGE_TIME, FRT_ReadRegSpeedAverageTime }, /* 风速平均时间 */
@ -412,26 +416,37 @@ static u_int16_t FRT_ReadRegRain(void *pMsg)
}
/**
* @brief
* @brief
* @param
* @retval
*/
static u_int16_t FRT_ReadRegLightHigh(void *pMsg)
{
u_int16_t value=(u_int16_t)(g_stMcs_Para.lightIntensity>>16);
return FRT_swap_endian_16(value);
static u_int16_t FRT_ReadRegirradiance(void *pMsg)
{
u_int16_t value = g_stMcs_Para.lightIntensity/10.0f;
return FRT_swap_endian_16(value);
}
/**
* @brief
* @param
* @retval
*/
static u_int16_t FRT_ReadRegLightLow(void *pMsg)
{
u_int16_t value=(u_int16_t)(g_stMcs_Para.lightIntensity);
return FRT_swap_endian_16(value);
}
///**
// * @brief 读光照高位寄存器值
// * @param
// * @retval
// */
//static u_int16_t FRT_ReadRegLightHigh(void *pMsg)
//{
// u_int16_t value=(u_int16_t)(g_stMcs_Para.lightIntensity>>16);
// return FRT_swap_endian_16(value);
//}
//
///**
// * @brief 读光照低位寄存器值
// * @param
// * @retval
// */
//static u_int16_t FRT_ReadRegLightLow(void *pMsg)
//{
// u_int16_t value=(u_int16_t)(g_stMcs_Para.lightIntensity);
// return FRT_swap_endian_16(value);
//}
/**
* @brief

View File

@ -151,7 +151,7 @@ void MX_FREERTOS_Init(void) {
void StartDefaultTask(void const * argument)
{
/* USER CODE BEGIN StartDefaultTask */
osDelay(2000);
osDelay(5000);
/* Infinite loop */
for(;;)
{

View File

@ -178,9 +178,9 @@ static HAL_StatusTypeDef MS56XX_GetPressureTemp(float *Temp, float *Press) //
MS56XX_Temperature=-6000;
return HAL_ERROR;
}
if(MS56XX_Temperature>8500)
if(MS56XX_Temperature>9000)
{
MS56XX_Temperature=8500;
MS56XX_Temperature=9000;
return HAL_ERROR;
}
if(Tmp_Pressure<1000)
@ -226,11 +226,16 @@ HAL_StatusTypeDef MS56XX_GetPressure(float *Press)
ret_falt++;
pressure_buff[i] = 0;
}
osDelay(15);//转换时间
}
if(ret_falt >= COLLECT_DATA_NUM)
{
return HAL_ERROR;
}
*Press = calculateAverage( pressure_buff,COLLECT_DATA_NUM - ret_falt);
// if(MS56XX_GetPressureTemp(&temp_buff, Press) != HAL_OK)
// {
// return HAL_ERROR;
// }
return HAL_OK;
}