Compare commits

...

2 Commits

Author SHA1 Message Date
95384 798a442abe TMP117改为单次采样 2025-02-26 10:42:18 +08:00
95384 e0c5dcd299 修改协议,风向不需要扩大十倍 2025-02-22 09:13:33 +08:00
4 changed files with 12 additions and 10 deletions

View File

@ -1077,6 +1077,8 @@ static void getTempHumiPress(void)
#endif /*TEMP_SENSOR == SHT30_SENSOR*/ #endif /*TEMP_SENSOR == SHT30_SENSOR*/
#if TEMP_SENSOR == TMP117_SENSOR #if TEMP_SENSOR == TMP117_SENSOR
TMP117_Init();
osDelay(20);
uint8_t tmp117_ret = TMP117_Get_Temp(&g_stMcs_Para.temperature); uint8_t tmp117_ret = TMP117_Get_Temp(&g_stMcs_Para.temperature);
// TMP117出问题 // TMP117出问题

View File

@ -234,7 +234,7 @@ static u_int16_t FRT_swap_endian_16(u_int16_t value)
*/ */
static u_int16_t FRT_ReadRegMinWindDiretion(void *pMsg) static u_int16_t FRT_ReadRegMinWindDiretion(void *pMsg)
{ {
u_int16_t value = (u_int16_t)(g_stMcs_Para.min_wind_direction *10); u_int16_t value = (u_int16_t)(g_stMcs_Para.min_wind_direction);
return FRT_swap_endian_16(value); return FRT_swap_endian_16(value);
} }
@ -245,7 +245,7 @@ static u_int16_t FRT_ReadRegMinWindDiretion(void *pMsg)
*/ */
static u_int16_t FRT_ReadRegThroughWindDiretion(void *pMsg) static u_int16_t FRT_ReadRegThroughWindDiretion(void *pMsg)
{ {
u_int16_t value = (u_int16_t)(g_stMcs_Para.trough_wind_direction *10); u_int16_t value = (u_int16_t)(g_stMcs_Para.trough_wind_direction);
return FRT_swap_endian_16(value); return FRT_swap_endian_16(value);
} }
@ -256,7 +256,7 @@ static u_int16_t FRT_ReadRegThroughWindDiretion(void *pMsg)
*/ */
static u_int16_t FRT_ReadRegAverageWindDirection(void *pMsg) static u_int16_t FRT_ReadRegAverageWindDirection(void *pMsg)
{ {
u_int16_t value = (u_int16_t)(g_stMcs_Para.average_wind_direction *10); u_int16_t value = (u_int16_t)(g_stMcs_Para.average_wind_direction);
return FRT_swap_endian_16(value); return FRT_swap_endian_16(value);
} }
@ -267,7 +267,7 @@ static u_int16_t FRT_ReadRegAverageWindDirection(void *pMsg)
*/ */
static u_int16_t FRT_ReadRegInstantaneousWindDirection(void *pMsg) static u_int16_t FRT_ReadRegInstantaneousWindDirection(void *pMsg)
{ {
u_int16_t value = (u_int16_t)(g_stMcs_Para.instantaneous_wind_direction *10); u_int16_t value = (u_int16_t)(g_stMcs_Para.instantaneous_wind_direction);
return FRT_swap_endian_16(value); return FRT_swap_endian_16(value);
} }
@ -278,7 +278,7 @@ static u_int16_t FRT_ReadRegInstantaneousWindDirection(void *pMsg)
*/ */
static u_int16_t FRT_ReadRegPeakWindDiretion(void *pMsg) static u_int16_t FRT_ReadRegPeakWindDiretion(void *pMsg)
{ {
u_int16_t value = (u_int16_t)(g_stMcs_Para.peak_wind_direction *10); u_int16_t value = (u_int16_t)(g_stMcs_Para.peak_wind_direction);
return FRT_swap_endian_16(value); return FRT_swap_endian_16(value);
} }
@ -289,7 +289,7 @@ static u_int16_t FRT_ReadRegPeakWindDiretion(void *pMsg)
*/ */
static u_int16_t FRT_ReadRegMaxWindDirection(void *pMsg) static u_int16_t FRT_ReadRegMaxWindDirection(void *pMsg)
{ {
u_int16_t value=(u_int16_t)(g_stMcs_Para.max_wind_direction *10); u_int16_t value=(u_int16_t)(g_stMcs_Para.max_wind_direction);
return FRT_swap_endian_16(value); return FRT_swap_endian_16(value);
} }

View File

@ -2,11 +2,11 @@
#include "i2c.h" #include "i2c.h"
// 初始化温度传感器连续转换模式64次平均 // 初始化温度传感器
HAL_StatusTypeDef TMP117_Init(void) HAL_StatusTypeDef TMP117_Init(void)
{ {
// 配置值:连续转换模式 + AVG=64 (0x00A0) // 配置值:
uint8_t config_data[2] = {0x00, 0xA0}; // 高字节在前 uint8_t config_data[2] = {0x0C, 0x00}; // 高字节在前,单次转换1100 0000 000012.5ms
return HAL_I2C_Mem_Write(&hi2c1, TMP117_ADDR << 1, TMP117_CONFIG_REG, return HAL_I2C_Mem_Write(&hi2c1, TMP117_ADDR << 1, TMP117_CONFIG_REG,
I2C_MEMADD_SIZE_8BIT, config_data, 2, 100); I2C_MEMADD_SIZE_8BIT, config_data, 2, 100);
} }

View File

@ -20,7 +20,7 @@ HAL_StatusTypeDef TMP117_Init(void);
HAL_StatusTypeDef TMP117_Read(uint8_t reg, uint8_t *buffer); HAL_StatusTypeDef TMP117_Read(uint8_t reg, uint8_t *buffer);
HAL_StatusTypeDef TMP117_Get_Temp(float *temp); HAL_StatusTypeDef TMP117_Get_Temp(float *temp);
#endif __TMP117_H_ #endif //__TMP117_H_