Contiki 3.x
i2c.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2013, IDentification Automation Laboratory
3  * IDALab (http://www.idalab.unisalento.it)
4  * Department of Innovation Engineering - University of Salento
5  *
6  * All rights reserved.
7  *
8  * Redistribution and use in source and binary forms, with or without
9  * modification, are permitted provided that the following conditions
10  * are met:
11  * 1. Redistributions of source code must retain the above copyright
12  * notice, this list of conditions and the following disclaimer.
13  * 2. Redistributions in binary form must reproduce the above copyright
14  * notice, this list of conditions and the following disclaimer in the
15  * documentation and/or other materials provided with the distribution.
16  * 3. Neither the name of the Institute nor the names of its contributors
17  * may be used to endorse or promote products derived from this software
18  * without specific prior written permission.
19  *
20  * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND
21  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
22  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
23  * ARE DISCLAIMED. IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE
24  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
25  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
26  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
27  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
28  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
29  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
30  * SUCH DAMAGE.
31  *
32  */
33 
34 /**
35  * \file platform/mbxxx/dev/i2c.h
36  * \brief I2C bus master driver for mbxxx platform.
37  * \author Maria Laura Stefanizzi <laura28582@gmail.com>
38  * \date 2013-11-20
39  */
40 #ifndef I2C_H
41 #define I2C_H
42 
43 #define SC2_STAT(FLAG) (SC2_TWISTAT & FLAG)
44 
45 void i2c_enable(void);
46 void i2c_disable(void);
47 void i2c_start(void);
48 void i2c_stop(void);
49 
50 void i2c_write(uint8_t data);
51 uint8_t i2c_read(int ack);
52 
53 #endif /* I2C_H */
54 
void i2c_write(uint8_t data)
Send a byte to I2C bus.
Definition: i2c.c:106
void i2c_stop(void)
Generate I2C STOP condition.
Definition: i2c.c:95
uint8_t i2c_read(int ack)
Read a byte from I2C bus.
Definition: i2c.c:121
void i2c_start(void)
Generate I2C START condition.
Definition: i2c.c:85
void i2c_enable(void)
Configure serial controller in I2C mode and set I2C speed.
Definition: i2c.c:52
void i2c_disable(void)
Configure serial controller in disabled mode.
Definition: i2c.c:76