Skip to content

Commit 720a581

Browse files
Merge pull request #56 from larus-breeze/main
Merging recent changes into release candidate.
2 parents 7307246 + 81eac8b commit 720a581

File tree

5 files changed

+2
-49
lines changed

5 files changed

+2
-49
lines changed

NAV_Algorithms/AHRS.cpp

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -399,12 +399,8 @@ void AHRS_type::write_calibration_into_EEPROM( void)
399399
if( !magnetic_calibration_updated)
400400
return;
401401

402-
lock_EEPROM( false);
403-
404402
compass_calibration.write_into_EEPROM();
405403
magnetic_calibration_updated = false; // done ...
406-
407-
lock_EEPROM( true);
408404
}
409405

410406
void AHRS_type::handle_magnetic_calibration ( void)

NAV_Algorithms/compass_calibration.h

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -175,8 +175,6 @@ template <class sample_type, class evaluation_type> class compass_calibration_t
175175
if( calibration_done == false)
176176
return;
177177

178-
EEPROM_initialize();
179-
180178
float variance = 0.0f;
181179
for( unsigned i=0; i<3; ++i)
182180
{

NAV_Algorithms/organizer.h

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -82,11 +82,9 @@ class organizer_t
8282
eulerangle<float> euler = q;
8383

8484
// make the change permanent
85-
lock_EEPROM( false);
8685
write_EEPROM_value( SENS_TILT_ROLL, euler.roll);
8786
write_EEPROM_value( SENS_TILT_PITCH, euler.pitch);
8887
write_EEPROM_value( SENS_TILT_YAW, euler.yaw);
89-
lock_EEPROM( true);
9088
}
9189

9290
void fine_tune_sensor_orientation( const vector_average_collection_t & values)
@@ -110,11 +108,9 @@ class organizer_t
110108
eulerangle<float> new_euler = q_new_setting;
111109

112110
// make the change permanent
113-
lock_EEPROM( false);
114111
write_EEPROM_value( SENS_TILT_ROLL, new_euler.roll);
115112
write_EEPROM_value( SENS_TILT_PITCH, new_euler.pitch);
116113
write_EEPROM_value( SENS_TILT_YAW, new_euler.yaw);
117-
lock_EEPROM( true);
118114
}
119115

120116
void initialize_before_measurement( void)

NAV_Algorithms/persistent_data.cpp

Lines changed: 2 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -76,24 +76,16 @@ bool all_EEPROM_parameters_available( void)
7676

7777
void ensure_EEPROM_parameter_integrity( void)
7878
{
79-
bool EEPROM_has_been_unlocked = false;
8079
float dummy;
8180
const persistent_data_t * parameter = PERSISTENT_DATA;
8281
while( parameter < PERSISTENT_DATA + PERSISTENT_DATA_ENTRIES)
8382
{
8483
if( true == read_EEPROM_value( parameter->id, dummy)) // parameter missing
8584
{
86-
if( EEPROM_has_been_unlocked == false)
87-
{
88-
lock_EEPROM( false);
89-
EEPROM_has_been_unlocked = true;
90-
}
9185
(void) write_EEPROM_value( parameter->id, parameter->default_value);
9286
}
9387
++parameter;
9488
}
95-
if( EEPROM_has_been_unlocked)
96-
lock_EEPROM( true);
9789
}
9890

9991
const persistent_data_t * find_parameter_from_name( char * name)
@@ -219,33 +211,19 @@ bool EEPROM_convert( EEPROM_PARAMETER_ID id, EEPROM_data_t & EEPROM_value, float
219211
return false; // OK
220212
}
221213

222-
bool lock_EEPROM( bool lockit)
223-
{
224-
if( lockit)
225-
return HAL_FLASH_Lock();
226-
227-
HAL_FLASH_Unlock();
228-
return (EE_Init());
229-
}
230-
231214
bool write_EEPROM_value( EEPROM_PARAMETER_ID id, float value)
232215
{
233216
EEPROM_data_t EEPROM_value;
234217
if( EEPROM_convert( id, EEPROM_value, value , WRITE))
235218
return true; // error
236219

237-
EEPROM_data_t read_value;
238-
if( (HAL_OK != EE_ReadVariable( id, &read_value.u16))
239-
||
240-
(read_value.u16 != EEPROM_value.u16) )
241-
return EE_WriteVariable( id, EEPROM_value.u16);
242-
return HAL_OK;
220+
return EE_WriteVariableBuffered( id, EEPROM_value.u16);
243221
}
244222

245223
bool read_EEPROM_value( EEPROM_PARAMETER_ID id, float &value)
246224
{
247225
uint16_t data;
248-
if( HAL_OK != EE_ReadVariable( id, (uint16_t*)&data))
226+
if( HAL_OK != EE_ReadVariableBuffered( id, (uint16_t*)&data))
249227
return true;
250228
return ( EEPROM_convert( id, (EEPROM_data_t &)data, value , READ));
251229
}
@@ -258,17 +236,4 @@ float configuration( EEPROM_PARAMETER_ID id)
258236
return value;
259237
}
260238

261-
bool EEPROM_initialize( void)
262-
{
263-
unsigned status;
264-
265-
status = HAL_FLASH_Unlock();
266-
ASSERT(status == HAL_OK);
267-
268-
status = EE_Init();
269-
ASSERT(status == HAL_OK);
270-
271-
return HAL_OK;
272-
}
273-
274239
#endif

NAV_Algorithms/persistent_data.h

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -95,8 +95,6 @@ const persistent_data_t * find_parameter_from_ID( EEPROM_PARAMETER_ID id);
9595
float configuration( EEPROM_PARAMETER_ID id);
9696
bool write_EEPROM_value( EEPROM_PARAMETER_ID id, float value);
9797
bool read_EEPROM_value( EEPROM_PARAMETER_ID id, float &value);
98-
bool lock_EEPROM( bool lockit);
99-
bool EEPROM_initialize( void);
10098
void ensure_EEPROM_parameter_integrity(void);
10199

102100
extern const persistent_data_t PERSISTENT_DATA[];

0 commit comments

Comments
 (0)