Инициализация датчиков сделана по функции в структуре. По какому алгоритму надо найти датчик (ROM, UserBytes, порядковый номер) та функцию и пихается в структуру
Сделан поиск потерянных датчиков по функции в структуре (по тому же алгоритму, которому они были найдены)
This commit is contained in:
@@ -514,6 +514,7 @@ uint8_t DS18B20_AlarmSearch(DS18B20_Drv_t *DS, OneWire_t* OW)
|
||||
*/
|
||||
HAL_StatusTypeDef DS18B20_Search(DS18B20_Drv_t *DS, OneWire_t *OW)
|
||||
{
|
||||
OW->RomCnt = 0;
|
||||
/* Search all OneWire devices ROM */
|
||||
while(1)
|
||||
{
|
||||
@@ -523,14 +524,11 @@ HAL_StatusTypeDef DS18B20_Search(DS18B20_Drv_t *DS, OneWire_t *OW)
|
||||
/* Get device ROM */
|
||||
OneWire_GetDevRom(OW, DS->DevAddr[OW->RomCnt]);
|
||||
|
||||
/* Set ROM Resolution */
|
||||
DS18B20_SetResolution(OW, &OW->RomCnt, DS->Resolution);
|
||||
|
||||
/* Reset Temperature Alarm */
|
||||
DS18B20_SetTempAlarm(OW, &OW->RomCnt, 0, 0);
|
||||
|
||||
OW->RomCnt++;
|
||||
}
|
||||
|
||||
return (OW->RomCnt != 0) ? 1 : 0;
|
||||
if(OW->RomCnt > 0)
|
||||
return HAL_OK;
|
||||
else
|
||||
return HAL_BUSY;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user