mbed libraries for KL25Z
Diff: I2C.h
- Revision:
- 9:663789d7729f
- Parent:
- 8:c14af7958ef5
--- a/I2C.h Fri Nov 09 11:33:53 2012 +0000 +++ b/I2C.h Mon Feb 18 09:41:56 2013 +0000 @@ -1,5 +1,17 @@ -/* mbed Microcontroller Library - I2C - * Copyright (c) 2007-2011 ARM Limited. All rights reserved. +/* mbed Microcontroller Library + * Copyright (c) 2006-2013 ARM Limited + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ #ifndef MBED_I2C_H #define MBED_I2C_H @@ -8,6 +20,8 @@ #if DEVICE_I2C +#include "i2c_api.h" + namespace mbed { /** An I2C Master, used for communicating with I2C slave devices @@ -61,14 +75,14 @@ * the address is forced to 1 to indicate a read. * * @param address 8-bit I2C slave address [ addr | 1 ] - * @param data Pointer to the byte-array to read data in to + * @param data Pointer to the byte-array to read data in to * @param length Number of bytes to read * @param repeated Repeated start, true - don't send stop at end * * @returns * 0 on success (ack), * non-0 on failure (nack) - */ + */ int read(int address, char *data, int length, bool repeated = false); /** Read a single byte from the I2C bus @@ -86,14 +100,14 @@ * the address is forced to 0 to indicate a write. * * @param address 8-bit I2C slave address [ addr | 0 ] - * @param data Pointer to the byte-array data to send + * @param data Pointer to the byte-array data to send * @param length Number of bytes to send * @param repeated Repeated start, true - do not send stop at end * * @returns * 0 on success (ack), * non-0 on failure (nack) - */ + */ int write(int address, const char *data, int length, bool repeated = false); /** Write single byte out on the I2C bus @@ -117,8 +131,8 @@ protected: void aquire(); - - I2CName _i2c; + + i2c_t _i2c; static I2C *_owner; int _hz; };