попытка перенести адреса всех найденных устройств в modbus_data
почему-то вылетает на Dallas_SensorInit
This commit is contained in:
@@ -7,7 +7,7 @@
|
||||
*/
|
||||
#include "ds18b20_driver.h"
|
||||
|
||||
DS18B20_Drv_t DS;
|
||||
DS18B20_Drv_t *DS;
|
||||
OneWire_t OW;
|
||||
|
||||
/**
|
||||
|
||||
@@ -78,7 +78,7 @@ typedef struct
|
||||
{
|
||||
uint8_t DevAddr[DS18B20_DEVICE_AMOUNT][8];
|
||||
} DS18B20_Drv_t;
|
||||
extern DS18B20_Drv_t DS;
|
||||
extern DS18B20_Drv_t *DS;;
|
||||
extern OneWire_t OW;
|
||||
|
||||
/* External Function ---------------------------------------------------------*/
|
||||
|
||||
@@ -54,6 +54,7 @@ typedef struct //MB_DataInRegsTypeDef
|
||||
{
|
||||
uint16_t SensTemperature[DS18B20_DEVICE_AMOUNT];
|
||||
MB_SensorParamsTypeDef Response;
|
||||
uint16_t AllROMs[DS18B20_DEVICE_AMOUNT][4];
|
||||
}MB_DataInRegsTypeDef;
|
||||
|
||||
|
||||
|
||||
@@ -79,8 +79,9 @@ void PYModule_FirstInit(void)
|
||||
OW.DataPort = DS_GPIO_Port;
|
||||
|
||||
/* Инициализация onewire и поиск датчиков*/
|
||||
DS = (DS18B20_Drv_t *)&MB_DATA.InRegs.AllROMs;
|
||||
OneWire_Init(&OW);
|
||||
DS18B20_Search(&DS, &OW);
|
||||
DS18B20_Search(DS, &OW);
|
||||
|
||||
|
||||
/* Инициализация modbus */
|
||||
@@ -90,7 +91,7 @@ void PYModule_FirstInit(void)
|
||||
/* Инициализация структур датчиков ПЧ */
|
||||
DallasBus.hdallas = &hdallas1;
|
||||
DallasBus.hdallas->onewire = &OW;
|
||||
DallasBus.hdallas->ds_devices = &DS;
|
||||
DallasBus.hdallas->ds_devices = DS;
|
||||
PCHSens_InitModule(&hdallas1, &pchsens.module1, REG_PCH_NUMB_11|REG_PCH_DIODE_NUMB_1);
|
||||
PCHSens_InitModule(&hdallas1, &pchsens.module2, REG_PCH_NUMB_12|REG_PCH_DIODE_NUMB_1);
|
||||
PCHSens_InitModule(&hdallas1, &pchsens.module3, REG_PCH_NUMB_21|REG_PCH_DIODE_NUMB_1);
|
||||
|
||||
Reference in New Issue
Block a user