Function Index
$#! · 0-9 · A · B · C · D · E · F · G · H · I · J · K · L · M · N · O · P · Q · R · S · T · U · V · W · X · Y · Z
I
 i2chelper_mstr_init
 i2chelper_request
 i2chelper_shutdown
M
 mcp23018_begin_read
 mcp23018_begin_write
 mcp23018_is_valid_reg
 mcp23018_poll_read
 mcp23018_read
 mcp23018_write
 mcp4x_set_wiper
 mcp4x_shutdown
 memmon_add
 memmon_get_free_ram
 memmon_init
 memmon_remove
 memmon_remove_ptr
 memmon_shutdown
S
 sched_add
 sched_find
 sched_get_at
 sched_init
 sched_invoke
 sched_invoke_all
 sched_ptr_query
 sched_query
 sched_remove
 sched_run
 sched_task_handler
 sched_time_add
 sched_time_gt
 sched_time_gte
 sched_time_is_zero
 sched_time_lt
 sched_time_lte
 sched_time_sub
 sched_wake
 sched_wake_all
 spihelper_init
 spihelper_mstr_init
 spihelper_shutdown
void i2chelper_mstr_init(uint8_t twbr,
sched_catflags task_cats)
Configures the I2C module for master mode (the only one currently implemented).
i2c_state i2chelper_request(i2c_slave_addr addr,
uint8_t n_out,
volatile const uint8_t *bfr_out,
uint8_t n_in,
volatile uint8_t *bfr_in)
Initiates an I2C request operation consisting of a transmit phase followed by a receive phase.
void i2chelper_shutdown(void)
Shuts down the I2C module.
i2c_state mcp23018_begin_read(i2c_slave_addr addr,
mcp23018_reg r)
Starts an asynchronous register read operation.
i2c_state mcp23018_begin_write(i2c_slave_addr addr,
mcp23018_reg r,
uint8_t v)
Starts an asynchronous register write operation.
uint8_t mcp23018_is_valid_reg(mcp23018_reg r)
Register address validator.
i2c_state mcp23018_poll_read(uint8_t *v)
Tests whether there is an ongoing I2C operation.
i2c_state mcp23018_read(i2c_slave_addr addr,
mcp23018_reg r,
uint8_t *v)
Performs a synchronous register read operation.
i2c_state mcp23018_write(i2c_slave_addr addr,
mcp23018_reg r,
uint8_t v)
Performs a synchronous register write operation.
void mcp4x_set_wiper(uint8_t pot,
uint8_t pos)
Updates the potentiometer wiper setting of the selected MCP4x device.
void mcp4x_shutdown(uint8_t pot)
Disables a potentiometer in the selected MCP4x device.
uint8_t memmon_add(const memmon_spec *mon)
Registers a memory monitor.
ptrdiff_t memmon_get_free_ram(void)
Obtains the amount of available unused RAM.
void memmon_init(uint8_t task_num_cat,
uint8_t max_mon,
memmon_spec *mon_array,
sched_time delay,
uint8_t tlv_typ,
uint8_t inm_dstadr)
Initializes the memory monitor module.
uint8_t memmon_remove(uint8_t mon_i)
Unregisters a memory monitor with a specified index number.
uint8_t memmon_remove_ptr(memmon_cptr mon_ptr)
Unregisters a memory monitor monitoring a specified location.
void memmon_shutdown(void)
Shuts down the memory monitor module.
uint8_t sched_add(const sched_task *task)
Adds the specified task to the task list.
sched_task *sched_find(uint8_t st_mask,
uint8_t st_val,
uint8_t start_i)
Queries the task list.
sched_task *sched_get_at(uint8_t i)
Accesses the task list by index.
void sched_init(void)
Initializes the task scheduler.
uint8_t sched_invoke(uint8_t st_mask,
uint8_t st_val,
uint8_t start_i)
Invokes a matching task on the task list.
void sched_invoke_all(uint8_t st_mask,
uint8_t st_val)
Invokes all matching tasks on the task list.
sched_task *sched_ptr_query(uint8_t st_mask,
uint8_t st_val,
uint8_t start_i,
uint8_t *task_i_p)
Queries the task list.
uint8_t sched_query(uint8_t st_mask,
uint8_t st_val,
uint8_t start_i)
Queries the task list.
uint8_t sched_remove(uint8_t st_mask,
uint8_t st_val,
uint8_t start_i)
Marks a matching task on the task list for removal.
void sched_run(void) __attribute__ ((noreturn))
Enters the main loop of the task scheduler.
typedef void (*sched_task_handler)(struct sched_task *task)
The type of pointers to functions that implement a task handler procedure.
sched_time sched_time_add(sched_time a,
sched_time b)
Adds sched_time b to sched_time a.
uint8_t sched_time_gt(sched_time a,
sched_time b)
Tests whether sched_time a contains a greater integer value than b.
uint8_t sched_time_gte(sched_time a,
sched_time b)
Tests whether sched_time a contains a greater-or-equal integer value than b.
uint8_t sched_time_is_zero(sched_time t)
Tests whether a sched_time contains a zero value.
uint8_t sched_time_lt(sched_time a,
sched_time b)
Tests whether sched_time a contains a lesser integer value than b.
uint8_t sched_time_lte(sched_time a,
sched_time b)
Tests whether sched_time a contains a lesser-or-equal integer value than b.
sched_time sched_time_sub(sched_time a,
sched_time b)
Subtracts sched_time b from sched_time a.
uint8_t sched_wake(uint8_t st_mask,
uint8_t st_val,
uint8_t start_i,
uint8_t notify)
Awakens and optionally notifies a matching task on the task list.
void sched_wake_all(uint8_t st_mask,
uint8_t st_val,
uint8_t notify)
Awakens and optionally notifies all matching tasks on the task list.
void spihelper_init(uint8_t ctrl)
Configures the SPI module for either Master or Slave mode, depending on the value of the Master/Slave Select (MSTR) bit in the ctrl argument.
void spihelper_mstr_init(uint8_t ss_b,
uint8_t ss_c,
uint8_t ss_d,
uint8_t ctrl)
Configures the SPI module for Master mode.
void spihelper_shutdown(void)
Disables the SPI module.
Close