//---------------------------------------------------------------------------
#ifndef AT90S4434H
#define AT90S4434H
//---------------------------------------------------------------------------
#include <Classes.hpp>
//---------------------------------------------------------------------------
//--- Area3:  0 - Fuse Byte (0 - FSTRT, 5 - SPIEN), 1 - Lock byte (1 - LB1, 2 - LB2)
//--- functions output: true - success, false - fail ------------------------
//---------------------------------------------------------------------------
bool AT90S4434_ProgrammingEnable();                     // переключение в режим программирования
bool AT90S4434_ChipErase();                             // стирание EEPROM и flash
bool AT90S4434_ReadProgramMemory(unsigned int, bool);   // чтение байта программы по указанному адресу, 0 - читать, 1 - проверять
bool AT90S4434_WriteProgramMemory(unsigned int);        // запись загруженной 16-словной страницы программы по указанному адресу
bool AT90S4434_ReadEEPROMMemory(unsigned int, bool);    // чтение байта EEPROM по указанному адресу, 0 - читать, 1 - проверять
bool AT90S4434_WriteEEPROMMemory(unsigned int);         // запись байта в EEPROM по указанному адресу
//---
bool AT90S4434_ReadFuseLockBits();                // чтение Fuse-битов и Lock-битов (заполнит байты Area3[0], Area3[1])
bool AT90S4434_WriteFuseBits();                   // запись Fuse-битов (Fuse Byte - Area3[0])
bool AT90S4434_WriteLockBits();                   // запись Lock-битов (из байта Area3[1])
unsigned int AT90S4434_ReadSignatureBytes();      // чтение байтов сигнатуры (вернёт идентификатор чипа)
//---------------------------------------------------------------------------
#endif
