grblHAL core  20241107
grbllib.c File Reference
#include <string.h>
#include <stdlib.h>
#include <assert.h>
#include "hal.h"
#include "nuts_bolts.h"
#include "tool_change.h"
#include "override.h"
#include "protocol.h"
#include "machine_limits.h"
#include "report.h"
#include "state_machine.h"
#include "nvs_buffer.h"
#include "stream.h"

Data Structures

union  driver_startup_t
 
struct  core_task
 

Macros

#define CORE_TASK_POOL_SIZE   30
 

Typedefs

typedef struct core_task core_task_t
 

Functions

void dummy_bool_handler (bool arg)
 
void reset_handler (void)
 
int grbl_enter (void)
 
ISR_CODE bool ISR_FUNC() task_add_delayed (foreground_task_ptr fn, void *data, uint32_t delay_ms)
 
void task_delete (foreground_task_ptr fn, void *data)
 
ISR_CODE bool ISR_FUNC() task_add_systick (foreground_task_ptr fn, void *data)
 
void task_delete_systick (foreground_task_ptr fn, void *data)
 
ISR_CODE bool ISR_FUNC() task_add_immediate (foreground_task_ptr fn, void *data)
 Enqueue a function to be called once by the foreground process. More...
 

Variables

struct system sys = {0}
 System global variable structure. More...
 
grbl_t grbl
 
grbl_hal_t hal
 Global HAL struct. More...
 

Macro Definition Documentation

◆ CORE_TASK_POOL_SIZE

#define CORE_TASK_POOL_SIZE   30

Typedef Documentation

◆ core_task_t

typedef struct core_task core_task_t

Function Documentation

◆ dummy_bool_handler()

void dummy_bool_handler ( bool  arg)

◆ grbl_enter()

int grbl_enter ( void  )

◆ reset_handler()

void reset_handler ( void  )

◆ task_add_delayed()

ISR_CODE bool ISR_FUNC() task_add_delayed ( foreground_task_ptr  fn,
void *  data,
uint32_t  delay_ms 
)

◆ task_add_immediate()

ISR_CODE bool ISR_FUNC() task_add_immediate ( foreground_task_ptr  fn,
void *  data 
)

Enqueue a function to be called once by the foreground process.

Parameters
fnpointer to a foreground_task_ptr type of function.
datapointer to data to be passed to the callee.
Returns
true if successful, false otherwise.

◆ task_add_systick()

ISR_CODE bool ISR_FUNC() task_add_systick ( foreground_task_ptr  fn,
void *  data 
)

◆ task_delete()

void task_delete ( foreground_task_ptr  fn,
void *  data 
)

◆ task_delete_systick()

void task_delete_systick ( foreground_task_ptr  fn,
void *  data 
)

Variable Documentation

◆ grbl

grbl_t grbl

◆ hal

Global HAL struct.

◆ sys

struct system sys = {0}

System global variable structure.