Subversion Repositories FlightCtrl

Rev

Rev 1967 | Rev 1969 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
1612 dongfang 1
#ifndef _EEPROM_H
2
#define _EEPROM_H
3
 
4
#include <inttypes.h>
5
#include "configuration.h"
1960 - 6
#include "analog.h"
1612 dongfang 7
 
8
#define EEPROM_ADR_PARAM_BEGIN  0
1968 - 9
#define EEPROM_CHECKSUMMED_BLOCK_OVERHEAD 3
1960 - 10
 
1965 - 11
#define PID_ACTIVE_SET          0   // byte
1968 - 12
#define EEPROM_ADR_ACCOFFSET    1
13
#define EEPROM_ADR_GYROOFFSET   (EEPROM_ADR_ACCOFFSET+sizeof(sensorOffset_t)+EEPROM_CHECKSUMMED_BLOCK_OVERHEAD)
14
#define EEPROM_ADR_GYROAMPLIFIER  (EEPROM_ADR_GYROOFFSET+sizeof(sensorOffset_t)+EEPROM_CHECKSUMMED_BLOCK_OVERHEAD)
15
#define EEPROM_ADR_CHANNELMAP     (EEPROM_ADR_GYROAMPLIFIER+sizeof(sensorOffset_t)+EEPROM_CHECKSUMMED_BLOCK_OVERHEAD)
16
#define EEPROM_ADR_MIXER_TABLE    (EEPROM_ADR_CHANNELMAP+sizeof(channelMap_t)+EEPROM_CHECKSUMMED_BLOCK_OVERHEAD)
17
#define EEPROM_ADR_PARAMSET_BEGIN (EEPROM_ADR_MIXER_TABLE+sizeof(mixerMatrix_t)+EEPROM_CHECKSUMMED_BLOCK_OVERHEAD)
1960 - 18
 
1968 - 19
//#define EEPROM_ADR_ACCOFFSET    10
20
//#define EEPROM_ADR_GYROOFFSET   20
21
//#define EEPROM_ADR_GYROAMPLIFIER  30
22
//#define EEPROM_ADR_CHANNELMAP   40
23
//#define EEPROM_ADR_MIXER_TABLE          60
24
//#define EEPROM_ADR_PARAMSET_BEGIN 200
1967 - 25
 
1968 - 26
#define CHANNELMAP_REVISION         0
1965 - 27
#define EEPARAM_REVISION            0
28
#define EEMIXER_REVISION            0
1968 - 29
#define SENSOROFFSET_REVISION       0
1612 dongfang 30
 
1967 - 31
void paramSet_readOrDefault(void);
32
void channelMap_readOrDefault(void);
33
void mixerMatrix_readOrDefault(void);
1612 dongfang 34
 
1967 - 35
uint8_t paramSet_readFromEEProm(uint8_t setnumber);
36
void paramSet_writeToEEProm(uint8_t setnumber);
1612 dongfang 37
 
1967 - 38
uint8_t channelMap_readFromEEProm(void);
39
void channelMap_writeToEEProm(void);
1960 - 40
 
1967 - 41
uint8_t mixerMatrix_eeadFromEEProm(void);
42
void mixerMatrix_writeToEEProm(void);
1960 - 43
 
1967 - 44
uint8_t gyroAmplifierOffset_readFromEEProm(void);
45
void gyroAmplifierOffset_writeToEEProm(void);
1960 - 46
 
1967 - 47
uint8_t gyroOffset_readFromEEProm(void);
48
void gyroOffset_writeToEEProm(void);
1960 - 49
 
1967 - 50
uint8_t accOffset_readFromEEProm(void);
51
void accOffset_writeToEEProm(void);
1960 - 52
 
1967 - 53
uint8_t getParamByte(uint16_t param_id);
54
void setParamByte(uint16_t param_id, uint8_t value);
55
//uint16_t getParamWord(uint16_t param_id);
56
//void setParamWord(uint16_t param_id, uint16_t value);
1612 dongfang 57
 
1967 - 58
uint8_t getActiveParamSet(void);
59
void setActiveParamSet(uint8_t setnumber);
60
 
1612 dongfang 61
#endif //_EEPROM_H