Subversion Repositories FlightCtrl

Rev

Rev 1967 | Rev 1969 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

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