读超过允许的寄存器返回0
This commit is contained in:
parent
afe80d0695
commit
075d293173
|
@ -31,8 +31,9 @@ static u_int16_t FRT_ReadRegTemperature(void *pMsg);
|
||||||
static u_int16_t FRT_ReadRegHumidity(void *pMsg);
|
static u_int16_t FRT_ReadRegHumidity(void *pMsg);
|
||||||
static u_int16_t FRT_ReadRegPressure(void *pMsg);
|
static u_int16_t FRT_ReadRegPressure(void *pMsg);
|
||||||
static u_int16_t FRT_ReadRegRain(void *pMsg);
|
static u_int16_t FRT_ReadRegRain(void *pMsg);
|
||||||
/* 读 */
|
|
||||||
static u_int16_t FRT_ReadRegPrecipitationIntensity(void *pMsg);
|
static u_int16_t FRT_ReadRegPrecipitationIntensity(void *pMsg);
|
||||||
|
static u_int16_t FRT_ReadRegUVIntensity(void *pMsg);
|
||||||
|
/* 读 */
|
||||||
static u_int16_t FRT_ReadRegDeviceAddr(void *pMsg);
|
static u_int16_t FRT_ReadRegDeviceAddr(void *pMsg);
|
||||||
static u_int16_t FRT_ReadRegCommuBaudRate(void *pMsg);
|
static u_int16_t FRT_ReadRegCommuBaudRate(void *pMsg);
|
||||||
static u_int16_t FRT_ReadRegSpeedAverageTime(void *pMsg);
|
static u_int16_t FRT_ReadRegSpeedAverageTime(void *pMsg);
|
||||||
|
@ -126,6 +127,8 @@ FRT_RegProcTable_s g_RegTbl[] =
|
||||||
{ FRT_REGISTER_PRESSURE, FRT_ReadRegPressure }, /* 大气压 */
|
{ FRT_REGISTER_PRESSURE, FRT_ReadRegPressure }, /* 大气压 */
|
||||||
{ FRT_REGISTER_RAIN, FRT_ReadRegRain }, /* 雨量 */
|
{ FRT_REGISTER_RAIN, FRT_ReadRegRain }, /* 雨量 */
|
||||||
{ FRT_REGISTER_PRECIPITATION_INTENSITY, FRT_ReadRegPrecipitationIntensity }, /* 总辐射 */
|
{ FRT_REGISTER_PRECIPITATION_INTENSITY, FRT_ReadRegPrecipitationIntensity }, /* 总辐射 */
|
||||||
|
{ FRT_REGISTER_UV_INTENSITY, FRT_ReadRegUVIntensity }, /* 紫外强度 */
|
||||||
|
|
||||||
{ FRT_REGISTER_DEVICE_ADDR, FRT_ReadRegDeviceAddr }, /* 设备地址 */
|
{ FRT_REGISTER_DEVICE_ADDR, FRT_ReadRegDeviceAddr }, /* 设备地址 */
|
||||||
{ FRT_REGISTER_COMMU_BAUDRATE, FRT_ReadRegCommuBaudRate }, /* 波特率 */
|
{ FRT_REGISTER_COMMU_BAUDRATE, FRT_ReadRegCommuBaudRate }, /* 波特率 */
|
||||||
{ FRT_REGISTER_SPEED_AVERAGE_TIME, FRT_ReadRegSpeedAverageTime }, /* 风速平均时间 */
|
{ FRT_REGISTER_SPEED_AVERAGE_TIME, FRT_ReadRegSpeedAverageTime }, /* 风速平均时间 */
|
||||||
|
@ -396,7 +399,7 @@ static u_int16_t FRT_ReadRegPressure(void *pMsg)
|
||||||
*/
|
*/
|
||||||
static u_int16_t FRT_ReadRegRain(void *pMsg)
|
static u_int16_t FRT_ReadRegRain(void *pMsg)
|
||||||
{
|
{
|
||||||
u_int16_t value=9;
|
u_int16_t value=0;
|
||||||
return FRT_swap_endian_16(value);
|
return FRT_swap_endian_16(value);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -407,7 +410,18 @@ static u_int16_t FRT_ReadRegRain(void *pMsg)
|
||||||
*/
|
*/
|
||||||
static u_int16_t FRT_ReadRegPrecipitationIntensity(void *pMsg)
|
static u_int16_t FRT_ReadRegPrecipitationIntensity(void *pMsg)
|
||||||
{
|
{
|
||||||
u_int16_t value=10;
|
u_int16_t value=0;
|
||||||
|
return FRT_swap_endian_16(value);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief 读紫外强度寄存器值
|
||||||
|
* @param
|
||||||
|
* @retval
|
||||||
|
*/
|
||||||
|
static u_int16_t FRT_ReadRegUVIntensity(void *pMsg)
|
||||||
|
{
|
||||||
|
u_int16_t value=0;
|
||||||
return FRT_swap_endian_16(value);
|
return FRT_swap_endian_16(value);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1298,7 +1312,7 @@ void FRT_MsgProc_ReadRegister(device_handle device, void *pMsg)
|
||||||
u_int16_t reg_num= (data[4] << 8)| data[5];
|
u_int16_t reg_num= (data[4] << 8)| data[5];
|
||||||
if ( \
|
if ( \
|
||||||
start_reg_addr < 0x00 ||\
|
start_reg_addr < 0x00 ||\
|
||||||
(start_reg_addr > FRT_REGISTER_PRESSURE && start_reg_addr < FRT_REGISTER_THROUGH_WIND_DIRECTION) ||\
|
/* (start_reg_addr > FRT_REGISTER_PRESSURE && start_reg_addr < FRT_REGISTER_THROUGH_WIND_DIRECTION) ||\ */
|
||||||
(start_reg_addr > FRT_REGISTER_PEAK_WIND_SPEED && start_reg_addr < FRT_REGISTER_DEVICE_ADDR) ||\
|
(start_reg_addr > FRT_REGISTER_PEAK_WIND_SPEED && start_reg_addr < FRT_REGISTER_DEVICE_ADDR) ||\
|
||||||
(start_reg_addr > FRT_REGISTER_TEMPHUM_UPDATE_TIME && start_reg_addr < FRT_REGISTER_TRANSDUCER_CFG_1R5) ||\
|
(start_reg_addr > FRT_REGISTER_TEMPHUM_UPDATE_TIME && start_reg_addr < FRT_REGISTER_TRANSDUCER_CFG_1R5) ||\
|
||||||
start_reg_addr > FRT_REGISTER_ID_4 \
|
start_reg_addr > FRT_REGISTER_ID_4 \
|
||||||
|
@ -1311,7 +1325,7 @@ void FRT_MsgProc_ReadRegister(device_handle device, void *pMsg)
|
||||||
|
|
||||||
if ( \
|
if ( \
|
||||||
reg_num < 0x01 ||\
|
reg_num < 0x01 ||\
|
||||||
(((reg_num + start_reg_addr - 1) > FRT_REGISTER_PRESSURE) && ((reg_num + start_reg_addr - 1) < FRT_REGISTER_THROUGH_WIND_DIRECTION)) ||\
|
/* (((reg_num + start_reg_addr - 1) > FRT_REGISTER_PRESSURE) && ((reg_num + start_reg_addr - 1) < FRT_REGISTER_THROUGH_WIND_DIRECTION)) ||\ */
|
||||||
(((reg_num + start_reg_addr - 1) > FRT_REGISTER_PEAK_WIND_SPEED) && ((reg_num + start_reg_addr - 1) < FRT_REGISTER_DEVICE_ADDR)) ||\
|
(((reg_num + start_reg_addr - 1) > FRT_REGISTER_PEAK_WIND_SPEED) && ((reg_num + start_reg_addr - 1) < FRT_REGISTER_DEVICE_ADDR)) ||\
|
||||||
(((reg_num + start_reg_addr -1) > FRT_REGISTER_TEMPHUM_UPDATE_TIME) && ((reg_num + start_reg_addr -1) < FRT_REGISTER_TRANSDUCER_CFG_1R5)) ||\
|
(((reg_num + start_reg_addr -1) > FRT_REGISTER_TEMPHUM_UPDATE_TIME) && ((reg_num + start_reg_addr -1) < FRT_REGISTER_TRANSDUCER_CFG_1R5)) ||\
|
||||||
((reg_num + start_reg_addr -1) > FRT_REGISTER_ID_4) \
|
((reg_num + start_reg_addr -1) > FRT_REGISTER_ID_4) \
|
||||||
|
|
Loading…
Reference in New Issue