//---------------------------------------------------------------------------
#ifndef ATtiny12H
#define ATtiny12H
//---------------------------------------------------------------------------
#include <Classes.hpp>
//---------------------------------------------------------------------------
//--- Area3:  0 - Low Byte, 1 - Lock byte
//--- functions output: true - success, false - fail ------------------------
//---------------------------------------------------------------------------
bool ATtiny12_ProgrammingEnable();                    // переключение в режим программирования
bool ATtiny12_ChipErase();                            // стирание EEPROM и flash
bool ATtiny12_ReadProgramMemory(unsigned int, bool);  // чтение байта программы по указанному адресу, 0 - читать, 1 - проверять
bool ATtiny12_WriteProgramMemory(unsigned int);   	  // запись байта программы по указанному адресу
bool ATtiny12_ReadEEPROMMemory(unsigned int, bool);   // чтение байта EEPROM по указанному адресу, 0 - читать, 1 - проверять
bool ATtiny12_WriteEEPROMMemory(unsigned int);        // запись байта в EEPROM по указанному адресу
//---
bool ATtiny12_ReadLockBits();                    // чтение Lock-битов (заполнит байт Area3[1])
bool ATtiny12_WriteLockBits();                   // запись Lock-битов (из байта Area3[1])
unsigned int ATtiny12_ReadSignatureBytes();      // чтение байтов сигнатуры (вернёт идентификатор чипа)
bool ATtiny12_WriteFuseBits();                   // запись Fuse-битов (Low Fuse Byte      - Area3[0])
bool ATtiny12_ReadFuseBits();                    // чтение Fuse-битов (Low Fuse Byte      - Area3[0])
bool ATtiny12_ReadCalibrationBytes();            // чтение байтов калибровки (сохраняем их в Area4)
bool ATtiny12_WriteFFTo0ProgramMemory();         // запись во flash 0xFF по адресу 0x0
//---------------------------------------------------------------------------
#endif
