//---------------------------------------------------------------------------
#ifndef DS2431H
#define DS2431H
//---------------------------------------------------------------------------
#include <Classes.hpp>
//---------------------------------------------------------------------------
// структура содержащая входные данные для отправки или приёма
struct  DS2431_INPUT_DATA{      unsigned char TA1;              // младший байт адреса
                                unsigned char TA2;              // старший байт адреса
                                unsigned char ES;               // байт статуса
                                unsigned int  Size;             // количество передаваемых или принимаемых байт
                                unsigned int  AreaNumber;};     // номер области откуда нужно писать или куда нужно сохранять данные
// структура содержащая выходные данные после отправки или приёма
struct  DS2431_OUTPUT_DATA{     unsigned char TA1;              // младший байт адреса
                                unsigned char TA2;              // старший байт адреса
                                unsigned char ES;               // байт статуса
                                unsigned char Test;             // проверочный байт
                                bool Success;};                 // признак успеха операции чтения

DS2431_OUTPUT_DATA DS2431_WriteToScratchpad(DS2431_INPUT_DATA);         // запись данных в Scratchpad (0x0F) (из областей 1, 2, 3)
DS2431_OUTPUT_DATA DS2431_ReadFromScratchpad();                         // чтение данных из Scratchpad (0xAA) (только в область 3)
DS2431_OUTPUT_DATA DS2431_CopyScratchpadToMemory(DS2431_INPUT_DATA);    // копирование данных из Scratchpad в EEPROM (0x55)
DS2431_OUTPUT_DATA DS2431_ReadFromMemory(DS2431_INPUT_DATA);            // чтение данных из памяти (0xF0) (в области 1, 2)
//---------------------------------------------------------------------------
#endif
 