Rev 2147 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 2147 | Rev 2212 | ||
---|---|---|---|
1 | /***************************************************************************** |
1 | /***************************************************************************** |
2 | * Copyright (C) 2008 Thomas Kaiser, thomas@ft-fanpage.de * |
2 | * Copyright (C) 2008 Thomas Kaiser, thomas@ft-fanpage.de * |
3 | * Copyright (C) 2009 Peter "woggle" Mack, mac@denich.net * |
3 | * Copyright (C) 2009 Peter "woggle" Mack, mac@denich.net * |
4 | * Copyright (C) 2013 Christian "Cebra" Brandtner, brandtner@brandtner.net * |
4 | * Copyright (C) 2013 Christian "Cebra" Brandtner, brandtner@brandtner.net * |
5 | * Copyright (C) 2011 Harald Bongartz * |
5 | * Copyright (C) 2011 Harald Bongartz * |
6 | * * |
6 | * * |
7 | * This program is free software; you can redistribute it and/or modify * |
7 | * This program is free software; you can redistribute it and/or modify * |
8 | * it under the terms of the GNU General Public License as published by * |
8 | * it under the terms of the GNU General Public License as published by * |
9 | * the Free Software Foundation; either version 2 of the License. * |
9 | * the Free Software Foundation; either version 2 of the License. * |
10 | * * |
10 | * * |
11 | * This program is distributed in the hope that it will be useful, * |
11 | * This program is distributed in the hope that it will be useful, * |
12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of * |
12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of * |
13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * |
13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * |
14 | * GNU General Public License for more details. * |
14 | * GNU General Public License for more details. * |
15 | * * |
15 | * * |
16 | * You should have received a copy of the GNU General Public License * |
16 | * You should have received a copy of the GNU General Public License * |
17 | * along with this program; if not, write to the * |
17 | * along with this program; if not, write to the * |
18 | * Free Software Foundation, Inc., * |
18 | * Free Software Foundation, Inc., * |
19 | * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * |
19 | * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * |
20 | * * |
20 | * * |
21 | * * |
21 | * * |
22 | * Credits to: * |
22 | * Credits to: * |
23 | * Holger Buss & Ingo Busker from mikrokopter.de for the MK project + SVN * |
23 | * Holger Buss & Ingo Busker from mikrokopter.de for the MK project + SVN * |
24 | * http://www.mikrokopter.de * |
24 | * http://www.mikrokopter.de * |
25 | * Gregor "killagreg" Stobrawa for his version of the MK code * |
25 | * Gregor "killagreg" Stobrawa for his version of the MK code * |
26 | * Thomas Kaiser "thkais" for the original project. See * |
26 | * Thomas Kaiser "thkais" for the original project. See * |
27 | * http://www.ft-fanpage.de/mikrokopter/ * |
27 | * http://www.ft-fanpage.de/mikrokopter/ * |
28 | * http://forum.mikrokopter.de/topic-4061-1.html * |
28 | * http://forum.mikrokopter.de/topic-4061-1.html * |
29 | * Claas Anders "CaScAdE" Rathje for providing the font and his C-OSD code * |
29 | * Claas Anders "CaScAdE" Rathje for providing the font and his C-OSD code * |
30 | * http://www.mylifesucks.de/oss/c-osd/ * |
30 | * http://www.mylifesucks.de/oss/c-osd/ * |
31 | * Harald Bongartz "HaraldB" for providing his Ideas and Code for usibility* |
31 | * Harald Bongartz "HaraldB" for providing his Ideas and Code for usibility* |
32 | *****************************************************************************/ |
32 | *****************************************************************************/ |
33 | //############################################################################ |
33 | //############################################################################ |
34 | //# HISTORY eeprom.h |
34 | //# HISTORY eeprom.h |
35 | //# |
35 | //# |
36 | //# 03.08.2015 CB |
36 | //# 03.08.2015 CB |
37 | //# - chg: Obsolete Parameter geändert und für FollowMe verwendet, EEprom Version bleibt gleich |
37 | //# - chg: Obsolete Parameter geändert und für FollowMe verwendet, EEprom Version bleibt gleich |
38 | //# Parameter FM_Refresh in FM_Azimuth geändert |
38 | //# Parameter FM_Refresh in FM_Azimuth geändert |
39 | //# Parameter hyst_u_min in FM_Distance geändert |
39 | //# Parameter hyst_u_min in FM_Distance geändert |
40 | //# |
40 | //# |
41 | //# 25.06.2014 OG |
41 | //# 25.06.2014 OG |
42 | //# - chg: Kommentare der eeprom Struct aktualisert bzgl. FollowMe und Tracking |
42 | //# - chg: Kommentare der eeprom Struct aktualisert bzgl. FollowMe und Tracking |
43 | //# |
43 | //# |
44 | //# 17.06.2014 OG |
44 | //# 17.06.2014 OG |
45 | //# - chg: EEpromversion erhoeht auf 139 |
45 | //# - chg: EEpromversion erhoeht auf 139 |
46 | //# |
46 | //# |
47 | //# 13.06.2014 OG |
47 | //# 13.06.2014 OG |
48 | //# - chg: LCD_DisplayMode (Obsolete) geaendert zu PKTOffTimeout |
48 | //# - chg: LCD_DisplayMode (Obsolete) geaendert zu PKTOffTimeout |
49 | //# |
49 | //# |
50 | //# 31.05.2014 OG |
50 | //# 31.05.2014 OG |
51 | //# - Recherche welche Config-Werte ueberahupt noch im PKT-Code verwendet werden |
51 | //# - Recherche welche Config-Werte ueberahupt noch im PKT-Code verwendet werden |
52 | //# und ggf. "OBSOLETE" Anmerkung in der Config-Struct |
52 | //# und ggf. "OBSOLETE" Anmerkung in der Config-Struct |
53 | //# - Config-Struct wurde um etliche Kommentare ergaenzt bzgl. Verwendungszweck |
53 | //# - Config-Struct wurde um etliche Kommentare ergaenzt bzgl. Verwendungszweck |
54 | //# |
54 | //# |
55 | //# 30.05.2014 OG |
55 | //# 30.05.2014 OG |
56 | //# - chg: Kommentare geaendert |
56 | //# - chg: Kommentare geaendert |
57 | //# |
57 | //# |
58 | //# 26.05.2014 OG |
58 | //# 26.05.2014 OG |
59 | //# - chg: Config.LCD_DisplayMode als "OBSOLETE" markiert |
59 | //# - chg: Config.LCD_DisplayMode als "OBSOLETE" markiert |
60 | //# |
60 | //# |
61 | //# 07.05.2014 OG |
61 | //# 07.05.2014 OG |
62 | //# - chg: EEpromversion erhoeht auf 138 |
62 | //# - chg: EEpromversion erhoeht auf 138 |
63 | //# -> keine neuen Parameter, neue Version nur fuer geanderte |
63 | //# -> keine neuen Parameter, neue Version nur fuer geanderte |
64 | //# Initialisierung von MKParam_Favs |
64 | //# Initialisierung von MKParam_Favs |
65 | //# |
65 | //# |
66 | //# 06.04.2014 OG |
66 | //# 06.04.2014 OG |
67 | //# - chg: EEpromversion erhoeht auf 137 |
67 | //# - chg: EEpromversion erhoeht auf 137 |
68 | //# - add: Config.UseBLE |
68 | //# - add: Config.UseBLE |
69 | //# - add: Config.MKParam_Favs |
69 | //# - add: Config.MKParam_Favs |
70 | //# |
70 | //# |
71 | //# 01.04.2014 OG |
71 | //# 01.04.2014 OG |
72 | //# - chg: EEpromversion erhoeht auf 136 |
72 | //# - chg: EEpromversion erhoeht auf 136 |
73 | //# - chg: ACHTUNG! EEpromversion umgestellt von HEX auf DEZIMAL: 0x87 => 135 |
73 | //# - chg: ACHTUNG! EEpromversion umgestellt von HEX auf DEZIMAL: 0x87 => 135 |
74 | //# - add: Config.UseBLE |
74 | //# - add: Config.UseBLE |
75 | //# - add: Config.MKParam_Favs |
75 | //# - add: Config.MKParam_Favs |
76 | //# - add: MAX_MKPARAM_FAVORITES |
76 | //# - add: MAX_MKPARAM_FAVORITES |
77 | //# |
77 | //# |
78 | //# 03.02.2014 OG |
78 | //# 03.02.2014 OG |
79 | //# - add: Config.OSD_ShowCellU; EEpromversion erhoeht auf 0x87 |
79 | //# - add: Config.OSD_ShowCellU; EEpromversion erhoeht auf 0x87 |
80 | //# |
80 | //# |
81 | //# 28.08.2013 Cebra |
81 | //# 28.08.2013 Cebra |
82 | //# - chg: LastLatitude war uint32_t, auf int32_t korrigiert |
82 | //# - chg: LastLatitude war uint32_t, auf int32_t korrigiert |
83 | //# |
83 | //# |
84 | //# 04.07.2013 Cebra |
84 | //# 04.07.2013 Cebra |
85 | //# - add: neue Parameter fuer Wlan; EEpromversion erhoeht auf 85 |
85 | //# - add: neue Parameter fuer Wlan; EEpromversion erhoeht auf 85 |
86 | //# |
86 | //# |
87 | //# 04.07.2013 OG |
87 | //# 04.07.2013 OG |
88 | //# - add: Config.OSD_UseScreen; Epromversion erhoeht auf 84 |
88 | //# - add: Config.OSD_UseScreen; Epromversion erhoeht auf 84 |
89 | //# |
89 | //# |
90 | //# 02.07.2013 Cebra |
90 | //# 02.07.2013 Cebra |
91 | //# - add: neue Parameter fuer Wlan; EEpromversion erhoeht auf 83 |
91 | //# - add: neue Parameter fuer Wlan; EEpromversion erhoeht auf 83 |
92 | //# |
92 | //# |
93 | //# 20.06.2013 CB |
93 | //# 20.06.2013 CB |
94 | //# - chg: EEPROM Versionsänderung auf 82 wegen Wechsel LCD_Orientation zu OSD_ShowMKSetting |
94 | //# - chg: EEPROM Versionsänderung auf 82 wegen Wechsel LCD_Orientation zu OSD_ShowMKSetting |
95 | //# |
95 | //# |
96 | //# 15.06.2013 OG |
96 | //# 15.06.2013 OG |
97 | //# - chg: Config.LCD_ORIENTATION zu Config.OSD_ShowMKSetting |
97 | //# - chg: Config.LCD_ORIENTATION zu Config.OSD_ShowMKSetting |
98 | //# |
98 | //# |
99 | //# 31.05.2013 CB |
99 | //# 31.05.2013 CB |
100 | //# - chg: EEPROM Strukturänderung, Listen/Statistik ganz ans Ende gesetzt |
100 | //# - chg: EEPROM Strukturänderung, Listen/Statistik ganz ans Ende gesetzt |
101 | //# |
101 | //# |
102 | //# 31.05.2013 OG |
102 | //# 31.05.2013 OG |
103 | //# - chg: Eeprom Version auf 81 wegen Erweiterungen der Statistik-Daten |
103 | //# - chg: Eeprom Version auf 81 wegen Erweiterungen der Statistik-Daten |
104 | //# - chg: Code-Layout |
104 | //# - chg: Code-Layout |
105 | //# |
105 | //# |
106 | //# 12.04.2013 CB |
106 | //# 12.04.2013 CB |
107 | //# - chg: Kommentarergänzung U02SV2 |
107 | //# - chg: Kommentarergänzung U02SV2 |
108 | //# |
108 | //# |
109 | //# 28.03.2013 CB |
109 | //# 28.03.2013 CB |
110 | //# - add: save and upgrade OSD_Statistic, GPS_User, MKErr_Log in EEProm structure variable |
110 | //# - add: save and upgrade OSD_Statistic, GPS_User, MKErr_Log in EEProm structure variable |
111 | //############################################################################ |
111 | //############################################################################ |
112 | 112 | ||
113 | #ifndef _EEPROM_H |
113 | #ifndef _EEPROM_H |
114 | #define _EEPROM_H |
114 | #define _EEPROM_H |
115 | 115 | ||
116 | #include <stdbool.h> |
116 | #include <stdbool.h> |
117 | #include "../mk-data-structs.h" |
117 | #include "../mk-data-structs.h" |
118 | #include "../connect.h" |
118 | #include "../connect.h" |
119 | #include "../tracking/ng_servo.h" |
119 | #include "../tracking/ng_servo.h" |
120 | #include "../waypoints/waypoints.h" |
120 | #include "../waypoints/waypoints.h" |
121 | #include "../osd/osd.h" |
121 | #include "../osd/osd.h" |
122 | 122 | ||
123 | 123 | ||
124 | 124 | ||
125 | 125 | ||
126 | //[General] |
126 | //[General] |
127 | //FileVersion = 2 |
127 | //FileVersion = 2 |
128 | //NumberOfWaypoints = 15 |
128 | //NumberOfWaypoints = 15 |
129 | //UsePOI = 0 |
129 | //UsePOI = 0 |
130 | //POI_CAM_NICK_CTRL = 0 |
130 | //POI_CAM_NICK_CTRL = 0 |
131 | 131 | ||
132 | //[POI] |
132 | //[POI] |
133 | //Altitude = 1 |
133 | //Altitude = 1 |
134 | //Latitude = 46.7140763 |
134 | //Latitude = 46.7140763 |
135 | //Longitude = 19.2507334 |
135 | //Longitude = 19.2507334 |
136 | 136 | ||
137 | //[Waypoint1] |
137 | //[Waypoint1] |
138 | //Latitude = 46.7145686 |
138 | //Latitude = 46.7145686 |
139 | //Longitude = 19.2515702 |
139 | //Longitude = 19.2515702 |
140 | //Radius = 10 |
140 | //Radius = 10 |
141 | //Altitude = 15 |
141 | //Altitude = 15 |
142 | //ClimbRate = 0 |
142 | //ClimbRate = 0 |
143 | //DelayTime = 4 |
143 | //DelayTime = 4 |
144 | //WP_Event_Channel_Value = 96 |
144 | //WP_Event_Channel_Value = 96 |
145 | //Heading = 180 |
145 | //Heading = 180 |
146 | 146 | ||
147 | 147 | ||
148 | #define EEpromVersion 139 // wird nach jeder Parametererweiterung hochgezählt |
148 | #define EEpromVersion 139 // wird nach jeder Parametererweiterung hochgezählt |
149 | // Anmerkung 01.04.2014 OG: umgestellt auf DEZIMALE schreibweise (wiso war das vorher Hex?) |
149 | // Anmerkung 01.04.2014 OG: umgestellt auf DEZIMALE schreibweise (wiso war das vorher Hex?) |
150 | 150 | ||
151 | #define NumberOfWaypoints 55 // Anzahl der Waypoints in der EEPromliste |
151 | #define NumberOfWaypoints 55 // Anzahl der Waypoints in der EEPromliste |
152 | #define NumberOfWPLists 5 // Anzahl WP Listen im PKT |
152 | #define NumberOfWPLists 5 // Anzahl WP Listen im PKT |
153 | #define MAX_LIST_LEN 31 // Länge Waypointlist |
153 | #define MAX_LIST_LEN 31 // Länge Waypointlist |
154 | 154 | ||
155 | #define MAX_MKPARAM_FAVORITES 10 // Anzahl der MK-Parameter Favoriten (nicht aendern!) |
155 | #define MAX_MKPARAM_FAVORITES 10 // Anzahl der MK-Parameter Favoriten (nicht aendern!) |
156 | 156 | ||
157 | #define bt_pin_length 4 |
157 | #define bt_pin_length 4 |
158 | #define RE_ID_length 4 // Länge der RE-ID |
158 | #define RE_ID_length 4 // Länge der RE-ID |
159 | #define bt_name_length 10 |
159 | #define bt_name_length 10 |
160 | #define bt_mac_length 14 |
160 | #define bt_mac_length 14 |
161 | #define GPS_Bluetoothmouse1 0 // NMEA BT-Mouse |
161 | #define GPS_Bluetoothmouse1 0 // NMEA BT-Mouse |
162 | #define GPS_Mikrokopter 1 // GPS Daten vom MK für Tracking |
162 | #define GPS_Mikrokopter 1 // GPS Daten vom MK für Tracking |
163 | 163 | ||
164 | #define wlan_password_length 10 // Länge Wlan-Passwort |
164 | #define wlan_password_length 10 // Länge Wlan-Passwort |
165 | #define wlan_ssid_length 10 // Länge Wlan-SSID |
165 | #define wlan_ssid_length 10 // Länge Wlan-SSID |
166 | #define wlan_ip_length 15 |
166 | #define wlan_ip_length 15 |
167 | #define wlan_netmask_length 15 |
167 | #define wlan_netmask_length 15 |
168 | #define wlan_gateway_length 15 |
168 | #define wlan_gateway_length 15 |
169 | 169 | ||
170 | #define POINT_TYPE_INVALID 255 |
170 | #define POINT_TYPE_INVALID 255 |
171 | #define POINT_TYPE_WP 0 |
171 | #define POINT_TYPE_WP 0 |
172 | #define POINT_TYPE_POI 1 |
172 | #define POINT_TYPE_POI 1 |
173 | #define INVALID 0x00 |
173 | #define INVALID 0x00 |
174 | #define MAX_WPLIST_LEN 31 |
174 | #define MAX_WPLIST_LEN 31 |
175 | 175 | ||
176 | 176 | ||
177 | 177 | ||
178 | 178 | ||
179 | //typedef struct { |
179 | //typedef struct { |
180 | // uint8_t rev; |
180 | // uint8_t rev; |
181 | // uint16_t min; |
181 | // uint16_t min; |
182 | // uint16_t max; |
182 | // uint16_t max; |
183 | // uint16_t mid; |
183 | // uint16_t mid; |
184 | //} servo_t; |
184 | //} servo_t; |
185 | 185 | ||
186 | 186 | ||
187 | typedef struct |
187 | typedef struct |
188 | { |
188 | { |
189 | uint8_t WPIndex; // Index in der EEpromliste |
189 | uint8_t WPIndex; // Index in der EEpromliste |
190 | Point_t Waypoint; // Waypoint |
190 | Point_t Waypoint; // Waypoint |
191 | } WayPoints; |
191 | } WayPoints; |
192 | 192 | ||
193 | typedef struct |
193 | typedef struct |
194 | { |
194 | { |
195 | uint8_t WPListnumber; // Nummer der WP Liste im PKT |
195 | uint8_t WPListnumber; // Nummer der WP Liste im PKT |
196 | uint8_t WPListAktiv; // Liste aktiv |
196 | uint8_t WPListAktiv; // Liste aktiv |
197 | uint8_t WPDirectory[31]; // Enthält die Indexe der Waypoints im EEPROM |
197 | uint8_t WPDirectory[31]; // Enthält die Indexe der Waypoints im EEPROM |
198 | uint8_t UsePOI; |
198 | uint8_t UsePOI; |
199 | uint8_t POI_CAM_NICK_CTR; |
199 | uint8_t POI_CAM_NICK_CTR; |
200 | 200 | ||
201 | } WPListHeader; |
201 | } WPListHeader; |
202 | 202 | ||
203 | typedef struct |
203 | typedef struct |
204 | { |
204 | { |
205 | WPListHeader WPList; // Waypointliste im PKT |
205 | WPListHeader WPList; // Waypointliste im PKT |
206 | } WPListDirectory; |
206 | } WPListDirectory; |
207 | 207 | ||
208 | 208 | ||
209 | 209 | ||
210 | typedef struct SStructure |
210 | typedef struct SStructure |
211 | { |
211 | { |
212 | uint8_t Version; // PKT-Eeprom Version! |
212 | uint8_t Version; // PKT-Eeprom Version! |
213 | uint8_t MK_LowBat; // MK-LowBat Warnung u.a. fuer osd.c |
213 | uint8_t MK_LowBat; // MK-LowBat Warnung u.a. fuer osd.c |
214 | uint8_t DisplayTimeout; // autom. LCD ausschalten nach n Minuten |
214 | uint8_t DisplayTimeout; // autom. LCD ausschalten nach n Minuten |
215 | uint8_t DisplayLanguage; // eingestellte Sprache |
215 | uint8_t DisplayLanguage; // eingestellte Sprache |
216 | uint8_t WiTXRXChannel; // Wi.232: |
216 | uint8_t WiTXRXChannel; // Wi.232: |
217 | uint8_t WiNetworkGroup; // Wi.232: |
217 | uint8_t WiNetworkGroup; // Wi.232: |
218 | uint8_t WiNetworkMode; // Wi.232: |
218 | uint8_t WiNetworkMode; // Wi.232: |
219 | uint8_t WiTXTO; // Wi.232: |
219 | uint8_t WiTXTO; // Wi.232: |
220 | uint8_t WiUartMTU; // Wi.232: |
220 | uint8_t WiUartMTU; // Wi.232: |
221 | uint8_t OSD_ShowMKSetting; // Anzeige MK-Setting beim OSD Start |
221 | uint8_t OSD_ShowMKSetting; // Anzeige MK-Setting beim OSD Start |
222 | uint8_t PKTOffTimeout; // autom. PKT ausschalten nach n Minuten |
222 | uint8_t PKTOffTimeout; // autom. PKT ausschalten nach n Minuten |
223 | uint8_t LCD_Kontrast; // LCD-Kontrast |
223 | uint8_t LCD_Kontrast; // LCD-Kontrast |
224 | uint8_t LCD_Helligkeit; // LCD-Helligkeit - Aktuell nicht mehr verfuegbar weil auskommentiert! (mit HW 3.9x geht das sowiso nicht mehr!) |
224 | uint8_t LCD_Helligkeit; // LCD-Helligkeit - Aktuell nicht mehr verfuegbar weil auskommentiert! (mit HW 3.9x geht das sowiso nicht mehr!) |
225 | uint8_t USBBT; // ## OBSOLETE ## 31.05.2014 OG: wird nicht verwendet! (wofuer war da in der Vergangenheit?) |
225 | uint8_t USBBT; // ## OBSOLETE ## 31.05.2014 OG: wird nicht verwendet! (wofuer war da in der Vergangenheit?) |
226 | uint8_t U02SV2; // 0=Wi232-Verbindung zum MK, 1 = Kabelverbindung zum MK |
226 | uint8_t U02SV2; // 0=Wi232-Verbindung zum MK, 1 = Kabelverbindung zum MK |
227 | uint8_t Debug; // ??? OBSOLETE ??? 31.05.2014 OG: wird eigentlich nicht mehr verwendet (war zum debuggen vom PKT) |
227 | uint8_t Debug; // ??? OBSOLETE ??? 31.05.2014 OG: wird eigentlich nicht mehr verwendet (war zum debuggen vom PKT) |
228 | uint8_t UseWi; // Wi232 wird genutzt |
228 | uint8_t UseWi; // Wi232 wird genutzt |
229 | uint8_t UseBT; // BT wird genutzt |
229 | uint8_t UseBT; // BT wird genutzt |
230 | 230 | ||
231 | uint8_t WiIsSet; // Wi232 ist initialisiert |
231 | uint8_t WiIsSet; // Wi232 ist initialisiert |
232 | uint8_t BTIsSet; // BT ist initialisiert |
232 | uint8_t BTIsSet; // BT ist initialisiert |
233 | uint8_t BTIsSlave; // Slave Flag |
233 | uint8_t BTIsSlave; // Slave Flag |
234 | char bt_pin[bt_pin_length + 1]; // BT Pinnummer |
234 | char bt_pin[bt_pin_length + 1]; // BT Pinnummer |
235 | char bt_name[bt_name_length + 1]; // BT Name |
235 | char bt_name[bt_name_length + 1]; // BT Name |
236 | char RE_ID[RE_ID_length + 1]; // RE-ID |
236 | char RE_ID[RE_ID_length + 1]; // RE-ID |
237 | char bt_Mac[bt_mac_length + 1]; // MAC-Adresse BTM222 |
237 | char bt_Mac[bt_mac_length + 1]; // MAC-Adresse BTM222 |
238 | 238 | ||
239 | char gps_UsedDevName[20]; // benutztes GPS Device Name |
239 | char gps_UsedDevName[20]; // benutztes GPS Device Name |
240 | char gps_UsedMac[14]; // benutztes GPS Device Mac Adresse |
240 | char gps_UsedMac[14]; // benutztes GPS Device Mac Adresse |
241 | uint8_t gps_UseGPS; // ## GGF. OBSOLETE ## 25.06.2014 OG: siehe setup.c/Setup_GPSMouse() - "ist GPS aktiv?" |
241 | uint8_t gps_UseGPS; // ## GGF. OBSOLETE ## 25.06.2014 OG: siehe setup.c/Setup_GPSMouse() - "ist GPS aktiv?" |
242 | uint8_t gps_UsedGPSMouse; // ## GGF. OBSOLETE ## 25.06.2014 OG: siehe setup.c/Setup_GPSMouse() und tracking.c/PKT_tracking() - "GPS Maustyp" |
242 | uint8_t gps_UsedGPSMouse; // ## GGF. OBSOLETE ## 25.06.2014 OG: siehe setup.c/Setup_GPSMouse() und tracking.c/PKT_tracking() - "GPS Maustyp" |
243 | 243 | ||
244 | int32_t LastLongitude; // Letzte Position |
244 | int32_t LastLongitude; // Letzte Position |
245 | int32_t LastLatitude; // Letzte Position |
245 | int32_t LastLatitude; // Letzte Position |
246 | uint8_t PKT_IdleBeep; // ## OBSOLETE ## 31.05.2014 OG: wurde das jemals verwendet? |
246 | uint8_t PKT_IdleBeep; // ## OBSOLETE ## 31.05.2014 OG: wurde das jemals verwendet? |
247 | uint8_t PKT_StartInfo; // ## OBSOLETE ## 26.06.2013 OG: ehemals "PKT Startinfo anzeigen" |
247 | uint8_t PKT_StartInfo; // ## OBSOLETE ## 26.06.2013 OG: ehemals "PKT Startinfo anzeigen" |
248 | uint16_t Lipo_UOffset; // Offset für die Lipospannugsmessung |
248 | uint16_t Lipo_UOffset; // Offset für die Lipospannugsmessung |
249 | uint8_t PKT_Accutyp; // verwendeter Akkutyp |
249 | uint8_t PKT_Accutyp; // verwendeter Akkutyp |
250 | uint8_t OSD_RCErrorbeep; // Empfangsausffallwarnung im OSD Screen |
250 | uint8_t OSD_RCErrorbeep; // Empfangsausffallwarnung im OSD Screen |
251 | uint8_t OSD_InvertOut; // Out1/2 invertiert anzeigen |
251 | uint8_t OSD_InvertOut; // Out1/2 invertiert anzeigen |
252 | uint8_t OSD_LEDform; // Form der Anzeige ( + oder schwarz) |
252 | uint8_t OSD_LEDform; // Form der Anzeige ( + oder schwarz) |
253 | uint8_t OSD_SendOSD; // OSD Daten an SV2 senden |
253 | uint8_t OSD_SendOSD; // OSD Daten an SV2 senden |
254 | uint8_t OSD_Fallspeed; // maximale Sinkrate |
254 | uint8_t OSD_Fallspeed; // maximale Sinkrate |
255 | uint8_t OSD_VarioBeep; // Vario Beep im OSD Screen |
255 | uint8_t OSD_VarioBeep; // Vario Beep im OSD Screen |
256 | uint8_t OSD_HomeMKView; // ## OBSOLETE ## 02.07.2013 OG: ehemals "Home Circle from MK-View" |
256 | uint8_t OSD_HomeMKView; // ## OBSOLETE ## 02.07.2013 OG: ehemals "Home Circle from MK-View" |
257 | uint16_t OSD_mAh_Warning; // mAh Warnschwelle |
257 | uint16_t OSD_mAh_Warning; // mAh Warnschwelle |
258 | uint8_t OSD_ScreenMode; // Variante des OSD-Screen |
258 | uint8_t OSD_ScreenMode; // Variante des OSD-Screen |
259 | uint8_t OSD_LipoBar; // Bargraphanzeige für MK Lipo |
259 | uint8_t OSD_LipoBar; // Bargraphanzeige für MK Lipo |
260 | uint8_t PKT_Baudrate; // Baudrate für BT und Wi232 |
260 | uint8_t PKT_Baudrate; // Baudrate für BT und Wi232 |
261 | uint16_t FM_Azimuth; // Azimuth für FollowMe 4.8.2015 CB |
261 | int16_t FM_Azimuth; // Azimuth für FollowMe 4.8.2015 CB |
262 | uint16_t FM_Speed; // FollowMe Speed in m/s *0.1 |
262 | uint16_t FM_Speed; // FollowMe Speed in m/s *0.1 |
263 | uint16_t FM_Radius; // Waypoint Tolerance Radius in meter |
263 | uint16_t FM_Radius; // Waypoint Tolerance Radius in meter |
264 | uint8_t HWSound; // Hardware Sounderweiterung an PD7 |
264 | uint8_t HWSound; // Hardware Sounderweiterung an PD7 |
265 | uint8_t HWBeeper; // Hardware Beeper an PC7 |
265 | uint8_t HWBeeper; // Hardware Beeper an PC7 |
266 | uint8_t Volume; // Lautstärke |
266 | uint8_t Volume; // Lautstärke |
267 | servo_t servo[2]; // Tracking: |
267 | servo_t servo[2]; // Tracking: |
268 | uint8_t sIdxSteps; // Tracking: |
268 | uint8_t sIdxSteps; // Tracking: |
269 | uint16_t FM_Distance; // Distance für FollowMe 4.8.2015 CB |
269 | uint16_t FM_Distance; // Distance für FollowMe 4.8.2015 CB |
270 | uint8_t servo_frame; // Tracking: |
270 | uint8_t servo_frame; // Tracking: |
271 | uint8_t single_step; // Tracking: |
271 | uint8_t single_step; // Tracking: |
272 | uint8_t repeat; // Tracking: |
272 | uint8_t repeat; // Tracking: |
273 | uint8_t pause; // Tracking: |
273 | uint8_t pause; // Tracking: |
274 | uint8_t pause_step; // Tracking: |
274 | uint8_t pause_step; // Tracking: |
275 | uint8_t tracking; // ## OBSOLETE ## 31.05.2014 OG: das wird nirgendwo verwendet! |
275 | uint8_t tracking; // ## OBSOLETE ## 31.05.2014 OG: das wird nirgendwo verwendet! |
276 | uint8_t track_hyst; // ## OBSOLETE ## 31.05.2014 OG: das wird nirgendwo verwendet! |
276 | uint8_t track_hyst; // ## OBSOLETE ## 31.05.2014 OG: das wird nirgendwo verwendet! |
277 | uint8_t track_tx; // ## OBSOLETE ## 31.05.2014 OG: das wird nirgendwo verwendet! |
277 | uint8_t track_tx; // ## OBSOLETE ## 31.05.2014 OG: das wird nirgendwo verwendet! |
278 | 278 | ||
279 | uint16_t stick_min[5]; // Joystick: Stickparameter |
279 | uint16_t stick_min[5]; // Joystick: Stickparameter |
280 | uint16_t stick_max[5]; // Joystick: |
280 | uint16_t stick_max[5]; // Joystick: |
281 | uint8_t stick_typ[5]; // Joystick: |
281 | uint8_t stick_typ[5]; // Joystick: |
282 | uint8_t stick_dir[5]; // Joystick: |
282 | uint8_t stick_dir[5]; // Joystick: |
283 | uint8_t stick_neutral[5]; // Joystick: Stick neutralisierend: ja/nein |
283 | uint8_t stick_neutral[5]; // Joystick: Stick neutralisierend: ja/nein |
284 | uint8_t Lipomessung; // wenn Lipomessung deaktiviert(Lötbrücke öffnen), kann der Kanal als Stick verwendet werden |
284 | uint8_t Lipomessung; // wenn Lipomessung deaktiviert(Lötbrücke öffnen), kann der Kanal als Stick verwendet werden |
285 | int8_t timezone; // Einstellbereich -12 .. 0 .. 12 Defaultwert: 1 (entspricht unserer Zeitzone) |
285 | int8_t timezone; // Einstellbereich -12 .. 0 .. 12 Defaultwert: 1 (entspricht unserer Zeitzone) |
286 | uint8_t summertime; // Einstellung: 0 oder 1 (0=Winterzeit, 1=Sommerzeit) Defaultwert: 1 (entspricht unserer Sommerzeit in D) |
286 | uint8_t summertime; // Einstellung: 0 oder 1 (0=Winterzeit, 1=Sommerzeit) Defaultwert: 1 (entspricht unserer Sommerzeit in D) |
287 | uint8_t UseWL; // WLAN (WiFly) wird an SV2 genutzt (SV2 Patch erforderlich) |
287 | uint8_t UseWL; // WLAN (WiFly) wird an SV2 genutzt (SV2 Patch erforderlich) |
288 | char Wlan_SSID[wlan_ssid_length+1]; // Wlan SSID |
288 | char Wlan_SSID[wlan_ssid_length+1]; // Wlan SSID |
289 | char Wlan_Password[wlan_password_length+1]; // Wlan Passwort |
289 | char Wlan_Password[wlan_password_length+1]; // Wlan Passwort |
290 | uint8_t WLIsSet; // ## OBSOLETE ## 31.05.2014 OG: ehemals "Wlan ist initialisiert" |
290 | uint8_t WLIsSet; // ## OBSOLETE ## 31.05.2014 OG: ehemals "Wlan ist initialisiert" |
291 | uint32_t OSD_UseScreen; // welche OSD-Screens nutzen (Bit-codiert) |
291 | uint32_t OSD_UseScreen; // welche OSD-Screens nutzen (Bit-codiert) |
292 | uint8_t Wlan_DHCP; // ## OBSOLETE ## 31.05.2014 OG: ehemals "0-4" |
292 | uint8_t Wlan_DHCP; // ## OBSOLETE ## 31.05.2014 OG: ehemals "0-4" |
293 | uint8_t Wlan_WPA; // ## OBSOLETE ## 31.05.2014 OG: ehemals "0-8" |
293 | uint8_t Wlan_WPA; // ## OBSOLETE ## 31.05.2014 OG: ehemals "0-8" |
294 | uint8_t Wlan_Adhoc; // ## OBSOLETE ## 31.05.2014 OG: ehemals "false = AP , true = Adhoc" |
294 | uint8_t Wlan_Adhoc; // ## OBSOLETE ## 31.05.2014 OG: ehemals "false = AP , true = Adhoc" |
295 | uint8_t Wlan_Channel; // 0-13 |
295 | uint8_t Wlan_Channel; // 0-13 |
296 | char Wlan_IP[wlan_ip_length+1]; // ## OBSOLETE ## 31.05.2014 OG: ehemals "IP-Adresse" (16 Bytes!) |
296 | char Wlan_IP[wlan_ip_length+1]; // ## OBSOLETE ## 31.05.2014 OG: ehemals "IP-Adresse" (16 Bytes!) |
297 | char Wlan_Netmask[wlan_netmask_length+1]; // ## OBSOLETE ## 31.05.2014 OG: ehemals "SubnetMask" (16 Bytes!) |
297 | char Wlan_Netmask[wlan_netmask_length+1]; // ## OBSOLETE ## 31.05.2014 OG: ehemals "SubnetMask" (16 Bytes!) |
298 | char Wlan_Gateway[wlan_gateway_length+1]; // ## OBSOLETE ## 31.05.2014 OG: ehemals "Defaultgateway" (16 Bytes!) |
298 | char Wlan_Gateway[wlan_gateway_length+1]; // ## OBSOLETE ## 31.05.2014 OG: ehemals "Defaultgateway" (16 Bytes!) |
299 | uint8_t OSD_ShowCellU; // OSD Azeige: Anzeige UBat als Einzelzellenspannung (ja/nein) |
299 | uint8_t OSD_ShowCellU; // OSD Azeige: Anzeige UBat als Einzelzellenspannung (ja/nein) |
300 | uint8_t UseBLE; // Bluetooth 4 LowPower wird genutzt (RedBearLab BLE Mini) wird an SV2 genutzt (SV2 Patch erforderlich) |
300 | uint8_t UseBLE; // Bluetooth 4 LowPower wird genutzt (RedBearLab BLE Mini) wird an SV2 genutzt (SV2 Patch erforderlich) |
301 | unsigned char MKParam_Favs[MAX_MKPARAM_FAVORITES]; // Array von MK-Parameter Favoriten des Benutzers |
301 | unsigned char MKParam_Favs[MAX_MKPARAM_FAVORITES]; // Array von MK-Parameter Favoriten des Benutzers |
302 | 302 | ||
303 | char Wlan_HomeSSID[wlan_ssid_length+1]; // Wlan SSID (Home-WLAN) |
303 | char Wlan_HomeSSID[wlan_ssid_length+1]; // Wlan SSID (Home-WLAN) |
304 | char Wlan_HomePassword[wlan_password_length+1]; // Wlan Passwort (Home-WLAN) |
304 | char Wlan_HomePassword[wlan_password_length+1]; // Wlan Passwort (Home-WLAN) |
305 | 305 | ||
306 | 306 | ||
307 | //!!!neue Parameter ab hier anfügen!!!!!! |
307 | //!!!neue Parameter ab hier anfügen!!!!!! |
308 | 308 | ||
309 | 309 | ||
310 | // ab hier werden die Parameter bei EEPROMversionsänderungen gelöscht |
310 | // ab hier werden die Parameter bei EEPROMversionsänderungen gelöscht |
311 | Point_t PointList[MAX_LIST_LEN]; // ab EEPROM Version 78 |
311 | Point_t PointList[MAX_LIST_LEN]; // ab EEPROM Version 78 |
312 | osd_statistic_t OSD_Statistic; // ab EEPROM Version 79 & 81 OSD Statistiken |
312 | osd_statistic_t OSD_Statistic; // ab EEPROM Version 79 & 81 OSD Statistiken |
313 | pkt_gpspos_t GPS_User[MAX_GPS_USER]; // ab EEPROM Version 79 speichert Benutzer GPS-Positionen |
313 | pkt_gpspos_t GPS_User[MAX_GPS_USER]; // ab EEPROM Version 79 speichert Benutzer GPS-Positionen |
314 | mkerror_t MKErr_Log[MAX_MKERR_LOG]; // ab EEPROM Version 79 speichert auftretende ErrorCode's vom MK |
314 | mkerror_t MKErr_Log[MAX_MKERR_LOG]; // ab EEPROM Version 79 speichert auftretende ErrorCode's vom MK |
315 | 315 | ||
316 | } ST; |
316 | } ST; |
317 | 317 | ||
318 | extern ST Config; |
318 | extern ST Config; |
319 | 319 | ||
320 | void ReadParameter (void); |
320 | void ReadParameter (void); |
321 | void WriteParameter (void); |
321 | void WriteParameter (void); |
322 | void ReadLastPosition(void); |
322 | void ReadLastPosition(void); |
323 | void WriteLastPosition(uint32_t ELongitude,uint32_t ELatitude); |
323 | void WriteLastPosition(uint32_t ELongitude,uint32_t ELatitude); |
324 | void WriteWiInitFlag(void); |
324 | void WriteWiInitFlag(void); |
325 | void WriteBTInitFlag(void); |
325 | void WriteBTInitFlag(void); |
326 | void WriteWLInitFlag(void); |
326 | void WriteWLInitFlag(void); |
327 | void WriteBTSlaveFlag(void); |
327 | void WriteBTSlaveFlag(void); |
328 | void WriteBTMasterFlag(void); |
328 | void WriteBTMasterFlag(void); |
329 | void Delete_EEPROM(void); |
329 | void Delete_EEPROM(void); |
330 | void SendConfigData(void); |
330 | void SendConfigData(void); |
331 | //void EEWayPointList_Clear(void); // l�schen der Waypointliste im EEProm |
331 | //void EEWayPointList_Clear(void); // l�schen der Waypointliste im EEProm |
332 | 332 | ||
333 | #endif |
333 | #endif |
334 | 334 |