add var LOST_SENS_CNT
This commit is contained in:
@@ -107,8 +107,10 @@ struct _SensorHandleStruct
|
||||
unsigned isConnected:1; ///< Флаг соединения
|
||||
unsigned isInitialized:1; ///< Флаг инициализации
|
||||
unsigned isLost:1; ///< Флаг потери связи
|
||||
uint16_t lost_cnt;
|
||||
DALLAS_FlagsTypeDef f; ///< Флаги
|
||||
|
||||
|
||||
float set_temp;
|
||||
int hyst;
|
||||
|
||||
|
||||
@@ -23,14 +23,14 @@
|
||||
* @brief Порт вывода для шины 1-Wire.
|
||||
* @details Указывает порт GPIO, к которому подключена линия данных 1-Wire (например, для DS18B20).
|
||||
*/
|
||||
#define OW_GPIO_Port GPIOA
|
||||
#define OW_GPIO_Port GPIOB
|
||||
|
||||
/**
|
||||
* @def OW_Pin_Numb
|
||||
* @brief Номер пина в порту OW_GPIO_Port.
|
||||
* @details Используется для формирования маски пина и настройки ввода/вывода.
|
||||
*/
|
||||
#define OW_Pin_Numb 1
|
||||
#define OW_Pin_Numb 9
|
||||
|
||||
/**
|
||||
* @def OW_Pin
|
||||
|
||||
@@ -170,7 +170,7 @@ for ( int i=0; i<hdallas.onewire->RomCnt;i++)
|
||||
sens[i].Init.init_func = &Dallas_SensorInitByInd;
|
||||
sens[i].Init.Resolution = DALLAS_CONFIG_9_BITS;
|
||||
sens[i].set_temp =20.;
|
||||
sens[i].hyst =3;
|
||||
sens[i].hyst =2;
|
||||
Dallas_AddNewSensors(&hdallas, &sens[i]);
|
||||
|
||||
}
|
||||
@@ -194,11 +194,16 @@ for ( int i=0; i<hdallas.onewire->RomCnt;i++)
|
||||
|
||||
|
||||
}
|
||||
|
||||
init=MB_DATA.Coils.init_param;
|
||||
Dallas_StartConvertTAll(&hdallas,DALLAS_WAIT_BUS,0);
|
||||
|
||||
for(int i=0;i<hdallas.onewire->RomCnt;i++)
|
||||
{
|
||||
if(sens[i].isLost)
|
||||
{
|
||||
sens[i].lost_cnt ++;
|
||||
}
|
||||
Dallas_ReadTemperature(&sens[i]);
|
||||
sens[i].set_temp = MB_DATA.HoldRegs.set_Temp[i];
|
||||
MB_DATA.InRegs.sens_Temp[i]=sens[i].temperature*10;
|
||||
@@ -206,7 +211,7 @@ for ( int i=0; i<hdallas.onewire->RomCnt;i++)
|
||||
if (sens[i].temperature<sens[i].set_temp-sens[i].hyst)
|
||||
|
||||
{
|
||||
GPIOC->ODR|=1<<13;
|
||||
|
||||
MB_DATA.Coils.coils.all|=1<<i;
|
||||
|
||||
}
|
||||
@@ -215,9 +220,10 @@ for ( int i=0; i<hdallas.onewire->RomCnt;i++)
|
||||
|
||||
if (sens[i].temperature>sens[i].set_temp+sens[i].hyst)
|
||||
{
|
||||
GPIOC->ODR&=~(1<<13);
|
||||
|
||||
MB_DATA.Coils.coils.all&=~(1<<i);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user