mirror of
https://github.com/esp8266/Arduino.git
synced 2025-07-27 18:02:17 +03:00
Wire library with i2c master support
This commit is contained in:
27
libraries/Wire/utility/i2c.h
Normal file
27
libraries/Wire/utility/i2c.h
Normal file
@ -0,0 +1,27 @@
|
||||
#ifndef I2C_H
|
||||
#define I2C_H
|
||||
|
||||
#include <stdint.h>
|
||||
|
||||
void i2c_init(int sda_pin, int scl_pin);
|
||||
void i2c_freq(int freq_hz);
|
||||
void i2c_release();
|
||||
void i2c_start();
|
||||
void i2c_stop();
|
||||
void i2c_set_ack(int ack);
|
||||
int i2c_get_ack();
|
||||
uint8_t i2c_read(void);
|
||||
void i2c_write(uint8_t val);
|
||||
|
||||
|
||||
size_t i2c_master_read_from(int address, uint8_t* data, size_t size, bool sendStop);
|
||||
size_t i2c_master_write_to(int address, const uint8_t* data, size_t size, bool sendStop);
|
||||
|
||||
// todo: implement i2c slave functions
|
||||
//
|
||||
// void i2c_slave_setAddress(uint8_t);
|
||||
// int i2c_slave_transmit(const uint8_t* data, size_t size);
|
||||
// void i2c_slave_attach_rx_callback( void (*)(uint8_t*, int) );
|
||||
// void i2c_slave_attach_tx_callback( void (*)(void) );
|
||||
|
||||
#endif//I2C_H
|
Reference in New Issue
Block a user