//---------------------------------------------------------------------------
#ifndef AT90S2333H
#define AT90S2333H
//---------------------------------------------------------------------------
#include <Classes.hpp>
//---------------------------------------------------------------------------
//--- Area3:  0 - Fuse Byte (0:2 - CKSEL0:CKSEL2, 3 - BODEN, 4 - BODLEVEL, 5 - SPIEN), 1 - Lock byte (1 - LB1, 2 - LB2)
//--- functions output: true - success, false - fail ------------------------
//---------------------------------------------------------------------------
bool AT90S2333_ProgrammingEnable();                     // переключение в режим программирования
bool AT90S2333_ChipErase();                             // стирание EEPROM и flash
bool AT90S2333_ReadProgramMemory(unsigned int, bool);   // чтение байта программы по указанному адресу, 0 - читать, 1 - проверять
bool AT90S2333_WriteProgramMemory(unsigned int);        // запись байта программы по указанному адресу
bool AT90S2333_ReadEEPROMMemory(unsigned int, bool);    // чтение байта EEPROM по указанному адресу, 0 - читать, 1 - проверять
bool AT90S2333_WriteEEPROMMemory(unsigned int);         // запись байта в EEPROM по указанному адресу
//---
bool AT90S2333_ReadLockBits();                		// чтение Lock-битов (заполнит байт Area3[1])
bool AT90S2333_ReadFuseBits();                		// чтение Fuse-битов (заполнит байт Area3[0])
bool AT90S2333_WriteLockBits();                   	// запись Lock-битов (из байта Area3[1])
bool AT90S2333_WriteFuseBits();                   	// запись Fuse-битов (из байта Area3[0])
unsigned int AT90S2343_ReadSignatureBytes();      	// чтение байтов сигнатуры (вернёт идентификатор чипа)
//---------------------------------------------------------------------------
#endif
