gnea\grbl-Mega  1.0f
Source Code Documentation ( Internal Workings )
nuts_bolts.c File Reference
#include "grbl.h"

Go to the source code of this file.

Macros

#define MAX_INT_DIGITS   8
 Maximum number of digits in int32 (and float) More...
 

Functions

uint8_t read_float (char *line, uint8_t *char_counter, float *float_ptr)
 Extracts a floating point value from a string. The following code is based loosely on. More...
 
void delay_sec (float seconds, uint8_t mode)
 Non-blocking delay function used for general operation and suspend features. More...
 
void delay_ms (uint16_t ms)
 Delays variable defined milliseconds. Compiler compatibility fix for _delay_ms(),. More...
 
void delay_us (uint32_t us)
 Delays variable defined microseconds. Compiler compatibility fix for _delay_us(),. More...
 
float hypot_f (float x, float y)
 Simple hypotenuse computation function. More...
 
float convert_delta_vector_to_unit_vector (float *vector)
 
float limit_value_by_axis_maximum (float *max_value, float *unit_vec)
 

Macro Definition Documentation

#define MAX_INT_DIGITS   8

Maximum number of digits in int32 (and float)

Definition at line 25 of file nuts_bolts.c.

Function Documentation

float convert_delta_vector_to_unit_vector ( float *  vector)

Definition at line 160 of file nuts_bolts.c.

void delay_ms ( uint16_t  ms)

Delays variable defined milliseconds. Compiler compatibility fix for _delay_ms(),.

Delays variable-defined milliseconds. Compiler compatibility fix for _delay_ms().

Definition at line 129 of file nuts_bolts.c.

void delay_sec ( float  seconds,
uint8_t  mode 
)

Non-blocking delay function used for general operation and suspend features.

< DELAY_MODE_SYS_SUSPEND

< Execute rt_system() only to avoid nesting suspend loops.

< Delay DWELL_TIME_STEP increment

Definition at line 111 of file nuts_bolts.c.

void delay_us ( uint32_t  us)

Delays variable defined microseconds. Compiler compatibility fix for _delay_us(),.

Delays variable-defined microseconds. Compiler compatibility fix for _delay_us().

Definition at line 137 of file nuts_bolts.c.

float hypot_f ( float  x,
float  y 
)

Simple hypotenuse computation function.

Computes hypotenuse, avoiding avr-gcc's bloated version and the extra error checking.

Definition at line 157 of file nuts_bolts.c.

float limit_value_by_axis_maximum ( float *  max_value,
float *  unit_vec 
)

< Avoid divide by zero.

Definition at line 176 of file nuts_bolts.c.

uint8_t read_float ( char *  line,
uint8_t *  char_counter,
float *  float_ptr 
)

Extracts a floating point value from a string. The following code is based loosely on.

Read a floating point value from a string. Line points to the input buffer, char_counter.

NOTE: Thanks to Radu-Eosif Mihailescu for identifying the issues with using strtod().

< intval*10 + c

< Set char_counter to next statement

Definition at line 35 of file nuts_bolts.c.