Microchip® Advanced Software Framework

i2c_master_interrupt.h File Reference

SAM SERCOM I2C Master Interrupt Driver.

Copyright (c) 2012-2018 Microchip Technology Inc. and its subsidiaries.

#include "i2c_master.h"

Functions

Callbacks
void i2c_master_register_callback (struct i2c_master_module *const module, i2c_master_callback_t callback, enum i2c_master_callback callback_type)
 Registers callback for the specified callback type. More...
 
void i2c_master_unregister_callback (struct i2c_master_module *const module, enum i2c_master_callback callback_type)
 Unregisters callback for the specified callback type. More...
 
static void i2c_master_enable_callback (struct i2c_master_module *const module, enum i2c_master_callback callback_type)
 Enables callback. More...
 
static void i2c_master_disable_callback (struct i2c_master_module *const module, enum i2c_master_callback callback_type)
 Disables callback. More...
 
Read and Write, Interrupt-driven
enum status_code i2c_master_read_bytes (struct i2c_master_module *const module, struct i2c_master_packet *const packet)
 
enum status_code i2c_master_read_packet_job (struct i2c_master_module *const module, struct i2c_master_packet *const packet)
 Initiates a read packet operation. More...
 
enum status_code i2c_master_read_packet_job_no_stop (struct i2c_master_module *const module, struct i2c_master_packet *const packet)
 Initiates a read packet operation without sending a STOP condition when done. More...
 
enum status_code i2c_master_read_packet_job_no_nack (struct i2c_master_module *const module, struct i2c_master_packet *const packet)
 Initiates a read packet operation without sending a NACK signal and a STOP condition when done. More...
 
enum status_code i2c_master_write_bytes (struct i2c_master_module *const module, struct i2c_master_packet *const packet)
 
enum status_code i2c_master_write_packet_job (struct i2c_master_module *const module, struct i2c_master_packet *const packet)
 Initiates a write packet operation. More...
 
enum status_code i2c_master_write_packet_job_no_stop (struct i2c_master_module *const module, struct i2c_master_packet *const packet)
 Initiates a write packet operation without sending a STOP condition when done. More...
 
static void i2c_master_cancel_job (struct i2c_master_module *const module)
 Cancel any currently ongoing operation. More...
 
static enum status_code i2c_master_get_job_status (struct i2c_master_module *const module)
 Get status from ongoing job. More...