Use fabs() instead of abs() when using floats

This saves 514 bytes of flash memory
This commit is contained in:
Guðni Már Gilbert 2021-07-02 17:07:01 +00:00 committed by DRracer
parent 31b913cddb
commit d853c19a21
5 changed files with 14 additions and 14 deletions

View File

@ -5503,7 +5503,7 @@ if(eSoundMode!=e_SOUND_MODE_SILENT)
plan_buffer_line_curposXYZE(3000 / 60);
st_synchronize();
while (abs(degBed() - PINDA_MIN_T) > 1) {
while (fabs(degBed() - PINDA_MIN_T) > 1) {
delay_keep_alive(1000);
serialecho_temperatures();
}
@ -9694,7 +9694,7 @@ void mesh_plan_buffer_line(const float &x, const float &y, const float &z, const
int n_segments = 0;
if (mbl.active) {
float len = abs(dx) + abs(dy);
float len = fabs(dx) + fabs(dy);
if (len > 0)
// Split to 3cm segments or shorter.
n_segments = int(ceil(len / 30.f));
@ -11240,7 +11240,7 @@ void uvlo_tiny()
planner_abort_hard();
// Allow for small roundoffs to be ignored
if(abs(current_position[Z_AXIS] - eeprom_read_float((float*)(EEPROM_UVLO_TINY_CURRENT_POSITION_Z))) >= 1.f/cs.axis_steps_per_unit[Z_AXIS])
if(fabs(current_position[Z_AXIS] - eeprom_read_float((float*)(EEPROM_UVLO_TINY_CURRENT_POSITION_Z))) >= 1.f/cs.axis_steps_per_unit[Z_AXIS])
{
// Clean the input command queue, inhibit serial processing using saved_printing
cmdqueue_reset();
@ -12028,7 +12028,7 @@ void M600_wait_for_user(float HotendTempBckp) {
break;
case 2: //waiting for nozzle to reach target temperature
if (abs(degTargetHotend(active_extruder) - degHotend(active_extruder)) < 1) {
if (fabs(degTargetHotend(active_extruder) - degHotend(active_extruder)) < 1) {
lcd_display_message_fullscreen_P(_T(MSG_PRESS_TO_UNLOAD));
waiting_start_time = _millis();
wait_for_user_state = 0;

View File

@ -993,7 +993,7 @@ bool find_bed_induction_sensor_point_z(float minimum_z, uint8_t n_iter, int
// we have to let the planner know where we are right now as it is not where we said to go.
update_current_position_z();
//printf_P(PSTR("Zs: %f, Z: %f, delta Z: %f"), z_bckp, current_position[Z_AXIS], (z_bckp - current_position[Z_AXIS]));
if (abs(current_position[Z_AXIS] - z_bckp) < 0.025) {
if (fabs(current_position[Z_AXIS] - z_bckp) < 0.025) {
//printf_P(PSTR("PINDA triggered immediately, move Z higher and repeat measurement\n"));
current_position[Z_AXIS] += 0.5;
go_to_current(homing_feedrate[Z_AXIS]/60);
@ -1019,7 +1019,7 @@ bool find_bed_induction_sensor_point_z(float minimum_z, uint8_t n_iter, int
// SERIAL_ECHOPGM("Bed find_bed_induction_sensor_point_z low, height: ");
// MYSERIAL.print(current_position[Z_AXIS], 5);
// SERIAL_ECHOLNPGM("");
float dz = i?abs(current_position[Z_AXIS] - (z / i)):0;
float dz = i?fabs(current_position[Z_AXIS] - (z / i)):0;
z += current_position[Z_AXIS];
//printf_P(PSTR("Z[%d] = %d, dz=%d\n"), i, (int)(current_position[Z_AXIS] * 1000), (int)(dz * 1000));
//printf_P(PSTR("Z- measurement deviation from avg value %f um\n"), dz);

View File

@ -1095,7 +1095,7 @@ Having the real displacement of the head, we can calculate the total movement le
*/
block->use_advance_lead = extruder_advance_K > 0
&& delta_mm[E_AXIS] >= 0
&& abs(delta_mm[Z_AXIS]) < 0.5;
&& fabs(delta_mm[Z_AXIS]) < 0.5;
if (block->use_advance_lead) {
#ifdef LA_FLOWADJ
// M221/FLOW should change uniformly the extrusion thickness

View File

@ -472,7 +472,7 @@ void __attribute__((noinline)) PID_autotune(float temp, int extruder, int ncycle
//SERIAL_ECHOPGM("s. Difference between current and ambient T: ");
//MYSERIAL.println(input - temp_ambient);
if (abs(input - temp_ambient) < 5.0) {
if (fabs(input - temp_ambient) < 5.0) {
temp_runaway_stop(false, (extruder<0));
pid_tuning_finished = true;
return;

View File

@ -4794,7 +4794,7 @@ static void wait_preheat()
delay_keep_alive(2000);
lcd_display_message_fullscreen_P(_T(MSG_WIZARD_HEATING));
lcd_set_custom_characters();
while (abs(degHotend(0) - degTargetHotend(0)) > 3) {
while (fabs(degHotend(0) - degTargetHotend(0)) > 3) {
lcd_display_message_fullscreen_P(_T(MSG_WIZARD_HEATING));
lcd_set_cursor(0, 4);
@ -7760,7 +7760,7 @@ static bool lcd_selfcheck_axis_sg(unsigned char axis) {
eeprom_write_word(((uint16_t*)((axis == X_AXIS)?EEPROM_BELTSTATUS_X:EEPROM_BELTSTATUS_Y)), sg1);
current_position_final = st_get_position_mm(axis);
measured_axis_length[0] = abs(current_position_final - current_position_init);
measured_axis_length[0] = fabs(current_position_final - current_position_init);
// first measurement end and second measurement begin
@ -7777,7 +7777,7 @@ static bool lcd_selfcheck_axis_sg(unsigned char axis) {
current_position_init = st_get_position_mm(axis);
measured_axis_length[1] = abs(current_position_final - current_position_init);
measured_axis_length[1] = fabs(current_position_final - current_position_init);
tmc2130_home_exit();
@ -7785,7 +7785,7 @@ static bool lcd_selfcheck_axis_sg(unsigned char axis) {
for(uint_least8_t i = 0; i < 2; i++){ //check if measured axis length corresponds to expected length
printf_P(_N("Measured axis length:%.3f\n"), measured_axis_length[i]);
if (abs(measured_axis_length[i] - axis_length) > max_error_mm) {
if (fabs(measured_axis_length[i] - axis_length) > max_error_mm) {
enable_endstops(false);
const char *_error_1;
@ -7804,9 +7804,9 @@ static bool lcd_selfcheck_axis_sg(unsigned char axis) {
}
}
printf_P(_N("Axis length difference:%.3f\n"), abs(measured_axis_length[0] - measured_axis_length[1]));
printf_P(_N("Axis length difference:%.3f\n"), fabs(measured_axis_length[0] - measured_axis_length[1]));
if (abs(measured_axis_length[0] - measured_axis_length[1]) > 1) { //check if difference between first and second measurement is low
if (fabs(measured_axis_length[0] - measured_axis_length[1]) > 1) { //check if difference between first and second measurement is low
//loose pulleys
const char *_error_1;