add var LOST_SENS_CNT
This commit is contained in:
parent
3f768d3531
commit
becb211c76
@ -107,8 +107,10 @@ struct _SensorHandleStruct
|
|||||||
unsigned isConnected:1; ///< Флаг соединения
|
unsigned isConnected:1; ///< Флаг соединения
|
||||||
unsigned isInitialized:1; ///< Флаг инициализации
|
unsigned isInitialized:1; ///< Флаг инициализации
|
||||||
unsigned isLost:1; ///< Флаг потери связи
|
unsigned isLost:1; ///< Флаг потери связи
|
||||||
|
uint16_t lost_cnt;
|
||||||
DALLAS_FlagsTypeDef f; ///< Флаги
|
DALLAS_FlagsTypeDef f; ///< Флаги
|
||||||
|
|
||||||
|
|
||||||
float set_temp;
|
float set_temp;
|
||||||
int hyst;
|
int hyst;
|
||||||
|
|
||||||
|
@ -23,14 +23,14 @@
|
|||||||
* @brief Порт вывода для шины 1-Wire.
|
* @brief Порт вывода для шины 1-Wire.
|
||||||
* @details Указывает порт GPIO, к которому подключена линия данных 1-Wire (например, для DS18B20).
|
* @details Указывает порт GPIO, к которому подключена линия данных 1-Wire (например, для DS18B20).
|
||||||
*/
|
*/
|
||||||
#define OW_GPIO_Port GPIOA
|
#define OW_GPIO_Port GPIOB
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @def OW_Pin_Numb
|
* @def OW_Pin_Numb
|
||||||
* @brief Номер пина в порту OW_GPIO_Port.
|
* @brief Номер пина в порту OW_GPIO_Port.
|
||||||
* @details Используется для формирования маски пина и настройки ввода/вывода.
|
* @details Используется для формирования маски пина и настройки ввода/вывода.
|
||||||
*/
|
*/
|
||||||
#define OW_Pin_Numb 1
|
#define OW_Pin_Numb 9
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @def OW_Pin
|
* @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.init_func = &Dallas_SensorInitByInd;
|
||||||
sens[i].Init.Resolution = DALLAS_CONFIG_9_BITS;
|
sens[i].Init.Resolution = DALLAS_CONFIG_9_BITS;
|
||||||
sens[i].set_temp =20.;
|
sens[i].set_temp =20.;
|
||||||
sens[i].hyst =3;
|
sens[i].hyst =2;
|
||||||
Dallas_AddNewSensors(&hdallas, &sens[i]);
|
Dallas_AddNewSensors(&hdallas, &sens[i]);
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -194,11 +194,16 @@ for ( int i=0; i<hdallas.onewire->RomCnt;i++)
|
|||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
init=MB_DATA.Coils.init_param;
|
init=MB_DATA.Coils.init_param;
|
||||||
Dallas_StartConvertTAll(&hdallas,DALLAS_WAIT_BUS,0);
|
Dallas_StartConvertTAll(&hdallas,DALLAS_WAIT_BUS,0);
|
||||||
|
|
||||||
for(int i=0;i<hdallas.onewire->RomCnt;i++)
|
for(int i=0;i<hdallas.onewire->RomCnt;i++)
|
||||||
{
|
{
|
||||||
|
if(sens[i].isLost)
|
||||||
|
{
|
||||||
|
sens[i].lost_cnt ++;
|
||||||
|
}
|
||||||
Dallas_ReadTemperature(&sens[i]);
|
Dallas_ReadTemperature(&sens[i]);
|
||||||
sens[i].set_temp = MB_DATA.HoldRegs.set_Temp[i];
|
sens[i].set_temp = MB_DATA.HoldRegs.set_Temp[i];
|
||||||
MB_DATA.InRegs.sens_Temp[i]=sens[i].temperature*10;
|
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)
|
if (sens[i].temperature<sens[i].set_temp-sens[i].hyst)
|
||||||
|
|
||||||
{
|
{
|
||||||
GPIOC->ODR|=1<<13;
|
|
||||||
MB_DATA.Coils.coils.all|=1<<i;
|
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)
|
if (sens[i].temperature>sens[i].set_temp+sens[i].hyst)
|
||||||
{
|
{
|
||||||
GPIOC->ODR&=~(1<<13);
|
|
||||||
MB_DATA.Coils.coils.all&=~(1<<i);
|
MB_DATA.Coils.coils.all&=~(1<<i);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -153,7 +153,7 @@
|
|||||||
<Ww>
|
<Ww>
|
||||||
<count>0</count>
|
<count>0</count>
|
||||||
<WinNumber>1</WinNumber>
|
<WinNumber>1</WinNumber>
|
||||||
<ItemText>sens</ItemText>
|
<ItemText>sens,0x0A</ItemText>
|
||||||
</Ww>
|
</Ww>
|
||||||
<Ww>
|
<Ww>
|
||||||
<count>1</count>
|
<count>1</count>
|
||||||
@ -260,6 +260,10 @@
|
|||||||
<Name>System Viewer\GPIOA</Name>
|
<Name>System Viewer\GPIOA</Name>
|
||||||
<WinId>35904</WinId>
|
<WinId>35904</WinId>
|
||||||
</Entry>
|
</Entry>
|
||||||
|
<Entry>
|
||||||
|
<Name>System Viewer\GPIOB</Name>
|
||||||
|
<WinId>35900</WinId>
|
||||||
|
</Entry>
|
||||||
<Entry>
|
<Entry>
|
||||||
<Name>System Viewer\IWDG</Name>
|
<Name>System Viewer\IWDG</Name>
|
||||||
<WinId>35905</WinId>
|
<WinId>35905</WinId>
|
||||||
@ -365,7 +369,7 @@
|
|||||||
<GroupNumber>2</GroupNumber>
|
<GroupNumber>2</GroupNumber>
|
||||||
<FileNumber>6</FileNumber>
|
<FileNumber>6</FileNumber>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<tvExp>0</tvExp>
|
<tvExp>1</tvExp>
|
||||||
<tvExpOptDlg>0</tvExpOptDlg>
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
<bDave2>0</bDave2>
|
<bDave2>0</bDave2>
|
||||||
<PathWithFileName>..\Core\Src\ow_port.c</PathWithFileName>
|
<PathWithFileName>..\Core\Src\ow_port.c</PathWithFileName>
|
||||||
@ -389,7 +393,7 @@
|
|||||||
<GroupNumber>2</GroupNumber>
|
<GroupNumber>2</GroupNumber>
|
||||||
<FileNumber>8</FileNumber>
|
<FileNumber>8</FileNumber>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<tvExp>1</tvExp>
|
<tvExp>0</tvExp>
|
||||||
<tvExpOptDlg>0</tvExpOptDlg>
|
<tvExpOptDlg>0</tvExpOptDlg>
|
||||||
<bDave2>0</bDave2>
|
<bDave2>0</bDave2>
|
||||||
<PathWithFileName>..\Modbus\modbus.c</PathWithFileName>
|
<PathWithFileName>..\Modbus\modbus.c</PathWithFileName>
|
||||||
|
Loading…
Reference in New Issue
Block a user