From fbed795f472d66b15b7de394e6e7add8b43b710d Mon Sep 17 00:00:00 2001 From: Sonny Jeon Date: Sat, 11 Feb 2012 12:08:37 -0700 Subject: [PATCH] Minor compiler compatibility update for _delay_us(). --- limits.c | 4 ++-- nuts_bolts.c | 10 +++++++++- nuts_bolts.h | 5 ++++- 3 files changed, 15 insertions(+), 4 deletions(-) diff --git a/limits.c b/limits.c index 6444c8d..d16b9b4 100644 --- a/limits.c +++ b/limits.c @@ -71,9 +71,9 @@ static void homing_cycle(bool x_axis, bool y_axis, bool z_axis, bool reverse_dir // Check if we are done if(!(x_axis || y_axis || z_axis)) { return; } STEPPING_PORT |= out_bits & STEP_MASK; - _delay_us(settings.pulse_microseconds); + delay_us(settings.pulse_microseconds); STEPPING_PORT ^= out_bits & STEP_MASK; - _delay_us(step_delay); + delay_us(step_delay); } return; } diff --git a/nuts_bolts.c b/nuts_bolts.c index 3c699c3..97137a3 100644 --- a/nuts_bolts.c +++ b/nuts_bolts.c @@ -3,7 +3,8 @@ Part of Grbl Copyright (c) 2009-2011 Simen Svale Skogsrud - + Copyright (c) 2011-2012 Sungeun K. Jeon + Grbl is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or @@ -43,3 +44,10 @@ void delay_ms(uint16_t ms) { while ( ms-- ) { _delay_ms(1); } } + +// Delays variable defined microseconds. Compiler compatibility fix for _delay_us(), +// which only accepts constants in future compiler releases. +void delay_us(uint16_t us) +{ + while ( us-- ) { _delay_us(1); } +} diff --git a/nuts_bolts.h b/nuts_bolts.h index ae71773..4f4f553 100644 --- a/nuts_bolts.h +++ b/nuts_bolts.h @@ -3,7 +3,7 @@ Part of Grbl Copyright (c) 2009-2011 Simen Svale Skogsrud - Copyright (c) 2011 Sungeun K. Jeon + Copyright (c) 2011-2012 Sungeun K. Jeon Grbl is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -45,4 +45,7 @@ int read_double(char *line, uint8_t *char_counter, double *double_ptr); // Delays variable-defined milliseconds. Compiler compatibility fix for _delay_ms(). void delay_ms(uint16_t ms); +// Delays variable-defined microseconds. Compiler compatibility fix for _delay_us(). +void delay_us(uint16_t us); + #endif