mbed libraries for KL25Z
Diff: i2c_api.h
- Revision:
- 8:c14af7958ef5
- Child:
- 9:663789d7729f
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/i2c_api.h Fri Nov 09 11:33:53 2012 +0000 @@ -0,0 +1,40 @@ +/* mbed Microcontroller Library - i2c_api + * Copyright (c) 2009-2011 ARM Limited. All rights reserved. + */ +#ifndef MBED_I2C_API_H +#define MBED_I2C_API_H + +#include "device.h" + +#if DEVICE_I2C + +#ifdef __cplusplus +extern "C" { +#endif + +I2CName i2c_init(PinName sda, PinName scl); + +void i2c_frequency (I2CName i2c, int hz); +int i2c_start (I2CName i2c); +void i2c_stop (I2CName i2c); +int i2c_read (I2CName i2c, int address, char *data, int length, int stop); +int i2c_write (I2CName i2c, int address, const char *data, int length, int stop); +void i2c_reset (I2CName i2c); +int i2c_byte_read (I2CName i2c, int last); +int i2c_byte_write(I2CName i2c, int data); + +#if DEVICE_I2CSLAVE +void i2c_slave_mode (I2CName i2c, int enable_slave); +int i2c_slave_receive(I2CName i2c); +int i2c_slave_read (I2CName i2c, char *data, int length); +int i2c_slave_write (I2CName i2c, const char *data, int length); +void i2c_slave_address(I2CName i2c, int idx, uint32_t address, uint32_t mask); +#endif + +#ifdef __cplusplus +} +#endif + +#endif + +#endif