//---------------------------------------------------------------------------
#ifndef MAX31826H
#define MAX31826H
//---------------------------------------------------------------------------
#include <Classes.hpp>
//---------------------------------------------------------------------------
// структура содержащая входные данные для отправки или приёма
struct  MAX31826_INPUT_DATA{    unsigned char SA;               // адрес начала страницы (адрес её первого байта)
                                unsigned int  Size;             // количество передаваемых или принимаемых байт
                                unsigned int  AreaNumber;};     // номер области откуда нужно писать или куда нужно сохранять данные
// структура содержащая выходные данные после отправки или приёма
struct  MAX31826_OUTPUT_DATA{   unsigned char Test;             // проверочный байт
                                bool Success;};                 // признак успеха операции чтения

MAX31826_OUTPUT_DATA MAX31826_WriteToScratchpad(MAX31826_INPUT_DATA);     // запись данных в Scratchpad2 (0x0F) (из областей 1, 2)
MAX31826_OUTPUT_DATA MAX31826_ReadFromScratchpad(MAX31826_INPUT_DATA);    // чтение данных из Scratchpad (0xAA или 0xBE) (в область 3 при AreaSel=0, в обл.2 при AreaSel=1)
MAX31826_OUTPUT_DATA MAX31826_CopyScratchpadToMemory();                   // копирование данных из Scratchpad 2 в EEPROM (0x55)
MAX31826_OUTPUT_DATA MAX31826_ReadFromMemory(MAX31826_INPUT_DATA);        // чтение данных из памяти (0xF0) (в область 1)
MAX31826_OUTPUT_DATA MAX31826_ReadPowerSupply();                          // чтение состояния линии Power (0xB4)
MAX31826_OUTPUT_DATA MAX31826_ConvertT();                                 // запуск преобразования (0x44)
float MAX31826_DecodeTemperature();                                       // преобразование двух байт блокнота в температуру

MAX31826_OUTPUT_DATA MAX31826_LockMemory(MAX31826_INPUT_DATA);          // залочить память (Low или High в зависимости от SA)
MAX31826_OUTPUT_DATA MAX31826_ReadLockStatus(MAX31826_INPUT_DATA);      // узнать статус залочки (Low или High памяти в зависимости от SA)
//---------------------------------------------------------------------------
#endif

