Subversion Repositories NaviCtrl

Compare Revisions

Ignore whitespace Rev 869 → Rev 870

/tags/V2.20f/eeprom.h
0,0 → 1,47
#ifndef __EEPROM_H
#define __EEPROM_H
 
 
#define EEPROM_ADR_BAUDRATE_INDEX 44 // 44 - 45
#define EEPROM_ADR_BARO_KALIBRATION 46 // 46 - 49
#define EEPROM_ADR_MAG_CALIBRATION_INTERN 50 // two calibrtion sets for extern and intern sensor
#define EEPROM_ADR_MAG_CALIBRATION_EXTERN 70
#define EEPROM_ADR_LICENSE_DATA_CRC 124// - 600
#define EEPROM_ADR_LICENSE_DATA 128// - 600
#define EEPROM_ADR_OEM_Name_CRC 601// 2 bytes
#define EEPROM_ADR_OEM_Name 603// 603 - 619
 
#define EEPROM_LICENSE_DATA_KOMPATIBEL 1
 
// points into the license struct
#define OEM_IN_LICENSE 460
 
typedef enum
{
EEPROM_SUCCESS = 0,
EERPOM_ERROR_I2C_DEINIT,
EEPROM_ERROR_I2C_IDLE_TIMEOUT,
EEPROM_ERROR_I2C_TRANSFER_TIMEOUT,
EEPROM_ERROR_OUT_OF_ADDRESS_RANGE,
EEPROM_DATA_TRANSFER_INCOMPLETE,
EEPROM_I2C_BUFFER_OVERRUN,
EEPROM_NO_ACK,
EEPROM_ERROR_UNKNOWN
} EEPROM_Result_t;
 
extern u8 EEPROM_Init(void);
extern EEPROM_Result_t EEPROM_WriteBlock(u16 Address, u8 *pData, u16 DataLen);
extern EEPROM_Result_t EEPROM_ReadBlock(u16 Address, u8 *pData, u16 DataLen);
extern void WriteLicenseToEEPROM(u8 kampatibel);
extern u8 ReadLicenseFromEEPROM(void);
extern void DeleteLicenseInEEPROM(void);
extern void ClearLicenseText(void);
extern u8 ReadOemNameFromEEPROM(void);
extern void WriteOemNameToEEPROM(void);
extern void WriteBaroCalibrationToEEprom(void);
extern void ReadBaroCalibrationfromEEprom(void);
void WriteBaudrateIndexToEEprom(void);
void ReadBaudrateIndexfromEEprom(void);
 
#endif // EEPROM_H